Sunday, January 07, 2018

Flash XMPP ChatBot Firmware onto A5-V11 Router

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.

A5-V11 setup: router, Ethernet cable, PC, and optional I2C display

Setup overview: A5-V11 router, Ethernet cable, PC (required), plus optional USB-to-I2C converter and SSD1306 display for IP readout.

Flashing steps

Step 1Download 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:

A5-V11 Chinese OEM firmware web UI

Chinese OEM firmware web interface — confirm your router shows this 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:

Switching language to English

Switch the web UI language 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":

First firmware upgrade confirmation

First confirmation dialog.

Step 8 — A second confirmation is needed — click "OK" again:

Second firmware upgrade confirmation

Second confirmation dialog.

Step 9 — The firmware upgrade begins:

Firmware upgrade in progress

Firmware flashing in progress.

Firmware upgrade completing

Firmware flash completing.

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:

A5-V11 displaying IP address on I2C OLED display

Optional: SSD1306 I2C display showing the router's IP address after 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.

5 comments:

Anonymous said...

How can I revert back to openWRT firmware after flashing your a5v11-xmpp-image ?

alexandre said...

I installed openwrt on it, but it doesn't have the functions I wanted. How do I install this firmware?

alexandre said...

Can someone send me the firmware for it? Can I use a USB eeprom to install the firmware?

alexandre said...
This comment has been removed by the author.
alexandre said...

I found the original firmware and posted it on github.
for 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