Adding OpenWrt support for Mercusys AC12G

I have an CH341A SPI programmer and few others and i know how to handle it. So it is not a problem.

I haven't opened my router, so I can't confirm this, but by looking online at this chip, it's apparently a 16MB chip, not an 2MB one

GigaDevice GD25Q16C is a 16Mbit spi-nor flash chip. 16 Mbit = 2 MByte

Hi, folk!
How is your going with OpenWrt on this Mercusys?
Is it done well?

Hi everyone, I replaced the chip 25Q16 with 25Q64 and flashed TP-Link Archer C5 v4 dump (turned my Mercusys AC12G into TP-Link Archer C5 v4), then installed OpenWrt, everything works fine, but TX signal at 5Ghz is about 20db lower than with the original Mercusys AC12G firmware. (it's low on both TP-Link And OpenWRT firmware)

I guess TP-Link Archer C5 v4 has some additional amplifiers, and TP-Link firmware takes them into account therefore MT7612E produces a lower signal... Mercusys AC12G, on the other hand, doesn't have them therefore MT7612E work full power. But it's just my guess, I may be completely wrong.
What do you think guys?


(see there is a difference, MT7612E in TP-Link Archer C5 v4 has some additional components. Amplifiers?)
How to make MT7612E work with full power in OpenWRT?

UPD: found a solution for 5GHz wifi:

That part of the dump that starts with 62 76 01 00 from the old dump needs to be copied to new tp-link dump, now 5GHz wifi works

thats impressive, nice

however, I would not encourage using flash from another board from another company

rather try to use the original bootloader to upload images over TFTP (even if there is not a menu visible through serial console, the numbered options may still be there)

you can also study the way that OEM does their updates, if at all, and try to reverse engineer that, or at least determine that it's not possible before defaulting to such an extreme method

Yes, I agree, the problem is that the original chip is only 2MB and needs to be replaced with something bigger (8MB for example). I've tried flashing 2MB dump to 8MB chip and the router works, but I don't know if it would be possible to install OpenWRT via serial.
Yes, study the way that OEM does their updates is a good idea, I just don't really know where to start and also it takes a lot of time.
I don't even know what is the structure of dump, for example, the hex code for 5GHz Wi-Fi chip (mt7612e eeprom?) that starts with 62 76 01 00 stored at different addresses for 2MB and 8MB dumps, so what gonna happen if we try to upload images over TFTP with the original bootloader and dump? idk, probably it's gonna fail because the image is to big and probably gonna write over that 62 76 01 00 code... but it is just my guess.
But the point is that it actually works very well now, and I am happy with the results, it's stable and 5GHz Wi-Fi works well. I just needed to copy that hex that starts with 62 76 01 00 from old 2MB chip to new 8MB chip.

TFTP boot means nothing touches the flash, so you can load openwrt and copy the ORIGINAL flash as a backup and study it

Hello everyone! Thanks for having me.

I would love to see an alternative FW like OpenWrt working with my AC12G. I've bought this router to work as an AP only for my Oculus Quest 2, using AirLink. The router works fine for about 99% of the time but sometimes it drops the throughput and makes VR impossible to use because of the lag/delay in the image.

To you guys think that OpenWrt could make this router more reliable? The idea is to use it with only one device connected...

Thanks!

Unlikely that this device will ever get official OpenWrt support: Adding OpenWrt support for Mercusys AC12G - #12 by gaspare

1 Like

Hi, I would like to do the same thing with my mercusys router, please if possible share with me your dump file for TP-Link Archer C5 v4. Unfortunatelly I'm not owner of this type of router, and cannot find any dump over the internet. Thank you in advance. Attila

Hello. I think the main problem is that this router has 2mb flash memory, OpenWrt cannot be installed on such a small space. This is really sad because it is a great router to use with an Oculus Quest 2 for AirLink/Virtual Desktop. Since it costs the same as a good Link cable, it would be great if could be flashed with a FW compiled with only the bare minimum to use it as an AP only and 5ghz band. Thanks.

He , already replaced with 4MB, uploaded the original code and working, but I would like to find the way to use with openwrt.
My plan: Change the boot loader to accept the bigger FW.

4mb is a dead end too, for openwrt.

At the moment I waiting for several pcs of 25Q64, (8MB) FLASH, but i cannot be patiente :slight_smile:

Hello!

Thanks for this great picture. I was trying to figure out the 5ghz antennas, do you know which ones are they? That would help me a lot for positioning the router since I only use the 5ghz band on it.

Thanks!

found this dump

This router cannot even handle the vrchat in desktop mode… you need another one with at least 2 cores, nearly 1 ghz and 16/128 (flash/ram)

I believe there's something wrong in your setup because I've been using this router for months now as AirLink daily driver and loving it. I only connect my Quest 2 to it, the router is directly connect to my PC over ethernet and I can sustain 180mbps with 40ms latency, rarely I see a hiccup or low frame rates. I still recommend this product to all my VR friends.