Sunday, January 07, 2018

Overwrite stock A5-V11 Chinese firmware with openwrt-based a5v11-xmpp-image

This is a step-by-step guide for overwriting stock OEM chinese-image of a5-v11 with openwrt based a5v11-xmpp image.

what is a5-v11?: This is a low cost(5Euro) wifi router capable of running openwrt linux.

what is a5v11-xmpp-image?: this is a customized openwrt image which includes a c++ based xmpp-client-daemon for IoT application - look here for details.

Setup: As shown in the picture below, item-1,2 and 3 are needed and item-4,5 and 6 are optional - they are needed only when you are unable to figure out the ip address of a5-v11 using its hostname. There are otherways to know the ip of your a5-v11, ex: looking at the dhcp client list on your home-router's webpage. For any reason if you are unable to figure out the ip, you can use a usb-to-i2c converter and ssd-1306-i2c-display. Upon linux boot, a5-v11 prints its ip-addr on this i2c display.



Step-1: Download a5v11-xmpp-factory.uimg to your pc's hard-disk.

Step-2: Connect a cat-5 or cat-6 cable between a5v11 and your PC.

Step-3: Power ON a5-v11 with 5VDC and wait for ~1minute till your pc gets the ip from a5-v11(your pc shall get an ip in the range of 192.168.100.xxx)

Step-4: Enter "192.168.100.1" in your browser's URL and you shall see the following page.
If you dont see this page - stop here!!!!, your a5-v11 might have a different firmware. I have a separate blog explaining the step-by-step guide for qualcomm-based a5v-11 firmware.

Step-5: Click on language dropdown list to switch to english
Step-6: Click on Admin->Firmware-Upgrade->Choose File xmpp-a5v11-factory.uimg(which was downloaded in step-1).  And then click "upgrade" button.

Step-7: You will have to confirm by clicking "OK"
Step-8: A second confirmation is needed, click "OK"
Step-9: Firmware upgrade starts, you will see the following pages

Step-10: Wait for about 40seconds, remove the power to a5-v11, also remove cat-5/cat-6 cable which was connected between a5-v11 and PC.

 Step-11: Using cat-5/cat-6 network cable, connect a5-v11 to your home-router and ensure that your PC is also connected on your home-router's network.

Step-12: Power ON a5-v11 and wait till the red-LEDon a5-v11 stops blinking.

Step-13: Using ssh or putty.exe, login to a5-v11's shell terminal using hostname "my-a5v11" - login username/password is root/brb0x. For any reason, if you are unable to figure out the ip of a5-v11, as discussed earlier, you can connect an i2c display on usb port of this router,  and reboot to see its ip as shown here in this picture.

Step-14: after login to ssh terminal of a5-v11, change the default password to your own using "passwd" command

Step-15: Set the xmpp(jabber) server's login credentials with this command(replace example user and password 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: Reboot a5-v11, you shall see that your device coming online on your smart phone's xabber chat client.

Next Steps: Follow my other blog to see how you can use a5v11-xmpp-chat-bot as an IoT gateway for home automation.

No comments: