Well, I was ploughing through the GPL’d source code of the firmware for my router as a bored person would do on the holidays. I was hoping to find a exploit somewhere on my router (the DI524 runs Linux) so I could run SSH and do some other interesting things with the router. My router was the B4 revision.

Eventually, I overflowed the Domain Name Server option in the webgui and it must have screwed something up because the router stopped responding. None of the lights came on except the Power indicator.

I rebooted the router, nope, after all the initialization, I was back to square one.

“Easy to fix,” I thought and flipped the router over and hit the reset button. No response. I unplugged it, held the reset button and plugged it in. No deal. I must have corrupted some part of the firmware so I look up some emergency recovery guides for the router. It looks like a brick.

I eventually found this. But even after following the instructions several times, I still had a non functioning router.

So after a bit of fiddling and over 12 hours of headache and grumpiness since I didn’t have internet, I finally had it booting again. Here’s the procedure to recover your DI-524 from a brick.

First, try a hardware reset. This will reset everything back to factory defaults. First, unplug your router. At the back of your router, there is a reset button. Use a toothpick or ballpoint pen to press it. Plug in your router while holding the button in place. Hold it in for exactly 2 seconds and let go of the button.

If it works, simply skip the rest of this guide and reconfigure your router.

If that didn’t work, try reflashing your firmware.

  1. Download the firmware and firmware flasher to a Windows computer.
  2. Set the IP settings of that computer to a static IP (make sure to write down the current settings before you do). The IP can be any IP between 192.168.0.2 and 192.168.0.254. Set the subnet to 255.255.255.0 and set the gateway and DNS to another random IP between 192.168.0.2-254.
  3. If your status light on the router is already flashing like crazy, skip this step. Unplug your router, hold the reset button in and plug it in. This time, keep holding it until the status light starts flickering really fast. This kicks it into recovery mode.
  4. Plug an Ethernet cable from the computer to one of the LAN ports on the router.
  5. Run the firmware flash program. It should detect the router as “192.168.0.1 crash”. Simply click Upgrade and don’t touch for a minute.

When it says that the recovery if complete, try booting the router again. If it boots successfully, reconfigure. If it doesn’t simply redo the reset technique.

And Voila, you have rescued your dead router!

Other things I observed during my experience:

  • There is a tftp server running when the router was in recovery mode.
  • Sending a read request for the file “R!” reboots the router.