Adventures with the Linksys WRT54GL – Part 1

For a long time, I’ve wanted to get rid of the 200 Watt Linux PC running around the clock in my bedroom. Not completely, since it’s also acting as my media center and file server, but there is absolutely no reason for it to be turned on all the time. One problem though – it’s also my gateway/router and I another low power gadget to handle that. Preferably dirt cheap, as I’m not swimming in cash.

So, my dear mother recently received a new DSL-router from her provider, which basically contained everything from VoIP to Wifi, rendering – among other things – the Linksys WRT54GL I set up for her obsolete. This router is amazing – it has numerous different custom firmwares available, like DD-WRT, Tomato and OpenWRT. DD-WRT has been my choice for a while, but this time I wanted to go beyond the pretty web interface and get my hands dirty with a terminal connection. OpenWRT (version 10.3.x aka Backfire) seemed like the perfect choice for this.

One of the things I wanted for my LAN, was a good local nameserver setup. Addresses being handed out by DHCP should resolve to a value hostname, preferably the one requested by the client, and the hostname should of course resolve back to the IP. DD-WRT can do this with a tiny bit of tweaking, but OpenWRT does it right out of the box. I changed the TLD from lan to stlan since I’m doing VPN to other places that use lan.

I also wanted to add an SD/MMC card to the WRT54GL. I’ve wielded a soldering iron before, and this hack doesn’t really require anything except some wires and an SD/MMC adapter (unless you want to solder directly on the card itself), so I jumped right in. I can’t exactly remember where I found the instructions for the hack, but try Google. They’re all pretty much the same mod, but with varying soldering and camera skills 🙂 After the mod, my router looked like this:

My first attempt failed miserably though, but was probably due to thin wires and a bad ground connection.

Drivers for the card was a bit of a mess. I tried downloading several mmc.o kernel modules and loading them with no or minimal success. Finally I came across a post talking about the kmod-broadcom-sdhc package. As it turns out, the MMC driver was obsoleted by the SDHC driver. Running it required adding the GPIO-numbers to /etc/sdcard.conf (they’re usually 7, 3, 2 and 4, depending on the way you attached the reader). Firing up the driver and mounting (the prepared partition) was done with /etc/init.d/sdhc start.

So far, it looks like the hack and driver works well with both my 512M card from 2006 and a relatively new 8G card. I’m not really using the card for anything, except for saving DHCP-leases. I need to figure out how to get the most of my SD-card, either by putting the entire root system on it, or maybe just part of it. This may require installing the newest OpenWRT (codename Attitude Adjustment), and I’ll share my experiences with this in part 2 of this series.

I share my connection with a couple of other people, so I’m also interested in setting up some kind of easily maintainable hotspot solution with a login and a password. This will probably be in part 3.

Posted Thursday, October 25th, 2012 under Uncategorized.

Leave a Reply

You must be logged in to post a comment.