You'll need a 128MB CF card and a card reader for your computer. I would think a larger card would work but many people say otherwise on the forums. I happened to have a 128MB card left from my last camera and a Sandisk USB reader so I didn't have to buy either. I plan to make a 256MB verson just because the extra room might be handy in the future but I'm sure I won't get around to it until I really need it.
Grab the official stompbox boot image from here. I'll make my image available when I get the time to clean it up and remove my passwords and vpn keys.
I'm going to assume that you are using a version of Linux. It won't matter which distro as long as you have the basic commands availble. If you use Windows the only clue I can give you is that there is a tool out there that can write raw images to a disk, copying the image by dragging it to the removable device will not work.
This next bit is dangerous and you can quite possible toast your linux machine if you are not careful. You need to determine the device that the card read is installed on. One easy way to do this is to plug it in, wait a second for things to settle and run the command 'dmesg'. It will spew a bunch of odd looking giberish, but we're most interested in the part that looks like this:
usb-storage: waiting for device to settle before scanning
Vendor: SanDisk Model: ImageMate II Rev: 1.30
Type: Direct-Access ANSI SCSI revision: 02
SCSI device sda: 253953 512-byte hdwr sectors (130 MB)
sda: Write Protect is off
Look for the 'sda' or other device name. It should start with sd. If you are using serial ATA drives your first disk may already be sda so the CF ends up on sdb or c. If your card is automounted be sure to unmount it before continuing. The Vendor and Model will most likely vary unless you've got the same old adapter that I do.
Once you are positive you've got the device right, run the following command as root (be sure to change the device to what we discovered above).
dd if=stompbox.0.9.img of=/dev/sda bs=8192
Hit enter and the CF reader activity light should flash for a while and when it's done, dd will report how many blocks it wrote.
Setting up the Serial Console
For this step you'll need a null modem. That is, a cable with the send and receive lines crossed. If you don't have one, check at Radio Shack, they used to carry one or two. If you're handy with a soldering iron you could also make your own. Google for "null modem pinout" and you should get enough info. Plug the cable between your computer and the router. If you don't already have an rs-232 port on your computer most of the usb to rs-232 adapters work automatically in Lunux. Fire up your terminal program, set the serial port (/dev/ttyUSB0 in my case) and we're just about ready to put power to the router.
The BIOS on the Net4521 starts up with the serial port set to 19,200 baud yet the kernel will use 9600. I recommend changing the BIOS setting to 9600 to avoid seeing gibberish before the kernel takes over. Set your terminal to 19200,8,N,1 and power up the router. You should immediately see the power on self test. Hit ctrl-p to get into the BIOS setup, find the baud rate settings and change it to 9600. Save and reboot. I think I had to cycle power after that to get it to boot with a 9600 baud setting. Change your terminal to 9600,8,n,1 and reboot the router.
At this point you should see the bios self test, kernel messages, and boot messages. If you have troubles it might be time to hit the forums. I'll also try to help anyone who asks questions here but you'll need to provide more info than "It's broke".
Stay tuned for configuration and customization.
Part 1 - Before You Start
Part 2 - Getting The Hardware
Part 3 - First Boot
Part 4 - Config and Customize
Part 5 - Future Plans
Part 6 - Summary