【Van Tech Corner】 OpenWRT – Install X-WRT on Xiaomi Router 3 via TFTP



Van Tech Corner : OpenWRT – Install X-WRT on Xiaomi Router 3 via TFTP

OpenWRT - Install X-WRT on Xiaomi Router 3 via TFTP

In this video, we will install X-WRT on the Xiaomi Mi Router 3 with Serial console (via the USB TTL adapter). X-WRT is a fork of OpenWRT snapshot tree with LuCI pre-installed and supports of Chinese routers, such as the Xiaomi Router 3. This device has been around for 3 years but we have no official support from openwrt.org, that why I will give a try with X-WRT.
The router come with Padavan room installed and the previous owner has no idea how to access the router management IP, therefore I established a USB serial connection to communicate with router serial port to identify it.
After that, I used the router’s Ralink Uboot to boot the OpenWRT initramfs image (Initial Ram Disk) with TFTP. Once get inside LuCI, I performed the permanent flash to the NAND with the sysuprade image.
The same method can be use for devices which has Uboot and Serial port (4 TTL pins). It be used to recovery your bricked router, too!

Video timeframe:

00:00 – Xiaomi Mi Router 3 disassembly
00:56 – Solder TTL pins (for Serial connection)
01:53 – Boot up the Mi R3 with Padavan – Console output
03:32 – Download X-WRT firmware for Xiaomi Mi Router 3
04:46 – Set static IP for network adapter of the PC
05:01 – Start tftpd64 (TFTP server)
05:14 – Open Serial Port with Putty
05:28 – TFTP boot the Mi R3 with OpenWRT initramfs
07:11 – Access LuCI on X-WRT (192.168.15.1)
08:10 – Permanently flash OpenWRT image into router NAND with sysupgrade image
10:17 – NAT throughput and WiFi speedtest

Resources:
X-WRT firmware for Xiaomi Router 3 – https://github.com/astolfogit/miwifi-r3-production/releases
Xiaomi Mi WiFi R3 (Mi Wifi Router 3 / MIR3 / MI3)
OpenWRT document – https://openwrt.org/toh/xiaomi/mir3
OpenWrt Forum – Xiaomi Mi WiFi 3 support – https://forum.openwrt.org/t/xiaomi-mi-wifi-3-support/

Thanks for watching and I will see you in the next video!

openwrt