I made a really stupid mistake last night, and accidentally ended up bricking my new Linksys router that I just bought only a month ago. OpenWRT is nice and all, but I wanted to do a bit more with my router, and I wasn’t up to hacking on it over SSH again. So, I figured I would restore the original Linksys firmware, so I could get a nice web interface, an then things would just work pretty easily for a while until I had more time to poke around.
Well, just as I was uploading the firmware binary, I thought to myself, “Hmm, I should probably have closed out my programs that are accessing the Internet.” So I closed my Gaim session, and then without thinking, closed all my Mozilla windows too (File >> Quit) including the one actually uploading the firmware. Man, I’ve never seen LED lights go so crazy before.
I tried re-flashing the firmware by uploading OpenWRT over TFTP, and at first it looked like it was going to work since it actually accepted the transfer. It still just sat there after that though, and nothing was working (DHCP, web interface, and nmap gave no love). I’ve tried re-flashing it again, but I can’t get TFTP to upload anything now, so who knows what’s up with the thing.
I’m sure there’s a lesson to be learned from all of this, though I can’t imagine what it is right now, other than never change your firmware 5 minutes before going to bed. Well, that and never void your warranty on something unless you really know what you’re doing.
So, if anyone wants to play with this thing, drop me a line. The next step is probably to get a serial port on there to reflash it, but that’s way out of my scope of expertise. My networking skills top off at plugging in cables. And bricking boxes. 🙂
A couple of weeks ago, I was also a bit tired ans I saw a firmware update for my router. I just tried to flash my US Robotics wireless router while being connected … wirelessly! Nice disaster. I thought I had no chance to get it working again. But while browsing the USR website, I saw a kind of emergency procedure to boot it with tftp. Press reset during 5-10 seconds not less than 5 not more than 10, disconnect the power plug, reconnect it and simultaneously begin the tftp transfer. After two or three trials it worked! So I don’t know if the same will apply to your hardware but don’t give up!
I found this on the Sveasoft forums (I use their Talisman firmware on my WRT54G) on un-bricking routers: http://www.sveasoft.com/modules/phpBB2/viewtopic.php?t=8339
The relevent comment:
Go to Start—run–cmd–type: ping 192.168.1.1 If the operation “times out” then you need to try to reset the router in a number of ways described in these forums (long hold on the reset button, hold reset button before plugging in power and then releasing after 5 seconds etc). None of these worked for me. I resorted to opening the case and looking for the “flash chip” (it says so on its surface” and finding pins # 15 and 16 (fairly clearly labeled). Take a pointy metal object and “short out” these 2 connections and then plug in the power. After power is on, you can remove the sharp metal object. Try to ping the router again. This time I was successful. I still could not communicate with the router, however, and the power light kept flashing.
Download a copy of the OEM firmware and unzip it. Rename it code.bin and then place the file in the C:\document and settings\user (where user is the person logged on to the computer…in my case the file was C:\documents and settings\Rick)
Now go to Start–Run—cmd—and then type dir (for directory). The code.bin file should be part of the list of files that now pops up. It will probably be named code.bin.bin. If you see the file, your getting close. Type the following: tftp -i 192.168.1.1 put code.bin.bin. (no last period in the command line). Dont hit enter yet!!! Unplug the router. When the router is replugged in and you see the lights come on, hit enter (immediately). If you time it right, the following will pop up: Transfer successful 3601408 bytes in 8 seconds (I was successful on the first try). Watch the router and wait 1-2 minutes. The power light will become solid Shocked !!!. Unplug it and replug it. Again, wait 1-2 minutes until it “chills out”. Now type in the IP address and Voila!!! $80 saved.
Good luck. Any derivations needed from the above formula are above my head as I seriously consider myself a “dummy”.
The best option to revive a bricked WRT is a JTAG cable. Pretty easy to build, easier than a serial, and safer than shorting the pins on the flash as mentioned above.
I set an invalid CPU clock frequency on my WRT – this bricked it instantly – was able to recover it easily using a JTAG.