Hi All,
I realize this has been covered in multiple threads but in none of them can I find what I'm looking for.
I picked up a used EA7500 v2 and attempted to flash openwrt-23.05.2-ramips-mt7621-linksys_ea7500-v2-squashfs-factory.bin from the Linksys factory firmware.
Now let me just start by saying that this factory firmware is just about the most annoying factory firmware I have EVER had to deal with. I've flashed dozens of Broadcom-based Linksys EA series with dd-wrt and am well versed in the dual partition scheme, but all of those routers seem to have a CFE that allows for TFTP updates - and it is very easy to work around the factory's attempts to block you from flashing alternative router firmware.
But the EA7500 does not have CFE and nowhere could I find TFTP instructions for it so I had to use the factory webflash. So I started out doing that and here is what I ran into.
At first I powered up the router and attempted to login with the password "admin" it failed likely because the prior owner had set a password.
I held in reset button for 10 seconds with paperclip while router was powered up and it reset itself. So far so good.
Router rebooted it came up with factory firmware but immediately put me into the factory "Linksys Smart WiFI Setup" setup wizard and would not let me go out of it. Tried power-cycling and that did not work, same issue. Looked at Linksys support about manual configuration and they said you had to have the WAN port plugged in to get to the manual configuration so I did that.
I plugged wan port in to an ethernet network that was privately numbered and would hand out IPs via DHCP but blocks stuff with an unknown MAC from accessing the internet. This is standard practice with EA routers to prevent them from flash-updating themselves with newer factory firmware. Pressed reset button again and router rebooted.
The factory firmware absolutely did not like this at all.
PC obtained some weird private number from the router. However I used http://myrouter.local on PC webinterface per Linksys instructions and dynamic ip assignment on my PC and got to a login page that allowed me to select manual configuration, selected that.
Note that I had to wait at least 5 minutes in between each screen because the router was constantly attempting to login to the Internet
Finally was able to login with default password admin
Router took me to configuration page indicating firmware version 2.0.8.194281 was running. (this is the latest firmware from Linksys) Selected Connectivity and administration then attempted to update via webinterface.
Factory webinterface did permit updating to openwrt although it issued a warning. Router went through several reboot cycles it appeared to be flashing the firmware.
Surprisingly, factory interface did come back with firmware update completed successfully but then router was back at factory firmware. Power cycled still at factory firmware. Logged in and tried updating router from factory interface, router did not permit updating at all now, just issued an error. Tried power cycling and router still did not permit updating. There error was update in progress.
I then started all over again with a paperclip reset at a running state and ended up repeating the above about 6 times with different OpenWRT firmwares, several times. I even downloaded and flashed the Linksys factory firmware then attempted to follow with the OpenWRT firmware. All to no avail.
I read through the following threads:
[OpenWrt Wiki] Linksys EA7500 v2
OpenWrt installation on Linksys EA7500v2 - Installing and Using OpenWrt - OpenWrt Forum
Problem installing on Linksys EA7500v2 - Installing and Using OpenWrt - OpenWrt Forum
SSHD for Official Linksys EA7500v2 Firmware - Installing and Using OpenWrt - OpenWrt Forum
Much of the advice was useless as it applied to older Linksys firmwares with the versions not mentioned, or it boiled down to "just keep trying and you might get lucky" which I had already figured out.
There was a reference to:
which who knows might apply. I don't know.
Finally I guess I got lucky because on literally the last attempt before I was going to scrap the device - the 23.05.2 firmware took and the router booted OpenWRT.
I then immediately sshed into the router and ran
/usr/sbin/fw_printenv -n boot_part
and I got a 1 back. So OK I had successfully installed the firmware on to partition 1. But no way was I going to ever go back to that Linksys firmware hell so I wanted to immediately flash partition 2.
And this is where I ran into a problem I need some help on.
I first tried the advice here:
and
which boiled down to "just flash from the OpenWRT interface and it will be smart enough to know to put your firmware on partition 2." Well OK that seemed effing stupid but what the heck I'll try it. So I ran the updater from OpenWRT and rebooted. So far so good but the real test is booting off the now allegedly-flashed partition 2. So at the ssh prompt I ran
/usr/sbin/fw_setenv boot_part 2
and rebooted and now I am back to Linksys hell. Worse, I cannot even now do a factory flash from this firmware because I keep getting "update in progress" errors. Not that I even know where the heck the factory firmware is putting anything. Maybe partition 2 maybe partition 2 who knows.
I tried "troubleshooting, revert to previous firmware" in the Linksys interface and THAT DID NOT WORK. Obviously Linksys installed checks in their current firmware to prevent this from working if OpenWRT was on the alternative partition.
Finally I tried the process in this document:
power off power on power off power on etc. and the boot code was finally obligated to switch back to partition 1 and I got my OpenWRT interface back.
Interestingly, the exact same process is used with Chrysler vehicles to get them to print out their diagnostic codes on the console (off/on/off/on multiple times) Gee I wonder where Linksys copied that idea from?
Anyway, could someone PLEASE tell me HOW to flash partition 2 FROM THE COMMAND LINE?!?!?
DD-WRT makes this process incredibly simple. Telnet/SSH into the router command line, cd /tmp, wget firmware to there, then "write [firmware] linux" or "write [firmware] linux2] depending on what partition you want.
Come on OpenWRT people - the recommendation of "set variable to boot into linksys factory firmware and flash from there" is duff, people. Baloney. Rubbish. Idiocy.
The entire point of putting OpenWRT on a device is to get a usable command line, IMHO. That's where the real power is. There must be a way I can clear that Linksys trash firmware that has (at this point) wasted 2 hours of my life while the firmware attempts to contact Linksys's mothership before it lets you do anything, from the real power behind the throne, here, the Unix prompt.
You guys gonna let dd-wrt one-up you on this???