Bricked Linksys WRT1200AC after Upgrading OpenWrt CC to LEDE

The good news is that most of the config data is in files under /config, so you
should be able to go through the new files and cut-n-paste most of the stuff
from your old config.

1 Like

I'll give it another try. This will become a long/ busy weekend. :slight_smile:

Earlier this week, I was in the same situation with a WRT1900AC unit with the lede-17.01.2-mvebu-linksys-wrt1900ac-squashfs-factory.img firmware.

I figure people running OpenWRT CC era firmwares will be looking to upgrade due the KRACK vulnerability, and will be hitting the forums due to breakage.

I have a USB-TTL cable, so I was able to check where it was failing to boot.

I could get to the Marvell prompt, and used the openwrt.org WRT1x00ac corrupt bootloader recovery process.

However, this was not working.
I was getting the following error:

Verifying Checksum ... Bad Data CRC
ERROR: can't get kernel image!

After a while I realised I was overlooking the checksum part of the error.
Although the hash for the firmware matched the source, I found a reference about the firmware image size - https://github.com/Chadster766/McDebian/issues/7#issuecomment-202169021
I set the size as per the reply, and the checksum error was resolved, only to be replaced with:

Wrong Image Format for bootm command
ERROR: can't get kernel image!

Another search found a resolution - https://community.linksys.com/t5/Wireless-Routers/WRT1900AC-and-OpenWrt/m-p/918073#M293531 and I ended up running the following to get it booting. Some of this is counter to the instructions given in the openwrt .org recovery steps.

setenv ipaddr 192.168.1.1
setenv serverip 192.168.1.2
tftp 2000000 u-boot-nand.kwb
nand erase 0 e0000
nand write 2000000 0 e0000
run update_both_images
boot

Lastly, if you have a saved configuration and you were running a firmware from the OpenWRT CC days, check these dnsmaq group bugs:
OpenWRT bug 22271 - https://dev.openwrt.org/ticket/22271
OpenWRT bug 22300 - https://dev.openwrt.org/ticket/22300

I hope this helps out others.
(First post in these forums and the software does not allow more than two links per post for new users ... wtf ? I had to deliberately break the hyperlinks)

1 Like

This is an antispam measure, the link limit disappears once a user has been active for a while in the forum. Meanwhile, I fixed the links in your post.

I'd been holding out waiting for the pending OpenWRT/LEDE merge but in light of KRACK and its rapid patching in LEDE have decided to upgrade my Linksys WRT1900ACS to LEDE-17.01.4 so this thread and your post are very timely.

After reading the original post in this thread by tokai I'll be taking a backup from the current install but am mindful that I should not simply restore it, to which end I'll backup manually all configuration files under /etc/ for copying and pasting back configuration back over manually.

Slightly concerning that Checksum for your WRT1900AC didn't checkout and prevented it from booting (mindful of bricking a > £100 router!), especially as I've no USB-TTL cable.

Fingers crossed things go well.

Pleased to say the upgrade has gone pretty seamlessly.

I backed up /etc and moved it off the router as well as making a backup through LuCi just in case I had to go back to OpenWRT.

Flashing the sysupgrade went fine and a fresh LEDE install booted. I manually modified settings by editing files in /etc/config/ to match those I'd backed up from the old OpenWRT install, rebooted and all is back as it was. Most pleased it all went well.

Final step is to flash the mwlwifi drivers that have just been rebuilt. Initial attempt and the package is thought to be a downgrade so the --force-reinstall option is required.

Just joined the club. Unfortunately, only now I see this thread.
After upgrade from openwrt 15.05.1 to lede 17.01.4 the internet
connection stopped working as well as other ethernet ports. Right
now my router is utterly bricked since I was stupid enough to
update both boot partitions. No connectivity whatsoever anymore.
Have to order the serial cable.

Is there a way to somehow recover the thing without the serial
cable? Can it perhaps boot from the USB port?

Any idea of why the all the ports be borked? Left vlan switch settings in-place?
What about wifi, you might be able to put an image on /tmp and flash, wee bit risky, but you are already there.

Sounds like the Linksys WRTxx00ACx series bootloader-based dual-partition fallback is not an option anymore, but you should be able to enter the Openwrt/LEDE failsafe mode (that can be entered during early Openwrt/LEDE boot process).

In this failsafe mode the router bypasses all your config files and only uses the contents of the firmware itself = the LEDE defaults (like 192.168.1.1 etc.). In failsafe mode you can then use "firstboot" to wipe the jffs2 /overlay partition, so that on the next normal boot the router boots up fresh.

Entering failsafe requires a button push inside a definite two-second time window, so it may take a few tries to get in...

I have used failsafe with WRT3200ACM, so it works for the mvebu devices. (there is the WPS button on the back panel) In WRT3200ACM the correct moment is about 10-15 seconds after power-on. (first the power LED blinks a few seconds during u-boot bootloader phase, then the LED remains steadily lit for a few seconds, after which it starts to blink that 0.1 sec indicator rhythm for two seconds during which you need to push the button.)

Read advice at wiki. There are also the key commands explained...
https://lede-project.org/docs/user-guide/failsafe_and_factory_reset

On most routers, LEDE will blink a LED (usually “Power”, may be other) during the boot process after it gets control from the initial bootloader (like u-boot). LEDE will rather early in the boot cycle check if the user wants to enter the failsafe mode instead of a normal boot. It listens for a button press inside a specific two second window, which is indicated with LEDs and by transmitting an UDP package.

There are three different (power) LED blinking speeds during boot for most of the routers:

first a moderate 0.1 second blinking rhythm during those two seconds, when router waits for user to trigger the failsafe mode
then either
    a slow 0.2 second blink continuing to the end of boot, if the failsafe was not triggered and the normal boot continues
    a rapid 0.05 second blink if the user pressed a button and failsafe mode was triggered

To enter failsafe mode, follow one of the procedures listed below:

Wait for a flashing LED and press a button. This is usually the easiest method once you figure out the correct moment.

One way is naturally pushing rapidly the WPS button after turning power on.

Successful entrance to failsasafe is rather indicated with very rapid continuous LED blinking, like explained in wiki.

mount_root
firstboot
reboot

Forgot to mention that I've already tried the failsafe option,
but no cigar.

The "Internet" port is completely dead. Surprisingly, on port 1
there were bootp requests coming in, so I gave it an IP address
and offered a file for tftp, but no further communication, not
even ping worked.

Obtained a USB TTL thing, but nothing comes at the serial port.
Then tried with a null modem cable (have a serial port on the
workstation), but again nothing. Neither with 115200 nor with
9600 baud. Not sure what else can I try.

First and foremost, there's a reason "It is highly recommended to invest in a USB - TTL cable" is the 2nd main bullet in the WRT AC Series' Wiki Introduction

  • No one should be flashing 3rd party firmware without some means of serial access (USB-TTL, UART, etc.)

.
Please detail exactly how you've connected your USB-TTL Cable to the serial header, as the likelihood of the main board being damaged is so astronomical, this is likely user error. Have you read the Serial Port, Serial Interfaces, and Serial Firmware Flash sections of the WRT AC Series Wiki.?

Watch this tutorial...

I have 24 hours to try to fix this before getting on a plane. Any ideas of a shortcut to get back up and running? I have a WRT1200AC and I loaded

openwrt-18.06.1-mvebu-cortexa9-linksys-wrt1200ac-squashfs-sysupgrade

Now I no longer get an IP address assigned. I guess I used the wrong version to upgrade the factory image.

169.254.10.87

Have you reviewed the WRT AC Series ToH wiki that's been mentioned several times in this thread? Did you follow the instructions in Flashing Firmware

Actually I am taken aback after reading more about this router. Not sure about the the flashing from partitions, etc. I have been using various custom firmwares since the old WRT54G and switched to OpenWrt a few years ago since it seems more "serious minded". After struggling with learning the interface, I normally just look for a recommended router, download the firmware and flash. I always assume that if a firmware is listed in Table Of Hardware, it's pretty much download and go, well other than spending weeks at a time trying to TFTP it if the destination router is a Buffalo LOL. Looks like this whole setup is a different animal and I may have to slide this back in the box and use an old Buffalo that I have until I can invest several weeks for a learning curve to get familiar with what all this dual boot and other talk is regarding this router. I found this unit on sale for a good price considering the specs. Should have read a little more about it ...... always assume the world continues to get more complicated.

@DonJuane It's again apparent you refuse to refer to the WRT AC Series ToH, which spells out clearly the four steps involved in flashing. If you don't want to take the time to read, why should anyone take the time to help you?

I've been in the IT industry for over 40 years, and I find the largest problem I ever dealt with is that the majority of people with a higher skill level believe that words on a printed medium are the same as transferring the knowledge of what those words mean. The world of Linux seems to be the worst because most of the documentation that does exist is written top-down rather than the more elementary operating systems which are usually constructed in a down-top manner.

Otherwise you asked why I was having difficulty and that is what I was trying to explain that in the past the procedure worked without connecting with a serial cable or reading about dual booting systems or trying to get my brain around a new concept.

It took me 2 years of reading and experimenting before I ever got a working OpenVPN server running on OpenWRT, so maybe I am a little slower than the average guy. I won't ask for any more help, but I appreciate those who provide it otherwise. Have a great holiday season and may all your days be merry and bright!

1 Like

That's the whole point of a wki... ToH or otherwise

Since you've exhausted my patience:

  1. You posted in a thread regarding a bricked router, so you don't get to complain when you're then informed of how to unbrick your router. If your router isn't bricked, why are you posting in this thread (and 12 months after the last post to boot)?

  2. In both responses to you, I linked to how to flash firmware... how you seem to have missed this is incredulous... how to flash from OEM firmware to OpenWrt.

Best of luck to you, as I've linked to how to flash the firmware from OEM to OpenWrt in all three responses to you.

OpenWrt has a whole set of wikis under Documentation (OpenVPN wikis can be found here).

Wisely spoken.

Regarding your problem: The dual boot concept is not that complicated, just read the wiki and search forum.

Yeah, back then (TM), when 640k was enough for everyone, everything was better, easier to understand, and in general... sigh :wink:

2 Likes