Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
inbox:toh:xiaomi:xiaomi_mi_router_4a_gigabit_edition [2023/09/25 15:47] – Fix gbit port filter under [Hardware Highlights] mkrleinbox:toh:xiaomi:xiaomi_mi_router_4a_gigabit_edition [2024/02/12 13:41] – [Hardware Highlights] revert Version change bill888
Line 26: Line 26:
 {{media:xiaomi:xiaomi_mi_router_4a_gigabit_edition_transparent.png?200|Xiaomi Mi Router 4A Gigabit Edition}} {{media:xiaomi:xiaomi_mi_router_4a_gigabit_edition_transparent.png?200|Xiaomi Mi Router 4A Gigabit Edition}}
  
 +===== How to tell the different versions apart =====
 +There are multiple versions of the Xiaomi Mi Router 4A, International and Chinese and the method used to install OpenWRT differs. The SKU printed on the box differs according to the year of manufacture. This table is an intent to list them all so as to avoid bricking.
 +
 +^ Model                                        |  Mi Router 4A (MIR4A)                                                                           ||                                                |                                                                                                  |            |
 +^ <color #ffaec9>Alternate model name</color>  |  R4AC                                                                                           ||  R4AG                                                                                                                                                         ||||
 +^ Version                                      |  100M                                                                                           ||   Gigabit                                                                                                                                                     ||||
 +^ Target market                                | [[https://openwrt.org/toh/xiaomi/mi_router_4a_mir4a_100m#photos|Chinese]]  | //International?//  | Chinese                 | International          | International                                                                                    | ¿?         |
 +^ SKU                                          | DVB4222CN                                                                  | DVB4230GL           | DVB4218CN               | DVB4224GL              | ¿?                                                                                               | ¿?         |
 +^ Firmware                                                                                                                |                                             | 2.28.132               | [[https://forum.openwrt.org/t/observations-on-xiaomi-mir4ag-newer-firmware/127373/3|2.28.84]]    | 2.20.30    |
 +^ Firmware language                            |                                                                            | English             | Chinese                 | //English?//                                                                                                            |            |
 +^ Label language                                                                                                          | English             | Chinese                 | //English?//                                                                                                            |            |
 +^ PCB marking code                             | M49 R0101                                                                  | ¿?                  | M43 R0101                                      | [[https://forum.openwrt.org/t/observations-on-xiaomi-mir4ag-newer-firmware/127373/3|M43 R0201]]  |            |
 +^ Year available                               | //[[https://openwrt.org/toh/xiaomi/mi_router_4a_mir4a_100m#info|2019]]?//  |                     | 2019                    |                        | 2021                                                                                             | //2022?//  |
 +^ Other notes                                  |                                                                            |                     | 2019 model is shielded  | unshielded since 2020  |                                                                                                  |            |
 ===== OpenWrt support ===== ===== OpenWrt support =====
  
----- datatable ---- +<!-- ToH: { 
-cols    BrandModel, Versions, Supported Current Rel, OEM device homepage URL_url, Forum Search_search-forumsDevice Techdata_pageid +  "source""json", 
-headers BrandModel, Version, Current Release, OEM Info, Forum Search, Technical Data +  "dom": "t"
-align   c,c,c,c,c,c,c +  "paging"false
-filter  : Model=Mi Router 4A (MIR4A) +  "shownColumns"["brand""model""version""supportedcurrentrel""oemdevicehomepageurl""forumsearch", "deviceid"]
-filter  Version=Gigabit Edition +  "filterColumns"{"model": "^Mi Router 4A \\(MIR4A\\)$", "version""^Gigabit Edition$"} 
-----+-->
  
  
Line 41: Line 55:
 The device is the same as MIR3G v2 (which is supported as per the [[https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=522d5ff42835f7ad01c090b9ea1863f5d56b91d3|Git Commit]]), but explicit support was added in commit [[commit>?p=openwrt/openwrt.git;a=commit;h=a51e46e543ef2e923fb97fb092d04355dfca7d7d|a51e46e543ef2e923fb97fb092d04355dfca7d7d]]. The device is the same as MIR3G v2 (which is supported as per the [[https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=522d5ff42835f7ad01c090b9ea1863f5d56b91d3|Git Commit]]), but explicit support was added in commit [[commit>?p=openwrt/openwrt.git;a=commit;h=a51e46e543ef2e923fb97fb092d04355dfca7d7d|a51e46e543ef2e923fb97fb092d04355dfca7d7d]].
  
-The new EON/cFeon EN25QX128A chip support was added by "[[commit>?p=openwrt/openwrt.git;a=commit;h=d7876daf6552a9f39bd5e0bf50b554e9406ec275|generic: add support for EON EN25QX128A spi nor flash]]", and is backported to 22.03 and 21.02.+The new EON/cFeon EN25QX128A chip support was added by "[[commit>?p=openwrt/openwrt.git;a=commit;h=d7876daf6552a9f39bd5e0bf50b554e9406ec275|generic: add support for EON EN25QX128A spi nor flash]]".  It is supported starting from 22.03.3 and 21.02.6 stable releases.
  
  
Line 76: Line 90:
 </code> </code>
    
-===== Notes on firmware exploit procedure =====+==== Installation via Software exploit ==== 
 + 
 +The OpenWRTInvasion is an exploit that allows to get a shell access to the router. You will be able to connect with Telnet, SSH and FTP. Then you can upload OpenWrt image and overwrite the stock firmware.  
 + 
 +Find the instructions in the [[https://github.com/acecilia/OpenWRTInvasion|OpenWRTInvasion repository]] and a video guide can be found here: [[https://youtu.be/VxzEvdDWU_s|Installing OpenWrt on the Xiaomi 4A, 4C, 3Gv2, 4Q, miWifi 3C and debrick method OLD VERSION]] or a new version [[https://www.youtube.com/watch?v=SLbkce-M2nE|Installing OpenWrt on the Xiaomi 4A, 4C, 3Gv2, 4Q, miWifi 3C and debrick method New 2022]]. 
 + 
 +=== Notes on firmware exploit procedure === 
 +Some instructions that may help you:
  
   * To get stok   * To get stok
       * Reset router if necessary to restore default settings.       * Reset router if necessary to restore default settings.
-      * Connect computer to ethernet LAN port. +      * Connect computer to Ethernet LAN port. 
-      * connect xiaomi router to the internet with the wan port +      * Connect Xiaomi router to the internet with the wan port 
-      * enter 192.168.31.1 +      * Open in a browser http://192.168.31.1 
-      * configure device+      * Configure device
           * select language, accept terms           * select language, accept terms
           * Enter a wifi password (that is the admin password)           * Enter a wifi password (that is the admin password)
-          * go to 192.168.31.1 and enter the root password+          * go to http://192.168.31.1 and enter the root password
           * when you are in, your link changed and now it have a part with something similar to ''stok=3700b146c87e45fea51170f87f47d34c''           * when you are in, your link changed and now it have a part with something similar to ''stok=3700b146c87e45fea51170f87f47d34c''
       * ''git clone https://github.com/acecilia/OpenWRTInvasion''       * ''git clone https://github.com/acecilia/OpenWRTInvasion''
Line 104: Line 125:
  
 <code>Could not open mtd device: OS1 <code>Could not open mtd device: OS1
-Can't open device for writing! </code>+Can't open device for writing!</code>
  
 You can run ''cat /proc/mtd'' to check the flash layout. In this case, your router is having a different flash layout and you should not proceed with the installation using mtd. You can run ''cat /proc/mtd'' to check the flash layout. In this case, your router is having a different flash layout and you should not proceed with the installation using mtd.
Line 126: Line 147:
 ===== Installation ===== ===== Installation =====
 /* stable release table - used instead of previous snapshot table */ /* stable release table - used instead of previous snapshot table */
----- datatable ---- +<!-- ToH: { 
-cols    ModelVersionsSupported Current RelFirmware OpenWrt Install URL_urlFirmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url, Device Techdata_pageid +  "source""json", 
-headers ModelVersionCurrent ReleaseFirmware OpenWrt InstallFirmware OpenWrt UpgradeFirmware OEM StockTechnical Data +  "dom": "t", 
-align   : c,c,c +  "paging": false, 
-filter  : Brand=Xiaomi +  "rotate": true
-filter  Model=Mi Router 4A (MIR4A) +  "shownColumns"["model""version""supportedcurrentrel""firmwareopenwrtinstallurl""firmwareopenwrtupgradeurl""firmwareoemstockurl""deviceid"]
-filter  Version=Gigabit Edition +  "filterColumns"{"brand": "^Xiaomi$", "model""^Mi Router 4A \\(MIR4A\\)$", "version""^Gigabit Edition$"} 
-----+-->
  
 **OpenWrt Factory Firmware:** Use this file the first time you flash OpenWrt onto the router - i.e. use with the above mentioned exploit / install method. \\ **OpenWrt Factory Firmware:** Use this file the first time you flash OpenWrt onto the router - i.e. use with the above mentioned exploit / install method. \\
Line 139: Line 160:
 **OEM Stock Firmware:** The above mentioned exploit provides a stock firmware image in its repository.\\ **OEM Stock Firmware:** The above mentioned exploit provides a stock firmware image in its repository.\\
  
 +==== Flash Layout ====
 +This is the Flash layout under the 2.28.62 OEM firmware, after using OpenWRTInvasion to get //root// access.
 +
 +^  Xiaomi Mi Router 4A (100M, Chinese version) Flash Layout                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |||||||||||
 +^ Layer0                                                      [[wp>Serial Peripheral Interface Bus|spi]]0.0: [[https://pdf1.alldatasheet.com/datasheet-pdf/download/1151510/GIGADEVICE/GD25Q127CSIG.html|25Q127CSIG]] 16384KiB                                                                                                                                                                                                                                                                                                        ||||||||||
 +^ Layer1                                                      mtd0 **//ALL//**  16384KiB                                                                                                                                                                                                                                                                                                                                                                                                                                              ||||||||||
 +^ Layer2                                                      mtd1 **//Bootloader//** 192KiB                                                                                                                                    |  mtd2 **//Config//** 64KiB  |  mtd3 **//Bdata//** 64KiB  |  mtd4 **//Factory//** 64KiB  |  mtd5 **//crash//** 64KiB  |  mtd6 **//cfg_bak//** 64KiB  |  mtd7 **//overlay//** 1024KiB        |  mtd8 **//OS1//** 13312KiB                                               ||  mtd10 **//disk//** 1536KiB         |
 +| **Layer2 boundaries**                                      |  0x0000000-0x0030000                                                                                                                                                0x0030000-0x0040000        |  0x0040000-0x0050000        0x0050000-0x0060000          0x0060000-0x0070000        0x00070000-0x00080000        0x00080000-0x00180000                0x00180000-0x00e80000                                                   || 0x00e80000-0x01000000               |
 +^ Layer3                                                                                                                                                                                                                        |                                                        |                              |                            |                              |                                      |  //firmware_partition// 1856KiB  |  mtd9 **//rootfs//** 11456KiB          |                                     |
 +| **Layer3 boundaries**                                      |                                                                                                                                                                    |                                                        |                              |                            |                              |                                      | 0x0180000-0x0350000              |  0x0350000-0x0e80000                                                       |
 +^ Size in KiB                                                |  192KiB                                                                                                                                                            |  64KiB                      |  64KiB                      64KiB                        64KiB                      64KiB                        1024KiB                              1856KiB                          11456KiB                              |  1536KiB                            |
 +^ Name                                                        **//Bootloader//**                                                                                                                                                |  **//Config//**              **//Bdata//**              **//Factory//**              **//crash//**              **//cfg_bak//**              **//overlay//**                      **//firmware_partition//**      |  **//rootfs//**                        |  **//disk//**                       |
 +^ <color magenta>mountpoint</color>                          |  //none//                                                                                                                                                          |  //none//                    //none//                  |  //none//                    |  //none//                  |  //none//                    |  ''/etc''''/data''''/mnt''            //none//                        |  ''/''                                                                     |
 +^ filesystem                                                  //unknown//                                                                                                                                                        //unknown//                |  //unknown//                //unknown//                  //unknown//                //unknown//                  [[docs:techref:filesystems#JFFS2]]  |                                  | [[docs:techref:filesystems#SquashFS]]  | [[docs:techref:filesystems#JFFS2]]  |
 +
 +***Note*** The partitions "mtd1 **//config//**", "mtd5 **//caldata//**", "mtd6 **//unkown//**" and "mtd8 **//caldata_copy//**" contain vendor specific raw (without filesystem) config values about your router, like WiFi calibration data, MAC addresses, etc. It's a good idea to [[docs:guide-user:installation:generic.backup|make a backup from them]]. 
 +
 +***Note2*** You can check mtd partitions of your router yourself by using commands "''cat /proc/mtd''" and "''dmesg''". Refer to [[https://www.mail-archive.com/kernelnewbies@nl.linux.org/msg02774.html|this link]].
 ===== Debricking ===== ===== Debricking =====
 Using Mi Wifi Repair tool: Using Mi Wifi Repair tool:
Line 183: Line 222:
  
 ===== Hardware Highlights ===== ===== Hardware Highlights =====
----- datatable ---- +<!-- ToH: { 
-cols    ModelVersionsCPUCPU MHz, CPU Cores_numcores_,Flash MB_mbflashs, RAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet 1Gbit ports_, ModemUSB ports_ +  "source""json", 
-header  : ModelVersion,SoC,CPU MHz,CPU Cores,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Ethernet 1Gbit ports,Modem,USB +  "dom": "t", 
-align   : c,c,c,c,c,c,c,c,c,c,c,c,c +  "paging": false, 
-filter  : Model=Mi Router 4A (MIR4A) +  "rotate": true
-filter  Version=Gigabit Edition +  "shownColumns"["model""version""cpu""cpumhz""cpucores""flashmb""rammb""wlanhardware""wlan24ghz""wlan50ghz""ethernet100mports""ethernet1gports""modem""usbports"]
-----+  "filterColumns"{"model": "^Mi Router 4A \\(MIR4A\\)$", "version""^Gigabit Edition$"} 
 +-->
  
  
Line 292: Line 332:
 Here are pictures of the **chinese** version which ships with chinese language firmware v2.x.  The earliest **Global** international model is labelled the '**Giga**' version (SKU: DVB4224GL, Model R4A) which shipped with v2.28.132, upgradable to v3.0.x.  A revised Global international model is labelled the '**Gigabit**' version shipped with v3.x firmware.  Here are pictures of the **chinese** version which ships with chinese language firmware v2.x.  The earliest **Global** international model is labelled the '**Giga**' version (SKU: DVB4224GL, Model R4A) which shipped with v2.28.132, upgradable to v3.0.x.  A revised Global international model is labelled the '**Gigabit**' version shipped with v3.x firmware. 
  
-^ Retail box (chinese)   | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-case.jpg|Xiaomi Mi Router 4A Gigabit Edition retail box}}     | +^ Retail box (chinese)                                | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-case.jpg|Xiaomi Mi Router 4A Gigabit Edition retail box}}     | 
-^ Top view               | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-top.jpg|Xiaomi Mi Router 4A Gigabit Edition top view}}        | +^ Top view                                            | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-top.jpg|Xiaomi Mi Router 4A Gigabit Edition top view}}        | 
-^ Rear view              | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-back.jpg|Xiaomi Mi Router 4A Gigabit Edition rear view}}      | +^ Rear view                                           | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-back.jpg|Xiaomi Mi Router 4A Gigabit Edition rear view}}      | 
-^ Bottom view (chinese)  | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-bottom.jpg|Xiaomi Mi Router 4A Gigabit Edition bottom view}} +^ Bottom view (chinese)                               | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-edition-bottom.jpg|Xiaomi Mi Router 4A Gigabit Edition bottom view}} 
-Label (R4A Giga)       | {{media:xiaomi:xiaomi-mi-router-4a-giga-global-label.jpg?600|Xiaomi Mi Router 4A Giga label view}}               | +Label (R4A Giga, first international version)       | {{media:xiaomi:xiaomi-mi-router-4a-giga-global-label.jpg?600|Xiaomi Mi Router 4A Giga label view}}               | 
-Label (R4A Gigabit)    | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-global-label.jpg?600|Xiaomi Mi Router 4A Giga label view}}            |+Label (R4A Gigabit, revised International version | {{media:xiaomi:xiaomi-mi-router-4a-gigabit-global-label.jpg?600|Xiaomi Mi Router 4A Giga label view}}            |
  
 //**BOARD**// //**BOARD**//
Line 1391: Line 1431:
  
 ==== Unable to install OpenWrt to new R4A 'Gigabit' edition ==== ==== Unable to install OpenWrt to new R4A 'Gigabit' edition ====
 +
 +**<color #ed1c24>Update (2023)</color>**:  EON EN25QX128 flash chip is supported starting from 22.03.3 and 21.02.6 stable releases.
 +
 [[https://forum.openwrt.org/t/xiaomi-r4a-gigabit-upgrade-to-squashfs-sysupgrade-bin-from-initramfs-kernel-bin/122334/25|New EON EN25QX128 flash chip found in Chinese Language firmware model]] [[https://forum.openwrt.org/t/xiaomi-r4a-gigabit-upgrade-to-squashfs-sysupgrade-bin-from-initramfs-kernel-bin/122334/25|New EON EN25QX128 flash chip found in Chinese Language firmware model]]
 [[https://forum.openwrt.org/t/xiaomi-4a-3-gigaport-cannot-flash-openwrt-21/122878|Second reported case found in Chinese Language firmware model]]   [[https://forum.openwrt.org/t/new-xiaomi-4c-cannot-install-openwrt-flash-chip-changed-to-en25qx128a/|Same flash chip (EON EN25QX128A, ID 1c7118) found in a new 4C]] [[https://forum.openwrt.org/t/xiaomi-4a-3-gigaport-cannot-flash-openwrt-21/122878|Second reported case found in Chinese Language firmware model]]   [[https://forum.openwrt.org/t/new-xiaomi-4c-cannot-install-openwrt-flash-chip-changed-to-en25qx128a/|Same flash chip (EON EN25QX128A, ID 1c7118) found in a new 4C]]
  • Last modified: 2024/09/10 22:28
  • by alexq