Tomato Firmware on a WRT54GL Router

In 2004, when our D-Link wireless A/B router was getting older, we bought a Netgear WGR614 (v.6) that also sported wireless-G. At the time, we actually had an internet connection that could surpass the lower bandwidth that 802.11b provided (if we were far from the router or experienced some interference). The wireless-B router went to my parents (we use it everytime we’re there) and we kept the Netgear router in service for 6 years.

Recently, we’d been experiencing more freezes of the router and so decided to purchase a new router. I bought a WRT54GL on Amazon and it was at my door just a few days later.

Linksys WRT54GL

Setup was easy enough: all devices, frequencies, MAC filtering, and WPA2. It all worked. However, there were still reported downtimes with the stock WRT54GL and I had no ability to reserve an IP address. I also knew that the WRT54GL was capable of having a boosted transmission output. Since our house is long and certain points of the home can be far away from the router, I knew that the boosted output would be important.

Tomato Firmware

I had a friend (with the same older router) who had bought the 54GL as well and had installed DD-WRT on his router and was really impressed at the results. I looked into this firmware for the 54GL and saw other options as well (openWRT and Tomato). Although the DD-WRT was impressive (it is!), the process seemed somewhat daunting. Similarly, openWRT seemed a little overkill for my needs. So, after reading a lot (what seems like hundreds) of reviews and comparisons and flamerwars on forums, I decided on Tomato. One of the winning discussions was how Tomato allowed for easy configuring and adhered to QoS rules.

The Tomato site says that the install (as simple as updating the default Linksys firmware) would take about 2 minutes. I downloaded the firmware in 7-zip format. To use this format, I had to install p7zip. So, I did

sudo yum install p7zip p7zip-plugins

and the quick installation happened. I issued created a directory, moved the archive to that directory, and then exectued the command

7z -e Tomato_1_28.7z.

After reading the obvious readme.htm file, I navigated to my router’s firmware update page, browsed to the directory that contained my recently extracted firmware file, and installed the WRT54G_WRT54GL.bin file. The whole process took less than 2 minutes. Passwords and all security info were kept.

Here’s screenshot of the built-in bandwidth monitoring in realtime (or over the last 24 hours, pictured below).

Network bandwidth over the last 24 hours.


The firmware is stable and runs well. The router reboots itself regularly, at 4am on Sunday mornings. The reboot feature is also built into the firwmare.

2 thoughts on “Tomato Firmware on a WRT54GL Router”

  1. 7z -e Tomato_1_28.7z << what is this?

    what operating system are you using?

    did you just use the read me or did you execute the whr_install.bat?

    1. vhintage,

      That is the command (in Linux, at the command line interface) to unzip (un 7-zip) the files.

      I’m a Linux user!

      I used the readme.

      Thanks for your comment!

Leave a Reply

Your email address will not be published. Required fields are marked *