Install OpenWrt on Kingston MLWG3

Looking for anyone that has successfully flashed OpenWrt on the Kingston MLWG3 router. I have found a GitHub resource, but it is old (2016). I am not sure what the best way to proceed is, I have done what I think is the build for the router, but really need some help.

I have been able o connect via JTAG and pulled the details, I can get to the point of TFTP flash, but the file name is not .bin its .ram and I believe from the research - there are 2 kernels ?? SO how do I go about flashing OpenWrt and if I get it wrong?? BRICK.

Looking for experience / knowledge or help of any kind. Thank you.

U-Boot printenv output
U-Boot 1.1.3 (Oct 22 2015 - 15:22:48)

Board: Ralink APSoC DRAM:  64 MB
relocate_code Pointer at: 83f68000
Software System Reset Occurred
flash manufacture id: ef, device id 40 18
find flash: W25Q128BV
*** Check if data is correct or not...
*** Data is correct.
Ralink UBoot Version:
ASIC 7628_MP (Port5<->None)
DRAM component: 512 Mbits DDR, width 16
DRAM bus: 16 bit
Total memory: 64 MBytes
Flash component: SPI Flash
Date:Oct 22 2015  Time:15:22:48
icache: sets:512, ways:4, linesz:32 ,total:65536
dcache: sets:256, ways:4, linesz:32 ,total:32768

 ##### The CPU freq = 575 MHZ ####
 estimate memory size =64 Mbytes
RESET MT7628 PHY!!!!!!
Please choose the operation:
   1: Load system code to SDRAM via TFTP.
   2: Load system code then write to Flash via TFTP.
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial.
   9: Load Boot Loader code then write to Flash via TFTP.

You choosed 4

4: System Enter Boot Command Line Interface.

U-Boot 1.1.3 (Oct 22 2015 - 15:22:48)
MT7628 # ls
Unknown command 'ls' - try 'help'
MT7628 # help
?       - alias for 'help'
bootm   - boot application image from memory
cp      - memory copy
crc32   - checksum calculation
erase   - erase SPI FLASH memory
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls   - list files in a directory (default /)
go      - start application at address 'addr'
help    - print online help
loadb   - load binary file over serial line (kermit mode)
md      - memory display
mdio   - Ralink PHY register R/W command !!
mm      - memory modify (auto-incrementing)
nm      - memory modify (constant address)
printenv- print environment variables
reset   - Perform RESET of the CPU
rf      - read/write rf register
saveenv - save environment variables to persistent storage
setenv  - set environment variables
spi     - spi command
tftpboot- boot image via network using TFTP protocol
usb     - USB sub-system
usbboot - boot from USB device
version - print monitor version
MT7628 # printenv

Environment size: 370/4092 bytes
MT7628 #

Maybe the guy who created the factory to OpenWrt via SD card/USB stick images for the MLW221 and the mlwg2 ( can help?
You might can contact him via his Google Drive Repo:

1 Like

Did you have any success installing OpenWrt on the device. I just bought one and very interested to try it out. I did see the old GitHub from 2016 as well. I got the telnet going. I'm not sure if I want to open the case (don't won't to break a new device right away) there should b a way to upload over telnet openwrt.
Mine shows rev B on the label

I do use this Kingston MLWG3 with OpenWrt successfully (with caveats). Was and still looking high and low and so far can not find anything as versatile as it!
Now to caveats:
5GHz somehow is difficult to connect to. Yet after 10-50 tries - I can connect to it and once one device is connected - other have no problems to join (real life speed about 80Mbit/s)
2.4GHz works no problem, but rather on the slow(-ish) side i.e. real speed about 12Mbit/s
Ethernet - works fine as well, but remember it is 100Mbit interface.
USB 2.0 - works the way it supposed and yes, can be used as powerbank, but if it is on - usb power is limited.
SD Card reader - no luck.
In general - it is not super-powerful device, yet it is sufficient for most cases.
Other things:
Can operate while charging (connected to power)
Not able to gather battery level (though do not see OpenWrt has meaningful support for that)

Finally - to make it work - had to tweak/create few files and build OpenWrt on my own. And yes - OpenWrt can be installed using methods described i.e. by getting root telnet and proceed from there.

1 Like

Is there a chance you can provide a little more detail? I would live to get my router up and running :smiley:

I believe I'm close, but with the aid of your experience, should be doable. IF you have time and can provide the help, I'd be appreciative. Thank you