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
toh:xiaomi:ax3600 [2024/03/21 12:41] – [Potential issues / Limitations] Remove DSA statement mcgivergimtoh:xiaomi:ax3600 [2024/04/17 14:12] – [NSS: Qualcomm Network Accelerator] Fix typo mcgivergim
Line 43: Line 43:
 } --> } -->
  
-==== Potential issues / Limitations ====  +==== Potential Issues and Limitations ==== 
-  * The ''sysupgrade'' command may fail due to a [[https://forum.openwrt.org/t/adding-openwrt-support-for-xiaomi-ax3600/55049/9156|random issue]] of ''wpad'' not being effectively stopped while upgrading Openwrt**Stopping the wpad service with ''service wpad stop'' before doing the ''sysupgrade'' fixes the issue**. + 
-  * Ath11k memory: The ath11k driver needed for the main wireless radios uses lot of memory when there are few stations connected and low bandwidth traffic flowing. +  * **Sysupgrade Failure:** The ''sysupgrade'' command may occasionally fail due to a [[https://forum.openwrt.org/t/adding-openwrt-support-for-xiaomi-ax3600/55049/9156|random issue]] where the ''wpad'' service is not effectively stopped during the upgrade processTo resolve this problem, manually stop the wpad service using the command ''service wpad stop'' before running ''sysupgrade''
-  * NSS acceleration: the Qualcom NSS hardware acceleration is not available and maybe never will be. There is a community effort to enable it [[https://forum.openwrt.org/t/ipq807x-nss-build/148529|in the forum]] but this does not guarantee that it will be officially supported in the future.+  * **NSS Acceleration Support:** Currently, the Qualcomm NSS hardware acceleration is not officially supported in OpenWrt. However, there is an ongoing community effort to enable NSS acceleration, you can find more information about this in the [[:toh:xiaomi:ax3600#nssqualcomm_network_accelerator|NSS: Qualcomm Network Accelerator]] section
 +  * **Ath11k Memory Usage:** The ath11k driver, which is required for the main wireless radios, consumes significant amount of memory when there are few connected stations and low bandwidth traffic. There are reports that it seems fixed in current snapshot, but it remains in the latest stable version. 
 ===== Hardware ===== ===== Hardware =====
  
Line 72: Line 74:
  
 === Notes === === Notes ===
-   * Flash chips known are W29N02GZSIBA or GD9FS2G8F2A. Maybe there are more variations of Flash Chips soldered on it. Needs more investigation. +  * Flash chips known to be used are W29N02GZSIBA or GD9FS2G8F2A. There may be more variations of Flash Chips soldered onto it. Further investigation is needed
-   * Despite AX3600 have 256M NAND flash chip, stock partitioning uses less than half of it (~113M). Probably, Xiaomi did that for firmware unification purpose (using AX6 as less common denominator, as it has only 128M flash)+  * Despite the AX3600 having a 256M NAND flash chip, the stock partitioning uses less than half of it (~113M). Xiaomi probably did this for firmware unification purposes, using the AX6 as the least common denominator since it only has 128M of flash. 
-   Also, stock partitioning assumes ~35M size for each of `rootfs` MTD partitionsand ~30M for `overlay` MTD partition (and even with that, mounted `/overlay` partition only have a size of 15M) +  Additionallythe stock partitioning assumes ~35M size for each of the `rootfs` MTD partitions and ~30M for the `overlay` MTD partition. Even with that, the mounted `/overlay` partition only has a size of 15M. 
-   * OpenWrt partitioning modifies that allowing to use all the space, so is not a problem anymore. This partitioning will be reverted when doing the recovery of the router to the OEM firmware.+  * OpenWrt partitioning modifies this, allowing the use of all available space, so it is no longer a problem. This partitioning will be reverted when recovering the router to the OEM firmware.
  
 ==== Flash Layout ==== ==== Flash Layout ====
Line 344: Line 346:
   - Sysupgrade the device:<code>sysupgrade -n /tmp/openwrt-qualcommax-ipq807x-xiaomi_ax3600-squashfs-sysupgrade.bin</code>   - Sysupgrade the device:<code>sysupgrade -n /tmp/openwrt-qualcommax-ipq807x-xiaomi_ax3600-squashfs-sysupgrade.bin</code>
  
-Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired. Although, see [[ax3600#potential_issueslimitations|potential issues / limitations]].+Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired. Although, see [[ax3600#potential_issues_and_limitations|potential issues / limitations]].
  
 +==== NSS: Qualcomm Network Accelerator ====
 +
 +This SOC has two NSS processors. This NSS processors are able to handle some network / cryptographic functions and offload the main processors of the SOC. Currently, the Qualcomm NSS hardware acceleration is not officially supported in OpenWrt and maybe never will be. The code needed for that is not in the kernel of Linux and the patches provided by Qualcomm are only for very old versions of the kernel, so they can't be imported directly into OpenWrt and adding them require a lot of work and maintenance.
 +
 +The main processors of the SOC are able to route without using the NSS processors, and this is how the official build of OpenWrt works, but is not as fast as it can be when using the NSS cores.
 +
 +However, there is an ongoing community effort to enable NSS acceleration. **It's important to note that community efforts do not guarantee official support in the future**.
 +
 +If your internet speed is near 1 Gbps speeds, you will note that official OpenWrt build will not reach this speeds. Or if you plan to have additional processes running on the router that can consume resources it will hurt your routing speed. In this case maybe you can try to use this NOT official builds, but remember, **they are NOT official and thus they don't have official support**.
 +
 +If your understand that this versions are not official, but you want to try them, here are some relevant links:
 +  - There is one [[https://forum.openwrt.org/t/ipq807x-nss-build/148529|thread in the forum]], where the development of this NSS versions occur and the only place to ask for support of this NSS versions. 
 +  - There is one [[https://github.com/qosmio/openwrt-ipq|GitHub repository]] with the current NSS code that is being developed. You can build yourself the firmware starting from this code.
 +
 +If you are not able to build the code by yourself, some users have some repos with some ready to use builds of this NSS versions. Here are some links to his repos, in alphabetical order of the user's name.
 +  - __AgustinLorenzo__: you can find the [[https://github.com/AgustinLorenzo/openwrt/releases|releases here]]. There are two versions, one if you use mesh and the other if you don't.
 +  - __JuliusBairaktaris__: you can find the [[https://github.com/JuliusBairaktaris/Qualcommax_NSS_Builder/releases|releases here]]. It is built automatically with each change.
 +
 +<WRAP center round info>
 +<color #ed1c24>**This NSS versions are NOT officially supported and maybe there will never be, so use them at your own risk and don't expect official support from OpenWrt developers**</color>
 +</WRAP>
 ===== Debricking ===== ===== Debricking =====
-The device can be recovered using a TFTP recovery (recommended, instructions below) or you can try to apply the habitual [[docs:guide-user:troubleshooting:generic.debrick|generic debrick]] options for OpenWrt devices.+There are several options for debricking the AX3600 Router: 
 +  * The device can be recovered using a TFTP recovery (recommended, instructions below) 
 +  * You can use the MiWIFI Repair Tool (instructions below) 
 +  * you can try to apply the habitual [[docs:guide-user:troubleshooting:generic.debrick|generic debrick]] options for OpenWrt devices.
  
 ==== TFTP recovery ==== ==== TFTP recovery ====
Line 367: Line 393:
 sudo ip address add 192.168.31.100/24 dev <adapter name></code> sudo ip address add 192.168.31.100/24 dev <adapter name></code>
   *Run the server with the following command:<code>sudo dnsmasq --no-daemon --listen-address=192.168.31.100 --bind-interfaces --dhcp-range=192.168.31.2,192.168.31.2 --enable-tftp --tftp-root=/tmp/tftp</code>   *Run the server with the following command:<code>sudo dnsmasq --no-daemon --listen-address=192.168.31.100 --bind-interfaces --dhcp-range=192.168.31.2,192.168.31.2 --enable-tftp --tftp-root=/tmp/tftp</code>
 +
 <tabbox Windows> <tabbox Windows>
 On Windows you can use any tftp client, this example is using [[https://bitbucket.org/phjounin/tftpd64/downloads/tftpd64.464.zip|tftpd64]]. Download it and decompress the contents in any folder. On Windows you can use any tftp client, this example is using [[https://bitbucket.org/phjounin/tftpd64/downloads/tftpd64.464.zip|tftpd64]]. Download it and decompress the contents in any folder.
   * Connect your computer ethernet port to the router LAN1 port, nothing else connected.   * Connect your computer ethernet port to the router LAN1 port, nothing else connected.
   * In Windows, set computer IP as static to ''192.168.31.100'', mask ''255.255.255.0'' (depending your version of windows, you will need to fill the DNS too with any valid value, does not matter):   * In Windows, set computer IP as static to ''192.168.31.100'', mask ''255.255.255.0'' (depending your version of windows, you will need to fill the DNS too with any valid value, does not matter):
 +
 {{:media:xiaomi:xiaomi_ax3600_tftpwin_1.png?400|}} {{:media:xiaomi:xiaomi_ax3600_tftpwin_1.png?400|}}
  
   * **Allow tftp64 in windows firewall or deactivate the windows firewall temporarily.**   * **Allow tftp64 in windows firewall or deactivate the windows firewall temporarily.**
   * Configure tftp64 like this:   * Configure tftp64 like this:
 +
 {{:media:xiaomi:xiaomi_ax3600_tftpwin_2.png?400|}} {{:media:xiaomi:xiaomi_ax3600_tftpwin_2.png?400|}}
  
Line 380: Line 409:
  
   * Configure tftp64 DHCP server to give the IP ''192.168.31.2'' to the router:   * Configure tftp64 DHCP server to give the IP ''192.168.31.2'' to the router:
-    {{:media:xiaomi:xiaomi_ax3600_tftpwin_4.png?400|}}+ 
 +{{:media:xiaomi:xiaomi_ax3600_tftpwin_4.png?400|}}
  
   * Rename the firmware file that you want to install (for example [[https://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/r3600/miwifi_r3600_firmware_5da25_1.0.17.bin|miwifi_r3600_firmware_5da25_1.0.17.bin]]) to **C0A81F02.img** and copy it to the tftpd64 folder.   * Rename the firmware file that you want to install (for example [[https://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/r3600/miwifi_r3600_firmware_5da25_1.0.17.bin|miwifi_r3600_firmware_5da25_1.0.17.bin]]) to **C0A81F02.img** and copy it to the tftpd64 folder.
Line 386: Line 416:
  
 Now, you can start the recovery: Now, you can start the recovery:
 +  * Power off the Router if you haven't done so already
   * Keep reset button pressed and power on your AX3600. <WRAP round info>   * Keep reset button pressed and power on your AX3600. <WRAP round info>
   * Keep it pressed until you see the system led blinking orange   * Keep it pressed until you see the system led blinking orange
Line 394: Line 425:
   * If the recovery doesn't accept the downloaded file the led switches to solid white - if this is the case, restart the recovery process with other file   * If the recovery doesn't accept the downloaded file the led switches to solid white - if this is the case, restart the recovery process with other file
   </WRAP>   </WRAP>
-  * Put your interface back to DHCP mode and start again with breaking your device+ 
 +Finally you can put the interface of your computer back to DHCP mode (or what you usually have) and start again with breaking your device ;-) 
 + 
 +==== MiWIFI Repair Tool (Windows) ==== 
 + 
 +You can download the repair tool from http://www1.miwifi.com/miwifi_download.html 
 + 
 +  * Make sure the computer has a static IP address as shown in the instructions above (TFTP recovery) 
 +  * On the first screen, select your firmware (recommended is [[https://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/r3600/miwifi_r3600_firmware_5da25_1.0.17.bin|miwifi_r3600_firmware_5da25_1.0.17.bin]]) 
 +  * Click on the button on the right button to continue to the next step 
 +  * Select your Ethernet adapter which has the router connected 
 +  * Click on the button on the right button to continue to the next step 
 +  * Unplug the router if you haven't done so already 
 +  * Press and hold the reset button 
 +  * Power on the router 
 +  * Wait for the orange LED to start blinking and stop blinking again 
 +  * Release the reset button 
 +  * The MiWIFI repair tool should now show show a dialog indicating that data is being copied to the router. 
 +  * When the files have been copied, the router should show a blinking blue LED. 
 +  * You may now unplug the router and plug it back in again to restart it. 
 +  * The repair should now be complete. 
  
 ===== Photos ===== ===== Photos =====
Line 454: Line 506:
   "dom": "t",   "dom": "t",
   "paging": false,   "paging": false,
 +  "rotate": true,
   "shownColumns": ["serialconnectionparameters", "serialconnectionvoltage"],   "shownColumns": ["serialconnectionparameters", "serialconnectionvoltage"],
   "filterColumns": {"brand": "^Xiaomi$", "model": "^Mi AIoT Router AX3600$"}   "filterColumns": {"brand": "^Xiaomi$", "model": "^Mi AIoT Router AX3600$"}
  • Last modified: 2024/08/20 09:00
  • by docnielsen