Factory restore Linksys MX4200v1

Hey everyone,

I'm looking to flash my MX4200v1 back to stock firmware as I'm having a lot of trouble with the current snapshot release, but I can't figure out how to do that without access to the serial console. So far, I've tried following this article, this article, this one, this one, and this one, but none of them seem to contain all the necessary information / any information (some just link to dead resources).

So far, what I gathered is that per my understanding, I need to:

  • download the stock firmware (I got mine from here),
  • set my local machine's IP to a specific value (couldn't find any information on which one for Linksys),
  • connect my local machine to the router via Ethernet,
  • start a TFTP server on my local machine (I'm on macOS and there is a lot of talk on which server to use or not to use, but those recommendations are partially >5 years old, so I'm not sure which TFTP server to use),
  • potentially rename the firmware file (I read somewhere that Linksys expects it to be called chiron.img, but haven't seen any talk about this elsewhere),
  • and then somehow cause the router to fetch the firmware from my TFTP server (I tried this method, but that didn't work - wrong IP? Wrong filename? Wrong approach? The LED just kept flashing in orange for a good five minutes before I eventually expected that whatever I did was probably not the right thing and unplugged it).

Can somebody help me, especially with the aspects in bold? I'm looking to understand which IP I should set my local machine to, which TFTP server to use (on macOS), what to name the firmware file, and how to make the router fetch that file and flash it.

Any and all help is greatly appreciated!

Alternatively, if there’s a different method for restoring the stock firmware, I’d be happy to know about that, too! Anything to return the router to its factory defaults.

Did you resolve this?

Try looking to the link below or contacting the poster for help?
@lytr

No I didn't, but mainly because I made some changes as to how I want to use the router, so I went back towards fixing up my installation OpenWRT rather than throwing it off the unit.

I had actually also found that thread, but I found it a little hard to follow, and there was repeated mention of the serial console, so after cracking my brain at it for a while I figured I'm not deep enough in the topic yet to make sense of what was being discussed there.

Still, thanks for the tip!

1 Like

I hear you.
It would be nice to know how to restore back to v1 factory image without serial.

1 Like

Maybe somebody will be able to help! I see you already posted in this thread; I feel like if anybody knows, it must be somebody in that thread.

I had actually posted there and then deleted it again because I felt it was a little off-topic in the context of the thread, but I think it might also be valuable information for others to understand how to reset the device back to its original state.

Either way, good luck!

1 Like

Have you found a solution yet?

I've been looking for the same info as you. Specifically, what IP address should my TFTP server be on?

I am able to get to the serial console on the mx4200 and in the logs there is a small portion where it is doing its TFTP stuff, but there is no indication of the ip it is trying to hit.

I bricked my router and only have access to serial now and hopefully a TFTP flash. :sunny:

Edit:

I did try this command in serial console: using the IP of my machine I had directly connected to the router and the image file I was trying it with. After hitting enter, in console nothing happens. I'm assuming my TX pin is connected correctly as I do get the echo out on the console. I'll give it another try later today and see if I can get it to take.

tftpboot 50000000 IP:LOCATION_xiaomi_ax3600-initramfs-fit-uImage.itb; bootm

Cant you boot to second partition by doing a (( Power Switch method) reboot 3 times and on the 4th time should boot up on the other partition?

Then you can SSH and restore the file via ssh commands assuming you have openwrt on both partitions.

When I turn it on, it has a solid blue light always. That Power Switch method would be flipping it off as soon as the blue light flickers, mine never does.

I have tried the power switch method, but I am fairly certain I flashed using mtd to both partitions...I was certain I messed it up a couple weeks ago, so it went on hold until I had time to open it up and get at the serial port and see about doing a tftp.

Last night was when I was trying everything.

I had the solid blue light when i messed up. Wish i had documented the exact steps when i had solid blue light and recovered or maybe went to the other partition not sure.

If you have around 10-15 minutes try below.

So turn the router ON for 45 seconds and press reset and hold it down for 30 seconds let go.
Turn the router off.
Turn Router On
Does the lights start flashing blue after 15 seconds
if not
Turn Router OFF
Turn Back ON
while holding the reset Button.
After 30 seconds Turn Router OFF
Turn on leave it on for 5 minutes.
Turn Router OFF --> Turn Back ON -->Does the lights start flashing blue after 15 seconds
Any change ?

I gave that a try a few times. The light still stays solid blue.

you mentioned previously When you TFTP "After hitting enter, in console nothing happens. " Is there a firewall ON maybe turn it OFF?

I don't think the windows firewall is blocking it, but I can try disabling it completely and see what happens.

After pressing enter in console, it just stays on this in the screenshot. No firewalls, never shows it hitting the tftp server. I'm using Tftpd64.

image

I did not use or try to use the tftpboot cmd.
I was using Tftpd64

When you press enter., the commands I entered were
NOTE: sometimes the prompt will say ask for help enter help and go back to entering the commands below again.

1 .setenv ipaddr 192.168.1.1 <-- Linksys IP

2.setenv serverip 192.168.1.12 <-- Desktop ip4 static address & TFTP
server option selected.

  1. setenv firmwareName Chiron.img

  2. run flashimg Chiron.img

****If you want to update partition 2 ****
5. run flashimg2 Chiron.img

Question) Do you have linksys or openwrt firmware on both partitions ? You might want to try the exact image you currently have on and rename it to "Chiron.img"

1 Like

Yeah, you were doing it from SSH though, correct?

I'm connecting through a serial cable to USB on a com port. I'm still not certain it is taking my commands...

I'm fairly certain I have openwrt on both partitions.

  1. I did NOT ssh. even though i can.
  2. I opened the router and USB serial console same command screen you have. I had to enter to stop autoboot and entered the commands in my previous post.

Oh! Ok, so I'm in the same boat. Let me check on my serial connection pins with you as well then. Through trial and error, this is what I have and gives me clean console connection and input(maybe).

Also, when I push enter to stop autoboot, it doesn't seem to stop it...which is why I think my input isn't working.

Your looking at the Pins Wrong way round

PAY ATTENTION to The small triangle on top in white this is PIN 6

So where it says J2 should be
pin 1.GND
pin 2. TX
pin 4. RX

1 Like

Hehe! All good now, my input is working.