Oct 17 2012

Setting up Tomato on a WRT160Nv3

network router tomato

I just went through a pretty harrowing experience setting up my router with the Tomato firmware. In the effort of saving some people some time, I thought I should document what I did here since there were many non-obvious things going on. Note that there are 3 versions of the WRT160N, each with slight incompatibilities. From what I understand v1 and v3 are both capable of new firmware, but this guide is specific to v3. There also might be a quicker way to get up and running, but the way I’m describing is the most foolproof (starting from a bricked-as-possible state and working up from there).

  1. Download the official WRT160Nv3 firmware from Linksys. We’ll need this in case things go south. The firmware can be found under the ‘downloads’ tab. (Make sure you select version 3.0). If you hit a snag, skip to step 5 and start from the beginning again, perhaps with a different tomato firmware.
  2. Download a DD-WRT image compatible with the WRT160Nv3. This one works well.
  3. Download a TomatoUSB version compatible with the 160N. Decoding the table at the bottom means you want something that fits the pattern tomato-K26-MIPSR2 that fits in under 4Mb. Note that the TomatoUSB project has diverged into the realm of mods. I found the older Shibby mods to work OK. Note that Shibby’s builds fall into 52, 54, and 5x. The 5x had ‘RT’ in their title and did not seem to work. The 54 did, and one known to work is tomato-K26-1.28.9054RAF-EN-MIPSR2-beta-036H-Std.trx (make sure to get the MIPSR2 one and not MIPSR1).
  4. Not necessary, but you may want to set your computer to have a static IP of just to make things easier once you’re hopping firmwares.
  5. We’re going to proceed in three steps: from a bricked machine we’ll upload the official Linksys firmware. The Linksys firmware doesn’t like tomato but likes DD-WRT, so we’ll upload DD-WRT. Taking care to get the DD-WRT password first, we’ll finally upload tomato which will hopefully work. If you’re already at a stage (say, you’re starting from the normal Linksys firmware) then skip ahead to that step.
  6. [Starting from a ‘bricked’ router]: do the 30 / 30 / 30 reset, which puts the router in maintenance mode. Upload the Linksys firmware. My router really wanted to reset the connection here a lot, just keep trying until it goes through. Restart when finished.
  7. [Starting from the official firmware]: go into administration and then firmware upload. Upload the DD-WRT firmware. You will be prompted to enter a password, use ‘root’ for your login and make up a quick pw here.
  8. [Starting from DD-WRT]: Telnet into your router, using ‘root’ and the password you gave before (DD-WRT always uses ‘root’ for the telnet login regardless what you set the login to be). Run nvram get http_passwd and save that gibberish string. This is what we will use to login to tomato. Login to the DD-WRT web interface, go to administration and firmware upload. Upload the tomato firmware and reboot.
  9. Access your router. You should be prompted with a login, use ‘root’ or ‘admin’ and the nvram’d password you obtained in the previous step. The first thing you should do when you first log in is change your password to something sensible. Congratulations, you’re in!

show/hide comment box