Step-by-step guide to replace the stock Chinese firmware on an A5-V11 pocket router (~5 EUR) with an OpenWrt-based image that includes an XMPP chat-bot daemon for IoT applications.
What is A5-V11?
A low-cost (~5 EUR) Wi-Fi router capable of running OpenWrt Linux.
What is a5v11-xmpp-image?
A customized OpenWrt image that includes a C++ based XMPP client daemon for IoT applications. See this blog post for details on using it as a smart-home gateway.
Setup
As shown below, items 1–3 are required. Items 4–6 (USB-to-I2C converter and SSD1306 display) are optional — they help display the router's IP address on boot if you can't find it via your home router's DHCP client list.
Setup overview: A5-V11 router, Ethernet cable, PC (required), plus optional USB-to-I2C converter and SSD1306 display for IP readout.
Flashing steps
Step 1 — Download a5v11-xmpp-factory.uimg to your PC.
Step 2 — Connect an Ethernet cable between the A5-V11 and your PC.
Step 3 — Power on the A5-V11 with 5 V DC and wait ~1 minute until your PC gets an IP in the 192.168.100.x range.
Step 4 — Open 192.168.100.1 in your browser. You should see the Chinese OEM firmware page:
Stop here if your page looks different. You may have the Qualcomm firmware variant — follow this other guide instead.
Step 5 — Click the language dropdown to switch to English:
Step 6 — Navigate to Admin → Firmware Upgrade → Choose File, select a5v11-xmpp-factory.uimg (downloaded in Step 1), then click "Upgrade".
Step 7 — Confirm by clicking "OK":
Step 8 — A second confirmation is needed — click "OK" again:
Step 9 — The firmware upgrade begins:
Step 10 — Wait about 40 seconds, then remove power and disconnect the Ethernet cable from the PC.
Step 11 — Connect the A5-V11 to your home router via Ethernet. Make sure your PC is also on the same network.
Step 12 — Power on the A5-V11 and wait until the red LED stops blinking.
Post-flash configuration
Step 13 — SSH into the router using hostname my-a5v11 with credentials root / brb0x.
If you can't find the router's IP, connect an I2C display to the USB port — the router prints its IP on boot:
Step 14 — Change the default password:
passwd
Step 15 — Set your XMPP (Jabber) login credentials (replace with your own):
echo "user: test-slave-account@xabber.de" >/etc/xmproxy/xmpp-login.txt echo "pw: chatbotpw" >>/etc/xmproxy/xmpp-login.txt reboot
Step 16 — After reboot, your device should appear online in your smartphone's Xabber chat client.
Next steps: Follow this blog post to use the A5-V11 XMPP chat-bot as an IoT gateway for home automation.
How can I revert back to openWRT firmware after flashing your a5v11-xmpp-image ?
ReplyDeleteI installed openwrt on it, but it doesn't have the functions I wanted. How do I install this firmware?
ReplyDeleteCan someone send me the firmware for it? Can I use a USB eeprom to install the firmware?
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteI found the original firmware and posted it on github.
ReplyDeletefor those who want the .bin file of the original firmware also with .hex, from openwrt also in .bin:
https://github.com/SuLorde/a5-v11/issues/1