Save anything you need internet for before you lose it, if this is the router you use for the internet.

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.

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.

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.

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;

Tick that you’ve read and accepted the License Terms.

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.

Once the device finishes its “upgrade” (at least 3 mins), log back in and upload the new AT firmware.

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).

Add the 3 lines from the link below to both Init and Shutdown tabs inAdministration > 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.

Nice guide. I have the EA6700 and managed to boot in to advancedtomato (AT) a couple of weeks ago. I did not managed with the procedure right away. It took a couple of retries before AT was booting.

Yesterday I upgraded to the 132 version and tried to get virtual wireless interfaces which use a VPN account to connect to internet. I did not succeed… but that is another problem for another day.

In the process I managed to get AT to lose one of the wireless interfaces (not the virtual one). Rebooting did not help. As a last attempt I did a hard reset. This of course flashed back the Linksys stock firmware. I have now tried to flash AT 6-7 times but fail every time.

After this the router reboots and then i wait at least 5 minutes. Nothing happens and I eventually power cycle the router. The router never boot up normally efter this, neither AT or Linksys. I have to do a hard reset to get back to Linksys fw.

So, I need some advice. First thing I want to test is to use an older Linksys firmware to test with, but I can not find any. If that does not work I think I am out of ideas…

Any ideas or tips would be welcome… I really hate Linksys fw which is very limited.

I actually got it working again… Unfortunately I don’t know what made it work

I have also figured out what was making my router setting to drop the wireless interface. It was the famous 50% nvram bug. When adding the certificate for the vpn-client setting nvram used more then 50% of nvram.

To restore from this situation I erase all data in nvram instead of restoring default values. After that I can import a configuration and reboot again.

I am now struggling to get around this problem. I have read on some page you can point out the ca.crt file instead. I have stored it on /jffs/ but have not figured out how to get openssl (?) to read it from there.

I will eventually move on to a tomato forum and ask for help. But that is not as fun 😉 I started to write on this blog since this is the place where I found out how to flash my router.

Not 100% on this, but pretty sure all you need to do is select the Linksys firmware image (that you downloaded from Linksys) from in AT in the Upgrade menu, select “After flashing, erase all data in NVRAM memory”, then click the Upgrade button and you should end up back on stock firmware.

I am having the same problem with my EA6700. After some time 2.4Ghz is not broadcasted and shown in options. Only see 5Ghz network but it doesn’t seem to be broadcasted as I don’t see it in my phone. I cleared NVRAM after install and I know it will bring back my wifi networks but that means I will have to manually set everything back from the start as restoring settings will bring wifi issue back.
Is there any other solution?

Also, try flashing the AT firmware once more with the same AT image once you’ve got AT on it. That should make it stick.
And did you try “Erase all data in NVRAM memory (thorough)” in Administration > Configuration.” once you’ve got AT flashed? It might fix your DHCP etc issues.

I also have the lost 2.4. If I do nvram erase it will come back temporarily, until i reboot it and then, eth1 becomes 5GHz. I am not hitting 32k limit either (I tried to delete nvram down to the limit but the problem persisted)

The WL interfaces actually show up when I login via SSH. However, the SSID isn’t actually available and cannot be seen on the web admin.

I find that the 2.4G issue was related to the 32k bug issue. If I kept nvram usage belog 32KB, it can reboot without losing WiFi. However I have another issue. If I reboot it a couple of times it will automatically go back to stock. It happens even if I flash it 2 or 3 times. I switch off the router at night and the same issue is found if I use the shutdown function or directly power off.

Hmm, no don’t have the reboot issue, though I never shutdown or turn off my router, except for maybe once when there was a powercut and the UPS died. Think once it did go back to stock though, when I was messing with settings/restores, but since then it reboots fine, and always stays on Advanced Tomato. Check that you’ve done the erase all the NVRAM option after putting AT on it, this may help. (though reading your previous comment, which was stuck in spam for some reason, it seems you have already done this, so not sure what else you could try).

If you do find the solution please do leave a comment here.

edit:
Just thinking, did you try flashing the stock firmware, then AT? Like when you shut down the router and turn it back on, and it’s back to stock, don’t go straight to AT, first flash the stock firmware even though you’re already on stock, then flash AT.

Though I’m thinking it shouldn’t matter whether you flash AT twice or stock + AT, but worth a try.

Like some other ppl – I am also no longer able to flash any AT to ea6700. I’ve tried even older OFW – FW_EA6700_1.1.40.166281_prod (or current FW_EA6700_1.1.40.176451_prod), also older AT tomato-EA6700-AT-ARM-3.1-132-AIO-64K (or latest tomato-EA6700-AT-ARM-3.3-138-AIO-64K). It looks to me, like LS did some changes – 2nd flash with AT it always start respond to ping, but then it stops and no matter whether 1m or 5 or 25m of waiting – it never goes up. It doesn’t react on reset button – only unplug of power… but it always returns OFW back.
How it start:
Yes, I was affected by NVRAM issue. I upgraded from mentioned older AT to latest and run it for weeks. Afterwards i performed unplug power & Wifi got mad (interfaces had wrong binding of MAC & didn’t work at all). So I performed one of the reset – (AFAIR not throughout – but not sure now). This returned OFW back & since then I am without AT :-/

WOW – I am one from many ppl who experienced an issue which prevents me from flashing AT. So eventually works for me – but I am not sure for how long (survived reboot/poweroff). I read a tons of topics on various forums – the majority ppl didn’t believe those who complain.
Symptoms are pretty tricky – inability to flash , or sometimes loosing AT flash after reboot/power-off the EA6700 (or EA6500v2).
The trick which worked for me eventually is:
1. upgrade to ofw
2. upgrade to ofw
3. upgrade to ofw
4. upgrade to tomato.
At the beginning indeed set everything to default 192.168.1.1 (also tried with my own address, but also only with the latest ofw {see below}).

I didn’t succeed with latest ofw – FW_EA6700_1.1.40.176451_prod.img at all – I did it ~10times multiply 2 flashes as described in article. Afterwards I tried exactly the same with previous ofw – FW_EA6700_1.1.40.166281_prod.img – which worked. So 3 times in a row with ofw and then AT – tomato-EA6700-AT-ARM-3.4-138-AIO-64K.trx.img – like a charm!

for some reason the nvram variable partialboots=x is not reset with successfull boot, and the default maxpartialboots is set to 3 so after 3 boots it falls back to stock no matter what you do.

to solve this..

make sure that you reset the partialboots value to 1 every boot when it reaches the end of configuration ( last item in init.d) do a nvram set partialboots=1, do not forget nvram commit after that.. to make it stick.

a bit lost in the code.. as it doesnt have an init.. inittab, rc.d or init.d…

but you can always type the command in the administration page/command…

Hello all
+ One problem with the latest firmware EA6700-AT-ARM-3.4-138-AIO-64K.trx after upgrade, after the upgrade my EA6700 is lost 2.4G Range, and unconnected pppoe connection – writes “connecting” or “renewing” in status connection and even get ip address for the passage of the authorization

I had the first problem too (2.4G) which can be resolved by cleaning nvram until it uses less than 32k.
I didn’t use PPPoE so I cannot help on this part. However, it is likely the same problem.

What I did was quite complex. You can adapt to your needs.
1. Login via ethernet, make all the necessary changes
2. Before any reboot, make a nvram dump
3. Download it on your computer and clean up unnecessary settings
4. Erase nvram and load the content of that text file into Tomato (I did it with the help of a small shell script)

(The nvram includes some sensitive data like router password, SSH hostkeys and a couple of other things, so don’t share it on the net)

I have tried anything written above, the correct steps and when that not worked, the steps of Chanz.
But it’s not working for me, it’s still booting in Linksys mode every time.
I used what Chanz said, FW_EA6700_1.1.40.166281_prod.img and EA6700-AT-ARM-3.4-138-AIO-64K.trx.img
Any other suggestion?

I just started playing with AdvancedTomato, and I too have a Linksys EA6500v2. Today, I just flashed it to AT, and I spent WHOLE DAY screwing with it. I flashed it on one computer, then I moved the router to my cable modem location. Then, I tried to use it and wouldn’t work. So, I read what all you wonderful people have shared (like Chanz and others below), and it’s just damned frustrating. It wouldn’t give me DHCP from the router, then I rebooted and it went off-line. Then, trying to get it back on line was (like impossible). Then, I realized I couldn’t go to 192.168.1.1 (forever tried that with many reboots), but realized it went back to stock firmware and had some 10.x.x.x address.

Okay, I’m not sure that this router is best for flashing with AT. Right? Could anyone suggest a fair-priced router that has good specs (more internals) versus wireless. I might just use my current one for wireless needs and find another for my central router. I love the hardware specs of the EA6500, but I don’t want to screw with it returning to stock after ANY & ALL POWER RESETS. That’s just too hard to deal with.

Does it stay flashed forever if you get it flashed right? I mean … who creates a router that does stupid shit like this? We don’t live our lives just to become experts at flashing a router and wasting our lives dealing with it.

I moved up from an ASUS RT-N16, and I flashed it with Tomato Shibby and it was PERFECT. PERFECT. No issues ever. Seriously, no issues ever. So, can I get this EA6500v2 like that, or am I just dreaming and wishing for clear skies and pink rainbows.

Hey, yeah this routers hardware is amazing, and yes you can get to work rock solid with AT (latest version), mine can reboot just fine and still have AT on it, and ever since I added this bit of code https://cl.ly/38113Y0U4620 into both “Init” and “Shutdown” in the Administration/Scripts section my WiFi hasn’t disappeared on me. (Though I should note that I’ve turned off the 5GHz WiFi since it was causing interference with other wireless gear here, so don’t know if that helps too).

I’ve also recently turned on QoS, rate limited some IPs and tweaked my max upload limit so my internet doesn’t grind to a halt every time someone’s phone tries to backup some photos, which has been working perfectly too.

So the best advice I can give you is don’t give up, it’s possible. Read all the advice given here in the comments and try and re-try what’s suggested, I remember when I first tried to flash this router it was bit of a pain to get it to stick, so might just take a few tries before it works.

The good thing about this router is that it’s like nearly impossible to brick, so doesn’t matter if you mess up, reset it and start again.

Adriel:
Thank you for the words of encouragement. Yeah, it was a BITCH OF A DAY. I had been wanting to try and virtual TOMATO to a very old ShuttlePC. But Tomato is not x86. But, read about DD-WRT but didn’t seem to like the layout, then found AdvancedTomato and I was sold on it.

But, actually, I was surprised that it was pretty easy to get on the device. However, it was a “little unclear” above (or, at least on my router) that I didn’t know where to find the RETURN TO FACTORY RESET or something, because I wasn’t familiar with Linksys GUI. It’s hidden, and I had to take it back to a certain version. It would not upgrade but only backgrade (if that’s a word). So, I did my best on above, but I might make suggestions when I do it again. If the person wants to change the steps, if I find anything different.

But, yeah, it’s not as easy as it should be. Flashing on the Asus RT-N16 was very, very easy and instantly the new firmware stuck.

So, your replies make me happy. I can’t wait until weekend, and I’ll give it a shot. It just feels good to be gaining confidence in this area, because I sure know that it is marketable.

Hey, sorry me again, just noticed I was missing a critical last step in my beginners instructions, the erasing NVRAM. Did you run the “Erase all data in NVRAM memory (thorough)” option after you flashed AT?

Adriel,
First off, thanks for preparing this writeup. It really helped me understand the steps. I was so in love with my Asus RT-N16 and Tomato, but I heard (through grapevine) about AdvancedTomato; I looked at GUI and WOW — I got to have it on a router. Anyway …

No, I did not flash the NVRAM. I didn’t know too.

That was day before yesterday and whole day was frustrating monkeying with the EA6500v2. It should be easy, because it was with Asus RT-N16: very easy. One flashing and it has stayed with Tomato ever since. Even reboots and acts like NORMAL FIRMWEAR. That’s where I want to get with this AdvancedTomato.

Anyway, I’ll try that when I get my day off and re-walk through the steps. Just makes me happy to find people with same device, where I can have a “tiny bit of help” to get there.

Having a good router, is nice and very helpful. The normal firmware on Linksys really sucks. I’m dealing with fixed IPs like 10.x.x.x and everything in house had to be rebooted. Anyway, I can’t wait to get this AT (when I get time).

I know the feeling, when I got this router and found AT, there was NOTHING on the internet about getting AT on it, so was a bit doubtful I’d get it working, but from the small bits of info I found I managed to figure it out.

And yeah sorry about missing the NVRAM step, probably caused allot of headache for allot of people 🙁

But yeah, let me know what works for you and I’ll amend the steps as needed.

Also, when you’re on the Linksys firmware could you confirm my updated steps (step 4) are correct to reset the router?

Adriel:
I’ll even go through the trouble of giving screenshots where it is clear. It’s STUPID PLACE how Linksys put that reset button or “go back to earlier firmware” ability in (like) 2 or 3 screens down. Whoever designed Linksys, sure didn’t plan on someone wanting to do that. They should have had the command on an ADMIN page or something like that. So, when I walk through it, I will go slow and grab the exact steps for you. Give me weekend, then I’ll get it to you happily. Thanks.

I tried all three ofw which are listed in this forum. None of them did work. It says invalid firmware, it will not work with this router. I purchased router 2 days ago from amazon. Did they change something recently in firmware?

I was able to flash to my EA6700 the latest AT firmware. In benchmarking the 802.11ac 5ghz band though I found that I was only able to get a download speed of ~200mbps versus the stock OEM firmware where I would get 320mbps. Probably because the stock firmware can use hardware acceleration that isn’t available to AT or DD-WRT or other firmwares.

Just flashed Advanced Tomato 3.5-140 K26ARM USB AIO-64K. Network connection on my Dell E5440 with Intel Dual Band Wireless-AC7260 shows a maximum of 400 Mbps. An upload to the attached to USB3 HDD is performed at up to 15 MBps (notice capital B, e.g. 120 Mbps) rates.
I guess, like Robert B. mentioned, that AT, nor dd-wrt don’t know to work with beam forming. But this is a guess.

After some experiments I have found that for some country settings 5G works only in 802.11n specification, for other countries – 802.11a. Thus the speed in first case is limited to 400 Mbps in both directions, so effective one-way speed is about 200 Mbps. Accordingly, in the second case it is 866 Mbps and 433 Mbps.
At the same time, not all the countries settings give a stable connectivity. Sometime, in my case, routers web page is opening, smb and SSH – no. In some cases the WiFi won’t connect at all, even the network is being monitored by WiFi utilities.

Yeah WiFi here is rather delicate at the best of times.
I mostly use AT for it’s ease of use, nice UI, and bandwidth monitoring. I only have a 30/20 “fibre” connection so I don’t need anything amazing as far as WiFi goes.
Also I’ve read somewhere that the “USB 3” port is still kinda slow, no matter what you do. Could be wrong though.

In regard to USB3 – I didn’t test the it on the original FW. But, taking into account that actual technology tends to embed all kind of peripherals by USB3 bridge, I won’t be surprised to know that communication modules in the router are also bridged by USB3. Thus, the throughput may dramatically decrease. The only benefit from USB3 being it’s voltage to supply to sticks and disks.
This is just my opinion, and I am missing a lot.

In my humble opinion, none of the methods suggested in this blog post, or any of the comments below, are a true fix for 32K Nvram bug in the Linksys EA6700 router. They are all temporary fixes at best and will most likely lead to a loss of all DD-WRT or Tomato firmware settings and a reversion back to the router’s stock firmware at some point. The only real way to fix the 32K Nvram limitation issue permanently and avoid future issues is to flash the router’s CFE. If you are interested you can read the two following forum threads, which will explain everything:

To just update, When in the Vlan page, when I try and tick the Wan Port Tagged checkbox, the router reboots but then fails to provide an IP and i cannot get back into the router, even after a restart. I think that the WAN Vlan ID needs to be tagged.

Yeah I’ve never had to deal with such high a high VLAN ID, and the last time I had to use a VLAN with PPPoE was with DD-WRT. Also may be worth mentioning that some ISP can turn off VLAN tagging, might be worth a try.

Also I would try Google your issue something like “VLAN tagging higher than VLAN ID 15 in Tomato firmware”, since AdvanedTomato is just a skin on top of the Tomato firmware, so you should find a solution that way.

Also I would turn on logging (Status -> Logs), and see if you get any useful details about why it might not be connecting (When you can get access to the router after a reboot)

Lucky! From what I could find out there was no software way to turn off the Linksys logo.
Using the method described in this post, just removing the lines from the scripts tab and a reboot will bring back the lights.
But no idea how you’d do it in DD-WRT, more of a question for the DD-WRT forums TBH.

Thanks, mate. Anyway it is not very important, I am just wondering. BTW, after some flashing with different mods, it is now lighted up on Kong’s mod. 🙂
Now, back to the AT. I was unable to flash it on my EA6700. At the moment of downloading Advanced Tomato yesterday I had a router flashed with dd-wrt 30796 over a modified CFE (in order to avoid NVRAM overflow). Due to a modded CFE I guess I don’t have the ability for a simple revert to stock FW. I’ve tried to flash back the factory official FW, but couldn’t make work it any more. So, I tried to flash tomato via TFTP on the early boot phase. Still no luck. The user interface web page would not show.
Finally I was able to flash one of Kong’s mod via TFTP. Now my router is working, but I’ve missed somehow the chance to test AT.
So, I can upload a FW to my router in these ways: using browser in the CFE phase (there is a possibility to upload a image but not sure if this works in my case); via TFTP on the early boot phase; via web page on a fully booted dd-wrt; via ssh/telnet.
What would you suggest to do in order to load Advanced Tomato in my case?

Thanks, mate. Anyway it is not very important, I am just wondering. BTW, after some flashing with different mods, it is now lit up on Kong’s mod. 🙂
(I have written a lot previously in regard to flash AT, but for sure I have to read the comments before.)
Update: after a reboot it is OFF again. 😀

Well, just tried to flash the router by using the command mtd write. Something happened, as the router restarted and booted something… unknown. The web interface from the start opened an authentication dialogue that states that on the other side resides an instances of dd-wrt. However, none of known by me set of username and password did suit the authentication. So the device remained locked. SSH not available, telnet asks for username and password, which again seem to be out of my competence.
So, back to the Kong’s mod…

Did you try reset it using the reset pin hole? Sometimes after you upgrade/change firmware it’ll change the login password. Either way, keep at it. This particular model router is very robust, very hard to brick.

Adriel, I didn’t try the reset button. I think this won’t give anything since I have an adapted CFE from an ASUS (merlyn? – I don’t remember yet). So if the defaults are loaded, then these will be for ASUS. That’s what I think.
But, thanks again for your comments. At least they are encouraging me to go on trying. 🙂
For the moment I’m stuck on dd-wrt as there are some problems with USB3.0 port – it doesn’t work as expected with USB HDD, folders and files are not visible, nor accessible. Resolving this issue is my goal for now.
Cheers, mate!

Adriel, do you know by any chance if this guide could be used for the firmware change of EA6900 (replacing with the relevant firmware files, of course)? Unfortunately, I have not found such a decent guide like this one for the aforementioned device but I would really like to ditch the stock firmware.

So this will be buried deep in the comments, but a couple things.
1.) This router physically has 60K NVRam, software just limits it to 32K
2.) The revert can happen at anytime, and that workaround script sometimes even then doesn’t work, with the partialboot variable

If you don’t mind changing the CFE on the router, you can permanently obtain 60K and Tomato/CFW that works great. I’ve done it on two devices and had them running for years.