AdvancedTomato on the Linksys EA6700

Install AdvancedTomato firmware onto the Cisco Linksys EA6700

15 minute upgrade video, step by step in real time.

Disclaimer

When doing things on the firmware level there is always a possibility that something might go wrong and your router becomes bricked.


March 2022 update

AdvancedTomato (based on Tomato by Shibby) firmware hasn’t been updated in years, so I would recommend using FreshTomato (last updated 24 Dec 2021) which is still being updated, and has been running rock solid on my EA6700 for the last year. The biggest drawback is the UI isn’t quite as clean and modern as AT was.

You should also be aware of a 32K NVRAM limit, which causes a lot of issues with this router (read the comments), thus I would recommend removing this limit by following the steps here (backup mirror of steps + mirror of files), though removing the limit also means you can never go back to Linksys stock firmware, only other third party firmware like AT, FreshTomato or DD-WRT etc

I’d recommend reading through all the steps before starting to get an idea of what will need to be done, then follow the steps carefully.

The old instructions to install AdvancedTomato are below.


The long guide (for beginners)

  1. Download the AdvancedTomato firmware from the download page.
  2. Download the old stock firmware, FW_EA67001.1.40.166281prod.img from Linksys.
  3. Save anything you need internet for before you lose it, if this is the router you use for the internet.
  4. IMPORTANT: If your router is running firmware build version 172250 or higher you’ll have to downgrade to build 166281, as you can’t upgrade to AT from the newer versions. To do this follow the guide here.
  5. Check your router is running on build 166281.
  6. Login to the remote web interface. (default password is admin)
  7. Go to the Connectivity page, under “Firmware Update” it’ll show your build version.

e.g. (Current Version: 1.1.40.166281) the bold part is the build version.

  1. Make sure to have nothing else plugged into the router but the one network cable you’ve got plugged into your computer and the routers Ethernet 1 port.
  2. Wipe the device’s settings; go to Troubleshooting then the Diagnostics tab, then it’s under the “Factory reset” link, “Reset”, or hold the reset pin for 30 seconds, then release and you should see all the network port lights, light up.

Once the device is back up follow these steps;

  1. Tick that you’ve read and accepted the License Terms.
  2. Also tick “I want to skip Setup and configure my router manually”, click next, wait ~20 seconds while it figures out you have no internet, then click login.
  3. Login (default password is admin).
  4. Go to the Connectivity page, under “Firmware Update”
  5. Click on Choose File under the “Manual” heading.
  6. Select the old stock Linksys firmware image, FW_EA67001.1.40.166281prod.img
  7. Click Start and Yes.
  8. Once the device finishes its “upgrade” (at least 3 mins), log back in and upload the new AT firmware.
  9. Wait about 5 mins, then go to http://192.168.1.1/, if nothing loads, take the power out and plug it back in (reboot it), wait 5 mins, try the above link, wait a few seconds and the AT web UI should load.

If it doesn’t, wait another 5 mins, if still nothing then abort, reset it (unplug power from router, push the reset pin, plug power back in, hold reset pin for 45 seconds, then let go, wait 5 mins and the stock firmware should be back), then start again from step 1.

If you end up back on the stock Linksys firmware, start again and redo all the steps and check what IPs are assigned on your computer while the upgrades are happening (see below).

  1. Login, the default username/password is admin/admin.
  2. Finally “Erase all data in NVRAM memory (thorough)” in Administration > Configuration under “Restore Default Configuration”.

This is very important, if you skip erasing the NVRAM the new firmware won’t hold.

  1. Click OK to the confirmation, and it’ll reboot. (~2mins)
  2. Login, go to Administration -> Scripts and paste in the 3 lines below on both the Init and Shutdown tabs, and click Save. This helps keep your router stable. (more info in the comments)
for line in $(nvram show | grep =$); do var=${line%*=}; nvram unset $var;
done
nvram commit
  1. Finally, change the default password.
  2. You’re done!

The quick guide (for advanced users)

  1. From the official Linksys firmware make sure you’re running on build 166281.
  2. Wipe the device’s settings.
  3. After reboot, “upgrade” to the official firmware, build 166281.
  4. Upgrade to AdvancedTomato firmware.
  5. “Erase all data in NVRAM memory (thorough)” in Administration > Configuration.
  6. Add the 3 lines from the link below to both Init and Shutdown tabs in
    Administration > Scripts
for line in $(nvram show | grep =$); do var=${line%*=}; nvram unset $var;
done
nvram commit

Troubleshooting

  • Read the comments for help if your WiFi goes down after a few days.
  • If after flashing AT and you reboot the router and end up back on the official Linksys firmware, try the steps again, but flash the official firmware twice, not just once, then flash AT and erase the NVRAM.

Also check out chanz’s comment as he talks about it, as well as other comments.

Old firmware mirror

A mirror of the 166281 firmware has been hosted on my server in case Linksys takes down the link one day.

30/30/30 reset?

According to jago75, the 30/30/30 reset has no effect on ARM-based routers like the EA6700.

Why the double firmware install?

The steps for installing the Tomato firmware onto the EA6700 router are a little different than that of normal routers. It has 2 locations where it stores firmware, and if you try to install AdvancedTomato as per normal, it will just reboot back to the stock Linksys firmware.

This is why we first “upgrade” to the stock firmware (into the first location), then again with AdvancedTomato, into the second location, which is what it runs from by default. (at least this is my understanding)

Disbale all LED lights (except the Linksys logo)

In the Administration > Scripts page, put the following into the Init tab, save, and reboot.

sleep 10
et robowr 0x0 0x18 0x0
et robowr 0x0 0x1a 0x0

Some acronyms

AT = AdvancedTomato
AIO = All In One (has everything)
VPN = A cut-down version of the firmware with specific VPN support
OFW = Official Firmware, e.g. what originally come with the device
CFW = Custom Firmware, e.g. what we’re putting on the router (Tomato, DD-WRT, OpenWrt etc)
NIC = Network Interface Controller (the things where you plug the network cables into)

Disclaimer

I am by no means an expert in flashing firmware, only done it a few times, first a Netgear router (DD-WRT), then a Linksys (DD-WRT), and now this Linksys router (AdvancedTomato), just thought I’d share this as I couldn’t find anything online on this specific router and Tomato based firmware, and didn’t have much success with my initial attempts.

Alternative name

Cisco Linksys Smart Wi-Fi Router AC 1750 HD Video Pro

Feel free to leave any feedback in the comments.