02 August, 2015

MPR-L8 (HAME MPR-A1) firmware update and firmware images

The MPR-L8 is very nice and cheap mini router, having also an USB port and a built in battery. From the factory it has a very capable firmware, providing support for 3G dongles for mobile internet sharing, media and file sharing from USB devices and compared to its very small size has all the filtering and port forwarding functions, that normal sized routers provide. Unfortunately the factory firmware is not very stable and we may want to add additional functionality like support for 4G modems or use it as an OpenVPN client to connect easily to home network from any location. All this is possible by flashing an OpenWRT firmware and setting it up according to our needs.




Based on same tests it seems that the A5-V11 code-named mini router is also compatible with this one, so if you are brave enough, you can experiment with these images on that also.



In this post I will go through 2 ways of firmware upgrading and I will also make available some ready to use firmware images. The firmware images provided are of 3 different types:

  1. MPR-L8 firmware family
  2. Hame firmware
  3. OpenWRT firmware
WARNING: Do this at your own risk, there are high chances that you will brick (make useless) your router.

If you are into hacking the router my previous post is more about ways to hack into the router and even how to modify the factory firmware.

Different ways to update firmware

So far I know about 5 ways to update firmware.
  1. Use the web interface of the router
  2. Use the onekeyRouterUpgrade program
  3. Use Linux command line commands to upgrade the router
  4. Solder a serial connector to the router and use the bootloader to load a new firmware either over Ethernet or serial
  5. Solder out the flash memory chip, flash it with a flash writer and solder it back or solder wires to the flash memory chip pins and flash it in place (I have not tried this, and this is only needed if you have damaged your boot loader :-)
In this post I will cover the first 2 methods.

Firmware formats

On these routers the native firmware format is called uImage format, this is the format that the uBoot boot loader can handle, and the firmware should be stored in the internal Flash memory in this format. This format is well documented, you can find more details about it here.

However if you want to upload a firmware trough the web interface of the MPR-L8 you need a specially encoded format. To create an encoded version from the uImage format, there is a tool in the OpenWrt development package called mkporayfw. To convert an image you can use the following command:

mkporayfw -B MPR-L8 -f uImage_file_name -o encoded_file_name

Updating the firmware using the web interface of the router

Log in to the router and in the Admin section select Firmware-Upgrade. Later in this post there will be some hints on how to log into the router.



Select the file name of the image to upgrade and press the UPGRADE button.

If you are running one of the MPR-L8 firmware versions (like in the screenshoot above) you should use encoded firmware, for the HAME firmware you should use pure uImage format. The OpenWrt in theory uses uImage format, but it was not working for me, so you should use the onkeyRouterUpgrade method for upgrading it.

Updating the firmware using onekeyRouterUpgrade

While still connected to a working internet download the onekeyRouterUpgrade and vcredist from here. Then you should connect your router with an Ethernet cable directly to your PC and change your PC ip address manually to 192.168.1.55. Here you can find a description on how to do that. It is safer to switch of the WiFi connection while the upgrade is running.

If you have Windows 7 or newer then you should first run vcredist. Then you should run onekeyRouterUpgrade, to prepare the PC to send the image for the router. onekeyRouterUpgrade is in Chinese, but it is very straight forward to use it.

In onekeyRouterUpgrade you should select the checkbox that you want to upgrade the Root_uImage, Next you should select the firmware image you want to upload and then press the button above the file selection fields. (Red, then Blue, then Green in the screenshoot below).

WARNING!!! Never upgrade your boot loader (Uboot) unless you know what you are doing. If your boot loader is not working, then only desoldering the flash memory and externally writing into it a working bootloader will help.




Now power off the router, press and hold the reset button and switch back the router. You need to press the button for approximately 5 seconds, but the whole firmware upgrade will take up to 2 minutes.

If the upgrade is successful, onekeyRouterUpgrade will show a dialog box about it.

I have upgraded my router, what's next?

Next step is to do the initial setup. There are more ways to do it, the one which will most probably work is to set it up through a wired Ethernet connection.

Connect the router directly with an Ethernet cable to the PC and set the PC back to automatic IP configuration  (Obtain an IP address automatically and Obtain DNS server address automatically).

Next step is to determine the ip address of your router. In this configuration it is the same as the default gateway, here you can find how to get it.

After you figured it out, open your browser and in the address field enter the IP address (e.g. 192.168.1.1 or http://192.168.1.1).

Screenshoots

MPR-L8 firmware, v2.1.3.6 modified:


Hame A1 firmware, v2.3.105.214:


This version doesn't support USB storage.

To change the language enter the following in your browser:

 http://192.168.169.1/goform/setSysLang?en

OpentWRT 1407 stable:

By default WiFi is disabled, you should enable it in the web interface.

Firmware images

uImage format images:

MPR-L8 v2.1.3.6
MPR-L8 v2.1.2.1
Hame MPR-A1 v2.3.104.214
OpenWRT 1407 stable

encoded images:

MPR-L8 v2.1.3.6
MPR-L8 v2.1.2.1
Hame MPR-A1 v2.3.104.214
OpenWRT 1407 stable

After installing OpenWrt here are the steps needed to set up a 3G/4G router.

21 comments:

Toufik Nacef said...

Hello
Thanks for this post
is there a methode to re-install the original firmware from OpentWRT interface ?

Lacó said...

I can not try it out now, but it is relatively easy. You should write the uImage formát original firmware to the mtd3 partition, with something like:

cp /tmp/original_firmware.uImage /dev/mtd3

or mtd -r write /tmp/20140703.bin firmware

I have not tested this now, so check before entering the command, and if it fails you may have to use the onekeyRouterUpgrade method to install a working firmware.

Good luck.

Michael taradus said...

Hi
Is it possible to restore the orginal HAME firmware after i installed openwrt on the Hame a1 true tftp?

Lacó said...

If you have not saved the original firmware, then probably you can not reinstall the same version.

What you can do is to download the Hame A1 frirmware from here and you can upgrade to it using tftp.

Toufik Nacef said...

Lacó I'm back :)
Thanks for your help but..
I'm using win 8.1 I think this command for Linux... could you please give me more clarification.
Thank you again

Michael taradus said...

tnx for your answer. but i have already tryed installing all the orginal files you have one the site but it wont boot up. it only boot up when i install the openwrt file. is it possible that openwrt have modifed something in it that makes it non compatible with the orginal firmware?

Lacó said...

Sorry for the late answer, but I do not believe that OpenWRT has modified or can modify anything, which makes the original fimware not working. What I have seen that there is some difference in the image sizes, and some firmware images do not fit in some devices (the difference is minimal, some 100 bytes).

Can you check on the serial port, what error message is displayed when the original image is not starting and post it here?

Michael taradus said...

Hi
i cant connect the router to the serial port because im not at hom But if i remember correcty from the last time it just keept looping the command prompt with text openwrt something. i know its not helpfull. But i found an old hame imageon my computer who worked before i flashed it to openwrt but it to dident work.

Toufik Nacef said...

I have tested Hame, OpenWRT and MPR-L8 v2.1.3.6... I have made all configuration but the 3G modem (e3533 huawei) not connected :)
It can be because the 3G modem is locked? it work only with one sim provider and it work correctely on PC.
Thenks again

Lacó said...

Usually if the modem is locked that should not be a problem, so far you are using the SIM card from the network it is locked to.

Most probably the problem is that the modem is not detected properly by Linux, most probably this is an "usb-modeswitch" problem.

I had some hints on what to do with MPR-L8 here: http://networkingathome.blogspot.hu/2015/08/fixing-modem-detection-problems-on-mpr.html .

If it is not working, then probably the best is to use openwrt according to this description: http://networkingathome.blogspot.hu/2015/09/setting-up-3g4g-modem-with-openwrt-on.html . If in step 3 you don't find the /dev/ttyUSBx type of device, then most probably it is a "usb-modeswitch" problem and you should try to find the solution using google for that particular modem.

Lacó said...

I just read this post: http://vxlabs.com/2014/06/15/huawei-e3331-3g-usb-dongle-works-on-ubuntu-14-04-linux/ . And it shows that this modem is not a serial modem but an usb-lan type so it wont work with MPR-L8, and you shoudl follow this description http://networkingathome.blogspot.hu/2015/10/setting-up-4g-modem-with-network-usb.html to make it work with OpenWRT.

Toufik Nacef said...

Lacó thanks for your effort...
Nevertheless, I did not succeed.
Thank you again

Anonymous said...

i cant find the standard gateway. can you help me? if i type ipconfig i just get the ip and the subnetworkthingy the standard gateway keeps being empty. furthermore the ethernet connection now shows a unidentified device. can you help me?

Anonymous said...

ok i tried this with a similar device the aukey pb-w2. it did not work with open wrt but i could use the file from their website to flash the original firmware back. so my device still works

Francois said...

Hello,

I try to flash my routeur because it was not working. I got no more wifi signal after a couple of try to restet it to factory default. I could have the web interface from ethernet so I flash it with the MPR-L8 v2.1.3.6 you attached.
Now it's working : I cant telnet and I can see a SSID WIFI-0a10... but I don't know the default wifi passe phrase. Probably your image was not the same as mine : the passphrase was supposed to be 1234567890 and the SSI MIFI-xxxx.
Could you post me the default wifi password for your original device ?
Thanks !
Francois

Francois said...

I found it, the default wifi password is 12345678
Cool, now I will try to flash wrt.

Charlie F said...

how do i determine the ram of my device? the following is the output from cat /proc/meminfo and /proc/cpuinfo
# cat meminfo
MemTotal: 28616 kB
MemFree: 4104 kB
Buffers: 0 kB
Cached: 17860 kB
SwapCached: 0 kB
Active: 11996 kB
Inactive: 7064 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 1232 kB
Mapped: 716 kB
Slab: 4224 kB
SReclaimable: 620 kB
SUnreclaim: 3604 kB
PageTables: 200 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
CommitLimit: 14308 kB
Committed_AS: 3128 kB
VmallocTotal: 1048404 kB
VmallocUsed: 804 kB
VmallocChunk: 1047524 kB
# cat cpuinfo
system type : Ralink SoC
processor : 0
cpu model : MIPS 24K V4.12
BogoMIPS : 239.61
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes
ASEs implemented : mips16 dsp
VCED exceptions : not available
VCEI exceptions : not available

Lacó said...

From the mem total 28616 kB I suppose that your device has 32M ram and some of it is used for other purposes.

I do not have a device at hand, but in the original frimware there is a menu which shows the ammount of RAM available.

Anonymous said...

Can the A5-V11 act as a USB to Ethernet Adapter?

mahesh eranga said...

I need help my router show ip 169.254.70.130 after flash openwrt and subnet mask 255.255.0.0 how i fix this

Intercel Aus said...

{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Calibri;}}
{\*\generator Riched20 10.0.14393}\viewkind4\uc1
\pard\sa200\sl276\slmult1\f0\fs22\lang9 \par
Intercel is a vertically integrated company. Product ideas and market need spark research and development that transforms into innovative products and services sold directly to the market. Partnering with Intercel means you can be assured of quality, innovation, reliability, longevity and price competitiveness.
\par
}