New Xiaomi router AC2100

I've been Running 19.07.3 for 20+ days stable now, It's running as a wired AP.
Thanks guys for the awesome work!

MT7615N (5GHz) is disabled. If I use MT7603 (2.4GHz) some time after connecting loading web sites becomes very slow (stock firmware).


I've just flashed OpenWRT Snapshot on my Redmi AC2100 (6 antennas). Thank you to those who made this possible!

However, I missed flashing the BREED bootloader before rebooting to OpenWRT. And so I tried doing the instruction for flashing still the BREED bootloader. Unfortunately, I always get this error upong doing the mtd write command:

Could not open mtd device: Bootloader
Can't open device for writing!

Could anyone advice how to fix this? I already tried installing kmod-mtd-rw but the same error happens.

Are you using the correct mtd command?
it could be mtd or mtd_write or mtd_write2 depending on the Linux running.
Please refer to "BREED recovery" section in the guide.

Thank you for responding, Dune! I tried those three commands stated in the guide. The first one resulted to the error prints while the rest isn't recognized in the CLI.

Had the same problem. Managed to install BREED via first installing kmod-mtd-rw and then running insmod mtd-rw i_want_a_brick=1. After that, everything works just as it is described in the manual. I'm using the black cylinder model.

can someone port firmware from black cylinder model to white with 6 antennas?

In fact, I installed BREED to try setting up a dualboot. Apparently, BREED does not seem to accept the stock firmware images, and the MiWifiRepairtool won't work with BREED either. Could someone point me into the right direction - or upload an image of the stock bootloader?

Alternatively, if someone has access to (@ermirefek ?), could they download the breed modified version of the stock rom for me?

Any help would be much appreciated, thanks for your great work on OpenWRT!

supernutzstich -> same as chinese page

breed is xiaomi.r3g.bootfw

you can use google chrome translate for ru language

Thank you Supernutzstich! That insmod command made it work! Hahaha! :smiley:

Thank you for your reply! I searched the 4pda forum for both, the black AC2100 and the white redmi AC2100. The instructions there are quite informative. However, I could only find stock u-boot and breed images for the white redmi version, not for the black one (which I have). The hackpascal version of Breed is the one I have installed.

So all in all, I am still stuck - could someone dump their stock bootloader from the black AC2100 for me, and/or (with access to the chinese forum) download the Breed version for the black AC2100. Ultimately, I'd also be interested in knowing the difference between the stock firmware images and the breed flashable ones.

I found this instruction for flashing stock from breed. Since you have black cylinder, you should use r2100 stock firmware. Stock need to boot from kernel0 partition. You can set it in breed terminal with:

env set autoboot.command "boot flash 0x200000"
env save

Hope it will work for you.

env set autoboot.command "boot flash 0x200000"

If kernel0 will be damaged (for some reason), router can not auto switch to kernel1
Better way (it works for MI-R3G):

  • flash stock to both partitions
  • delete autoboot.command at all
  • find these settings: flag_try_sys1_failed, flag_try_sys2_failed, flag_last_success and change values to:
flag_try_sys1_failed = 0
flag_try_sys2_failed = 0
flag_last_success = 1

It marks both partitions as good.

I’ve followed the tutorial and my (white) xiaomi router is now using 19.07.3. All default settings, nothing modified.

I have a Hitron CGN3 modem+router ( It’s my main router. I’ve plugged the WAN port of the Xiaomi router into one of the CGN3 LAN ports. I then connected a laptop to the LAN port of the Xiaomi router. I can SSH into the router from my laptop, but I can’t “ping” or “ping” from the shell (also tried this on my laptop, which also failed).

I tried to setup VLAN 559 on WAN as described above (eth=tagged and wan=tagged), but it didn’t help.

Any idea what the issue might be?

It's working now, but unsure of the root cause. Some details below.

I could get a WAN IP via DCHP immediately after writing the 19.07.3 firmware to the device, but I couldn't seem to communicate with the upstream network (or access the internet). So I created a new VLAN (559), then switched the WAN to use the new VLAN (559) and I still couldn't access the upstream network (or the internet). Then I switched the WAN back to using VLAN eth0.2 and then I could access the upstream network (and the internet).

Thanks for your reply! Just tried that, unfortunately it still does not solve my problem: I just cannot flash any of the stock images (I even re-downloaded the image form xiaomi multiple times and tried different versions). Here are screenshots of what I am trying to do and the resulting error message. The error pops up 1-2s after clicking "upload":

It seems there is now a package for proprietary mediatek drivers
that can be built against the current openwrt master (no idea if they also work with kernel 4.19)

Someone has already tried it and confirmed it working

The user interface for wifi settings however is in chinese and the drivers are not 80211cfg compatible.

I translated the wifi-interface, suggestions for further improvements are appreciated :slight_smile:
Fo instance I would love to have a MAC filter section in the interface.

The driver runs perfectly on my r3p - good speeds and no problems.

In luci-app-mtwifi, is there an overview that shows which clients are connected to which wifi interfaces with their rssi ? I assume that the standard listing on the overview page probably doesn't work with the proprietary drivers.
I'm asking because I have a lot of IOT devices that would be pretty far away from the ap, so basically I would need this to see where i can place the different nodes.

Thank you @jaj , I had the same scapy error as described in your post (New Xiaomi Router AC2100) and have corrected the script in the wiki as per your suggestion, which fixed the issue.