Adding OpenWrt support for Xiaomi "Redmi Router AX6S"/"Xiaomi Router AX3200"

I can confirm it bricked my device, I can provide any usefull information if you want

What's the production date of your device? (Sticker on the cardbox)

Just a cat /proc/mtd from stock firmware would be nice, in addition to a quick look around on the box and case for any identifiers similar to build revision and/or manufacture date.

root@OpenWrt:~# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00080000 00020000 "Preloader"
mtd1: 00040000 00020000 "ATF"
mtd2: 00080000 00020000 "u-boot"
mtd3: 00040000 00020000 "u-boot-env"
mtd4: 00040000 00020000 "bdata"
mtd5: 00080000 00020000 "factory"
mtd6: 00040000 00020000 "crash"
mtd7: 00040000 00020000 "crash_log"
mtd8: 00400000 00020000 "kernel"
mtd9: 06f00000 00020000 "ubi"

I need to find those boxes first :frowning:

my bad that was openwrt mtd. here is stock firmware mtd

root@XiaoQiang:/tmp# cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00020000 00020000 "PL_Header"
mtd1: 00060000 00020000 "Preloader"
mtd2: 00040000 00020000 "ATF"
mtd3: 00080000 00020000 "uboot"
mtd4: 00040000 00020000 "Nvram"
mtd5: 00040000 00020000 "Bdata"
mtd6: 00080000 00020000 "Factory"
mtd7: 00040000 00020000 "crash"
mtd8: 00040000 00020000 "crash_syslog"
mtd9: 01e00000 00020000 "firmware"
mtd10: 002a0000 00020000 "kernel"
mtd11: 01b60000 00020000 "rootfs"
mtd12: 01e00000 00020000 "firmware1"
mtd13: 03200000 00020000 "overlay"
mtd14: 00500000 00020000 "obr"

Some time ago there was a bug that caused all Ethernet ports to operate at 100Mbps speed if a single port had a 100Mbps device connected.

This issue was solved later, but now I believe it is not actually fully resolved.

The long story short is that I had one 100Mbps device (a Samsung TV) connected to one Ethernet port, and all other ports had Gigabit devices connected.

Everything was working fine (or I thought so).

The issue I discovered is that every time there is traffic on the 100Mbps port, it causes packet loss on the other Ethernet ports (I discovered that whenever someone was watching Netflix or other streaming service on this TV the other Gigabit devices connected to the remaining Ethernet ports experienced about 1% to 2% packet loss).

I just disconnected the TV from the wired port (now I am connecting the TV via Wifi) and the packet loss on the Ethernet ports are gone.

I will not have time to investigate this further, but at least in my case I confirmed that connecting a 100Mbps device to one of the Ethernet ports will cause packet loss issues on the other ports (whenever there is traffic on the 100Mbos port).

2 Likes

Sadly this doesn't seem to work. I can also not find any correlation between temperature and the occurrence of dropouts. I have monitored the device temperature for a few weeks, even through the heatwave in the UK over the past few days with 40+ degrees ambient and the device regularly surpassed 60 degrees without dropping. Unfortunately this issue with the 2.4 GHz band dropping remains a mystery.

@thevoid thanks for the advice with temperature monitoring.
@adzil did you observe any changes with lower power output?
@vamsi which devices were showing "connected device cannot provide internet", my devices just disconnect?

I was able to install openwrt and everything is fine so far. But i have ftth and need to add a vlan tag to pppoe. How is this set?

Edit: I was able to solve this by changing "option device 'wan.7'

Hello,

I'm new here and I just want to say thank you for all of your hard work.

I were able to installed openWRT on my AX6S. However, I'm doing some configuration to preven DNS leak with my piHole.

May I ask how do I add the firewall advance tab? I am not sure if I'm doing something wrong but I couldn't locate the advance tab option so that I could add in some of the rule that I found in the forum.

Thank you all

I can confirm, this does NOT solve the issue.
Honestly, from the start I suspected that its a hardware issue.
For the first week or two, I used the stock firmware that shipped with the router, it was horrible.
Every day the router would crash completely and would need a hard restart, disconnecting from the wall.
I thought maybe this is early firmware issue but still, shipping a product like that seemed weird to me.
So I happily went ahead and installed openWRT. For the first few days I thought great, issue has been resolved, but then I started having these wireless issues where it would stop working until a restart.
From this point on, I suspected a hardware issue.
I have a 2nd unit that was sealed until today. I'm currently running it with stock firmware, so far so good.
I will post updates.
Thank you for cooperating on this issue.

Thanks for confirming! It's reassuring to know that my findings match those of others and it only confirms this issue further. I don't know what to try next to determine its cause so for now I'm stuck restarting the wireless in LuCi whenever it drops. What throws me more is that this only happens with one of my AX6S'. I look forward to hearing your results with the stock firmware.

just want to ask how to connect the pinouts to the uart? since the holes are not labeled so i was wondering what is the wiring scheme of the holes. also wondering why there's only 3 wires on your image leading to the serial connector

https://openwrt.org/toh/xiaomi/ax3200#serial

just want to ask since in his post, it looks like he only had 3 wires sticking out from the router. which pinouts are those 3 and which is the 1 pinout that don't need to be hooked in the serial

You need Tx, Rx and GND pins.

1 Like

I experience exactly the same, latest RB01 were the newer model with Telnet disabled so I had to flash with TTL. Older models show more disk space in OpenWrt status page than newer one. Flashed using this method - https://github.com/mikeeq/xiaomi_ax3200_openwrt#uart-flash

[ 0.755849] 10 fixed-partitions partitions found on MTD device 1100d000.snfi
[ 0.762904] Creating 10 MTD partitions on "1100d000.snfi":
[ 0.768390] 0x000000000000-0x000000080000 : "Preloader"
[ 0.774793] 0x000000080000-0x0000000c0000 : "ATF"
[ 0.780201] 0x0000000c0000-0x000000140000 : "u-boot"
[ 0.786238] 0x000000140000-0x000000180000 : "u-boot-env"
[ 0.792231] 0x000000180000-0x0000001c0000 : "bdata"
[ 0.797775] 0x0000001c0000-0x000000240000 : "factory"
[ 0.803914] 0x000000240000-0x000000280000 : "crash"
[ 0.809455] 0x000000280000-0x0000002c0000 : "crash_log"
[ 0.815330] 0x0000002c0000-0x0000006c0000 : "kernel"
[ 0.828460] no rootfs found after FIT image in "kernel"
[ 0.833684] 0x0000006c0000-0x0000075c0000 : "ubi"
.....
[ 1.605135] ubi0: attaching mtd9
[ 2.184203] ubi0: scanning is finished
[ 2.193720] ubi0: attached mtd9 (name "ubi", size 111 MiB)
......
[ 7.230535] UBIFS (ubi0:2): Mounting in unauthenticated mode
[ 7.236260] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 842
[ 7.270591] UBIFS (ubi0:2): recovery needed
[ 7.348962] UBIFS (ubi0:2): recovery completed
[ 7.353455] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[ 7.361285] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[ 7.371196] UBIFS (ubi0:2): FS size: 55488512 bytes (52 MiB, 437 LEBs), journal size 2793472 bytes (2 MiB, 22 LEBs)
[ 7.381629] UBIFS (ubi0:2): reserved for root: 2620859 bytes (2559 KiB)
[ 7.388241] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID E0D6C05C-5DF3-45BA-9C88-05B2915008E0, small LPT model

older model where Telnet were enabled, can we recover the lost space or is it hardware change

[ 0.756076] 10 fixed-partitions partitions found on MTD device 1100d000.snfi
[ 0.763131] Creating 10 MTD partitions on "1100d000.snfi":
[ 0.768618] 0x000000000000-0x000000080000 : "Preloader"
[ 0.775018] 0x000000080000-0x0000000c0000 : "ATF"
[ 0.780420] 0x0000000c0000-0x000000140000 : "u-boot"
[ 0.786457] 0x000000140000-0x000000180000 : "u-boot-env"
[ 0.792407] 0x000000180000-0x0000001c0000 : "bdata"
[ 0.797964] 0x0000001c0000-0x000000240000 : "factory"
[ 0.804094] 0x000000240000-0x000000280000 : "crash"
[ 0.809630] 0x000000280000-0x0000002c0000 : "crash_log"
[ 0.815501] 0x0000002c0000-0x0000006c0000 : "kernel"
[ 0.828548] no rootfs found after FIT image in "kernel"
[ 0.833772] 0x0000006c0000-0x0000075c0000 : "ubi"
.....
[ 1.604841] ubi0: attaching mtd9
[ 2.182240] ubi0: scanning is finished
[ 2.191627] ubi0: attached mtd9 (name "ubi", size 111 MiB)
.....
[ 7.263133] UBIFS (ubi0:1): Mounting in unauthenticated mode
[ 7.268897] UBIFS (ubi0:1): background thread "ubifs_bgt0_1" started, PID 842
[ 7.337394] UBIFS (ubi0:1): UBIFS: mounted UBI device 0, volume 1, name "rootfs_data"
[ 7.345217] UBIFS (ubi0:1): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[ 7.355139] UBIFS (ubi0:1): FS size: 99930112 bytes (95 MiB, 787 LEBs), journal size 4952064 bytes (4 MiB, 39 LEBs)
[ 7.365570] UBIFS (ubi0:1): reserved for root: 4719945 bytes (4609 KiB)
[ 7.372184] UBIFS (ubi0:1): media format: w5/r0 (latest is w5/r0), UUID B8472A40-C071-45F2-A1C4-A7F8DE0174EE, small LPT model
[ 7.384324] mount_root: overlay filesystem has not been fully initialized yet

Or is there a way to resize it?

Different nand chips but will that make a difference?

new
[ 0.739005] mtk-snand 1100d000.snfi: chip is GD5F1GQ5xExxG, size 128MB, page size 2048, oob size 128

old - report more diskspace on status screen
[ 0.741004] mtk-snand 1100d000.snfi: chip is F50L1G41LB, size 128MB, page size 2048, oob size 64

Ok, got the space back

In OpenWrt SSH, I erased mtd9 and then using TTL re-installed sysupgrade

1 Like

Hello everyone,
I'm new owner of AX3200 RB01 device and i'd like to flash it to OpenWRT. My device is manufactured in 11/2021, with telnet disabled and 1.0.83 firmware. I've tried to 'upgrade' it to 1.0.71 (as in first step in @mikeeq 's UART Flash manual), but got message that "For security reasons, selecting to upgrade to firmware whose version number is lower than that of the current one is not permitted" . My question is: is there a reason to use 1.0.71 or fw will get overwritten anyway so version doesn't matter? Should i check anything before flashing updated device?
Regards,
Lukasz

Can't comment on 1.0.83 firmware, I used the process on 1.0.50 firmware and it worked, so it does not 100% have to be 1.0.71. All depends if they changed u-Boot in 1.0.83.

I haven't seen a new uboot deployed in a firmware update for these, to my recollection, but then again I've only examined the AX6S images. I can't be bothered setting up monitoring scripts to watch the EU update channel.

I'm not sure it really matters, I don't believe uboot gets updated on these models, and the older image would need to have a uboot image as well anyway. You can just change the downgrade parameter to 1 in the url and resubmit, or use the tftp recovery if you really want to downgrade the image.

1 Like

just want to ask if i can use this? this adaptor says 3.3v but the vcc is 5v indicated at the pinout