OpenWrt installation on OpenMesh A62 router

Could you give a guide about how to install openwrt on the latest A62 router?

The router's management web doesn't provide a way to install the local image, then I tried to upgrade the fw by using tftp tool ap51f-flash, it also fails.

Further more, I see the two KB articles "https://help.cloudtrax.com/hc/en-us/articles/202382890-Open-Mesh-development-information" and "https://help.cloudtrax.com/hc/en-us/articles/210206213-Dual-band-changes-due-to-FCC-requirements" which show the latest OpenMesh's routers are not allowed to install a customized image like openwrt any more. I feel this's a very bad news...

Thanks.

From the git commit that added support for this device:

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the factory image to the u-boot when the device boots up.

Regarding the lock down, see also http://blog.true.cz/2017/02/free-your-router-again/

Thanks. It's a very similar case. But, the solution that's mentioned in the wiki fails to resolve my problem though the host has already connected to the A62 device successfully. Maybe there're some differences.

Where is your device physically located (country/region)?

Location is China.
After the device logins the cloudtrax.com, my laptop could connect the device by using ssh.
Then, I tried to modify RSA keys by referring to the guide https://github.com/true-systems/om5p-ac-v2-unlocker/wiki/Unlocking-using-SSH-connection, after rebooting and trying to upgrade the firmware, it still asked for the xx.xx.sig file.

A62 is a totally different platform and might use different approach for firmware signing, including different location of key (it doesn't even have to be inside flash). Instructions from the Wiki apply and were tested only on two mentioned models.

Did you try to start initramfs image as described in commit message?
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=0b204902075157dbb002ea04f41a5b1a4fbe848c

Yeah, I agree to your thought about A62.

Regarding to initramfs image, I havn't tried yet. I'll try it later.

Unfortunately, trying to start initramfs image failed, too.
The default uboot in A62 asks for 'fwupgrade.cfg', the output files after building don't include it. Below is the partial uboot print information.
BTW, I didn't find out a way to let the device keep running in the uboot stage, but the default uboot in A62 would try to connect TFTP server for the upgrade files each time when the device boots up.


[13:49:00.998]攢←◆ipq40xx_ess_sw_init done
eth0
Hit any key to stop autoboot:  7 
[13:49:02.001]攢←◆ 6 
[13:49:03.002]攢←◆ 5 
[13:49:04.003]攢←◆ 4 
[13:49:05.004]攢←◆ 3 
[13:49:06.004]攢←◆ 2 
[13:49:07.005]攢←◆ 1 
[13:49:08.006]攢←◆ 0 
eth0 PHY0 Down Speed :10 Half duplex
eth0 PHY1 Down Speed :10 Half duplex
eth0 PHY2 Down Speed :10 Half duplex
eth0 PHY3 Down Speed :10 Half duplex
eth0 PHY4 up Speed :1000 Full duplex
Using eth0 device
TFTP from server 192.168.100.8; our IP address is 192.168.100.9
Filename 'fwupgrade.cfg'.
Load address: 0x84000000
Loading: *
TFTP error: 'File not found' (1)
Not retrying...
Retry...
eth0 PHY0 Down Speed :10 Half duplex
eth0 PHY1 Down Speed :10 Half duplex
eth0 PHY2 Down Speed :10 Half duplex
eth0 PHY3 Down Speed :10 Half duplex
eth0 PHY4 up Speed :1000 Full duplex
Using eth0 device
TFTP from server 192.168.100.8; our IP address is 192.168.100.9
Filename 'fwupgrade.cfg'.
Load address: 0x84000000
Loading: *
TFTP error: 'File not found' (1)
Not retrying...
Retry...
eth0 PHY0 Down Speed :10 Half duplex
eth0 PHY1 Down Speed :10 Half duplex
eth0 PHY2 Down Speed :10 Half duplex
eth0 PHY3 Down Speed :10 Half duplex
eth0 PHY4 up Speed :1000 Full duplex
Using eth0 device
TFTP from server 192.168.100.8; our IP address is 192.168.100.9
Filename 'fwupgrade.cfg'.
Load address: 0x84000000
Loading: *
TFTP error: 'File not found' (1)
Not retrying...
Retry count exceeded!

Maybe it's time to ask vendor technical support about your problem.

:joy: I have already sent an email to open-mesh support. Hope they could give some help.

@pepe2k

Unfortunately, the open-mesh's technical support refuses to support for installing a third firmware on their devices.

Could I take some of your time for checking my problem? I see somebody else also asked you for A40/A60 in the github "https://github.com/true-systems/om5p-ac-v2-unlocker/issues/5".

I'm not surprised.

A40/A60 are based on different platform than A62.
Can you SSH to your device and grab output for below commands?

cat /proc/mtd
grep . /sys/class/mtd/mtd*/flags

Yes, you're right that A62 has a different platform than A40/A60.

Below is the output information from A62. So, what should I do next?

root@om99:~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00040000 00010000 "0:SBL1"
mtd1: 00020000 00010000 "0:MIBIB"
mtd2: 00060000 00010000 "0:QSEE"
mtd3: 00010000 00010000 "0:CDT"
mtd4: 00010000 00010000 "0:DDRPARAMS"
mtd5: 00010000 00010000 "0:APPSBLENV"
mtd6: 00080000 00010000 "0:APPSBL"
mtd7: 00010000 00010000 "0:ART"
mtd8: 00010000 00010000 "0:custom"
mtd9: 00010000 00010000 "0:KEYS"
mtd10: 00f30000 00010000 "inactive"
mtd11: 001f0000 00010000 "0:HLOS"
mtd12: 00d40000 00010000 "rootfs"
mtd13: 00920000 00010000 "rootfs_data"
root@om99:~# grep . /sys/class/mtd/mtd*/flags
/sys/class/mtd/mtd0/flags:0xc00
/sys/class/mtd/mtd1/flags:0xc00
/sys/class/mtd/mtd10/flags:0xc00
/sys/class/mtd/mtd11/flags:0xc00
/sys/class/mtd/mtd12/flags:0xc00
/sys/class/mtd/mtd13/flags:0xc00
/sys/class/mtd/mtd2/flags:0xc00
/sys/class/mtd/mtd3/flags:0xc00
/sys/class/mtd/mtd4/flags:0xc00
/sys/class/mtd/mtd5/flags:0xc00
/sys/class/mtd/mtd6/flags:0xc00
/sys/class/mtd/mtd7/flags:0xc00
/sys/class/mtd/mtd8/flags:0xc00
/sys/class/mtd/mtd9/flags:0xc00
root@om99:~#

:slight_smile:

Looks like key/s used for signature verification might be stored somewhere else. Dump this partition and check what's inside. Or, if you are brave enough, just erase it (make sure to backup it first).

OK, Could you tell me how to do it? I'm not familiar with linux... Actually, I'm a beginner. :joy:

Additionally, even though after erasing the default KEY, should I upgrade the default uboot before trying to upgrade the system's firmware?

I see mtd9/mtd9ro/mtdblock9 are located in/dev folder. But when I open them by using vim, nothing shows out.

Dump:
cat /dev/mtd9 > /tmp/mtd9_KEYS_dump.bin

Then login over SCP and download /tmp/mtd9_KEYS_dump.bin file to your PC disk.

Erase:

md5sum /dev/mtd9
mtd erase /dev/mtd9
md5sum /dev/mtd9

If checksums (output from md5sum) will be different before and after erase command, it means partition got erased.

You have been warned: this operation might break your device and make it useless. You might need to re-program flash in external programmer if something goes wrong (e.g. U-Boot refuses to boot with erased keys, assuming they are stored in KEYS parittion). Without backup, that will be impossible.

Do you have dedicated/compatible U-Boot for this device?

I have erased mtd9 partition. The following step, should I reboot A62 first then upgrade its firmware or upgrade the firmware before rebooting? what's you advice?

Do you have dedicated/compatible U-Boot for this device?
No, I don't have it... Maybe somebody in the openwrt community has it.