The Robot Brain
I'm planning to build a robot this year, and a robot needs a brain. I decided to use a Linksys wireless access point running OpenWRT with some hardware mods as the onboard computer that would coordinate communications with a much more powerful stationary system and would interface with various onboard microcontrollers. After some digging around the net, I decided on the Linksys WRTSL54GS. My main wireless access points are WRT54GL's which running OpenWRT fine for network communication tasks, but for a robot brain I found the USB bus on the GS to be well worth the extra $30 or so.
However, the GS was designed to be a WAP, not a robot brain, so it needs some “upgrades”. First up: the 16MB of flash, while admirable compared to the 8MB on the GL, just won't cut it for what I'm doing. So, I decided to add some internal flash memory.
A couple years ago I was the proud owner of a Cosair 1G flash memory stick – you know those rubber-like memory sticks? I discovered the memory was fast – but the rubber allowed the USB connector to flex too much and it broke off. Being a bit of a pack rat, I tossed it in my box of hardware to be recycled and/or repurposed some day. That day is here already.
Here's what I started with:
That's a Linksys WRTSL54GS, the circuit board from a Corsair USB 1G flash stick and 4 wires.
If you look at the bottom of the GS, there are four feet with rubber pieces to set the unit on. Removing the four rubber pieces reveals four philips-head screws. Unscrew these and the unit comes apart. To get the circuit board out of the case, you will need to flex the front of the unit a bit.
On the back of the unit there is a jack to hook up the power cord, 5 Ethernet ports and a single USB port. On the circuit board, directly behind the USB port there are four small solder joings. Here are a couple pics:
Those solder joints are holes all the way through the PCB. Use a solder sucker to suck the solder out. Place four wires into the holes and resolder.
Next, the wires need to be soldered to the memory stick. If you hold the memory stick PCB up to the USB jack and line it up the way it would have went into the USB port provided it still had a USB connector on it, you will have the four solder pads on the little PCB lined up with the holes they need to be connected to. Here's another pic:
Once these are soldered, you are good to go.
To mount the memory stick inside the case, I took about a 3” piece of black electrical tape and looped it so the sticky side was on the outside, stuck it to the back of the memorty stick and then placed it on top of the plastic housing for the Ethernet jacks. Here's the final pic:
Finally, in OpenWRT you need to make sure you have the right packages installed to see flash memory. Someone else has already written instructions on the OpenWrt Wiki:
http://wiki.openwrt.org/UsbStorageHowto
If you like this story, don't keep it a secret!