Recovering from a bad flash


In the previous post I mentioned that I had a couple of bad experiences with the Debian installer and the Linksys upload web page. Luckily, it’s really easy to recover from these. You do that with the magical RedBoot sequence (RedBoot is the boot loader the slug uses). Do something like this:

Download the Linksys firmware from their web site. I tried this technique with the Debian installer image and it didn’t work, so I only know it works with the Linksys firmware. Put that firmware on a web server on your local LAN which the slug will have access to. Then, connect to the boot loader. You do that by running this command…

    sudo arping -f; telnet 9000

…and then power cycling the slug. You’ll end up with this:

    $ sudo arping -f; telnet 9000
    ARPING from eth0
    Unicast reply from [00:0F:66:7D:1E:09]  10.717ms
    Sent 17 probes (17 broadcast(s))
    Received 1 response(s)
    Connected to (
    Escape character is '^]'.
    == Executing boot script in 1.670 seconds - enter ^C to abort

You have to be pretty quick on the draw here with the control C, as you have about 2 seconds to hit the sequence before the slug starts to boot normally instead. Now that you’re logged in, you can download the new firmware:

    ip_address -h      The IP of the HTTP server
    load -r -v -b 0x01000000 -h -m http /NSLU2_V23R25.bin
                                     Load the firmware file
    fis write -f 0x50060000 -b 0x01060000 -l 0x7a0000
                                     Write it
    reset                            Reboot

And you should be back at the Linksys firmware. Note that you will still have the network settings that you had set before…