How to hard-reset Linksys EA7300 three times? (to switch boot partition)

I was trying to install OpenWrt for the first time but it looks like there is an issue with the snapshot I downloaded.

Now I am trying to revert to the OEM firmware. The instructions for this router suggest that I should hard-reset it three times to boot from the stock firmware. However, I'm not able to do that and I keep booting to OpenWrt.

Each reset cycle looks like this:

  1. The Linksys LED starts blinking very rapidly
  2. The LED turns off briefly
  3. The LED turns back on and blinks slowly
  4. The LED turns off briefly
  5. The LED turns back on and blinks like a normal boot

At which step should I try to press and hold the reset button again?

Thank you.

Edit 1:
Are there any other methods for reverting to the stock firmware in Linksys routers with two partitions?

Edit 2:
I tried using setenv but mtd doesn't allow me to write 2 as the boot partition.
I also used the power button to switch on and off three times. It seems to do something different as it starts blinking rapidly the last time it's turned on and boots. However, instead of booting into the second partition, it boots into the first one again.

Any luck with this? I cannot get mine to boot back to 2nd partition either. Also same problem trying to use setenv.

Nope. I gave up.

Both of you are using the V1 of the EA7300 ?

Yes, I have the V1.

Hard-reset the router three times to force it to boot from 'B.' This is where the stock firmware resides. To remove any traces of OpenWrt from your router simply flash the OEM image at this point.

May be its mean what after three times reset, we need to flash OEM image? In other words, if LUCI does not start, then we will not be able to return the stock firmware?? :frowning_face: :open_mouth:

It would be very nice, if someone from the developers clarified this point. And how can we avoid problems with opkg if there is only a snapshot and we don't have final builds for EA7300?

I would like to install OpenWRT on my 7300 to use a torrent downloader. But over the last month I have seen on this community several similar problems with opkg update, and if I cant revert to OEM in that case, it is mean what I will have just almost brick, instead of my router :pensive: :sleepy: :woozy_face:.

And I have one more question about EA7300 with potentially failed OpenWRT... How the

# opkg update
# opkg install opkg
# opkg update
# opkg install luci

can work if I cant apply any configuration without LUCI, and respectively, I do not have an Internet connection? Or it is possible to enter basic settings by SSH?
Thanks!

All config files are in /etc/config directory.
If you have SSH access, you can just edit them with a text editor. vi, nano, whatever is your choice. (At least vi is installed by default)

LuCI is just s GUI for managing those same config files.

The opkg download problems have already been fixed. And to my knowledge, the firmwares themselves were ok the whole time.

Ps.
The "three reset" or actually "three interrupted boots" is just a way to get the boot switched to the other partition, the one thought to contain a working firmware. It can be OEM or OpenWrt. Both OEM and OpenWrt always overwrite the other partition in sysupgrade, then switch booting to it and leave the current one as fallback.

1 Like

@hnyman many, many thanks for your answer!

I understand correctly that the:

Hard-reset the router three times

as it specified in the wiki page, does not mean performing a hard reset three times, but instead I need to turn off the router, and then turn it on and not letting it boot completely, turn it off and repeat it three times?

Yes. The explanation on your device's wiki page seem a bit misleading.

It is somewhat better explained in the main WRT190AC and related pages.
https://openwrt.org/toh/linksys/linksys_wrt1900ac#firmware_recovery
(end of recovery section).

There are dual partitions, A and B. And an "active" marker to indicate which is to be used.

In addition, there is a counter of boot attempts. The counter is increased early at the start of each boot process. And the the counter is reset to 0 at the end of a successful boot. If the counter reaches 3, the boot is considered permant-failure and the boot partition marker is swithed to the other (A-->B or B-->A).

Thus, when you interrupt the boot process three times, the failure counter gets to three, and the router thinks that the current firmware is faulty and falls back to to the "known good" in the other partition.

Note that there is no guarantee that the other partition works. It has the contents and settings that were there, when the boot was switched last time. That boot marker switch (A-->B or B-->A) happens at every sysupgrade, so likely you just have the previously used firmware there (either OEM or OpenWrt).

You might also try "luci-app-advanced-reboot" app that manages the boot marker directly, if you get opkg to work and LuCI installed.

Or, if you have SSH access, you can naturally sysupgrade to the OEM firmware. Just download the OEM firmware image to /tmp in router, and use "sysupgrade -F -n /tmp/imagefilename" to flash the firmware. (and you can use scp to transfer files from PC if the router itself does not have internet access for some reason. As you are writing here, you have at least some internet access from some device...

2 Likes

Thank you again!!! I think its very important information for all who have syslink routers(as i see on this forum there are a lot of them)...

One more piece of advice:
you shouldn't interrupt the boot too early. The break should happen when the kernel is already up and the boot process scripts are being run. The WRT1900AC series advice is

Turn power back on and Power LED will light.

  1. As soon as all LEDs turn off (~2s), power off router with power switch

But I am not sure how that works in you device. Probably anything after that rapid blinking during boot. (as the very rapid blinking indicates waiting for failsafe mode entrance, which waiting happens early in the later boot phase)

1 Like

Thank you for the thorough explanation. I had a failed attempt at uploading the OEM firmware before, but the image was larger than the available space on the device.

I had also tried to follow the WRT instructions as I stated in my EDIT 2, but that didn't work either. Let's see if @taravasya can boot to his/her second partition with those instructions.

In fact, I turned out to be the most cunning :upside_down_face:, because everything I asked, I asked BEFORE trying to reflash the router. Today i did it, and at this moment, I want to state the fact that the router has been successfully reflashed, opkg has been updated and Luci is installed.
The only problem I ran into was that I had to configure the initial connection to the ISP via ssh. But after this, I successfully update opkg an install Luci.

BTW... After all I faced the fact that installing Freifunk Generic Theme completely destroys LUCI functionality with this output to browser page:

I think it is necessary to pass this information to the developers of this theme....
/usr/lib/lua/luci/template.lua:97: Failed to execute template 'view'.
A runtime error occurred: /usr/lib/lua/luci/template.lua:97: Failed to execute template 'header'.
A runtime error occurred: /usr/lib/lua/luci/template.lua:97: Failed to execute template 'themes/freifunk-generic/header'.
A runtime error occurred: [string "/usr/lib/lua/luci/view/themes/freifunk-gene..."]:20: attempt to call field 'node_childs' (a nil value)
stack traceback:
	[string "/usr/lib/lua/luci/view/themes/freifunk-gene..."]:20: in main chunk
stack traceback:
	[C]: in function 'error'
	/usr/lib/lua/luci/template.lua:97: in function 'render'
	/usr/lib/lua/luci/dispatcher.lua:756: in function 'include'
	[string "/usr/lib/lua/luci/view/header.htm"]:3: in main chunk
stack traceback:
	[C]: in function 'error'
	/usr/lib/lua/luci/template.lua:97: in function 'render'
	/usr/lib/lua/luci/dispatcher.lua:756: in function 'include'
	[string "/usr/lib/lua/luci/view/view.htm"]:1: in main chunk
stack traceback:
	[C]: in function 'error'
	/usr/lib/lua/luci/template.lua:97: in function </usr/lib/lua/luci/template.lua:85>
	(tail call): ?
	/usr/lib/lua/luci/dispatcher.lua:954: in function 'dispatch'
	/usr/lib/lua/luci/dispatcher.lua:479: in function </usr/lib/lua/luci/dispatcher.lua:478>

Perhaps in this case, you should try to flash OpenWRT again (new snapshot). At the moment, as @hnyman said above, and as I have personally verified,

opkg udate
opkg install luci

are functioning normally.
This is a possible option because the OpenWRT image size is significantly smaller than the OEM image size.

Anyway.... i`m unable attach usb to my router.
LinkSys EA7300 and USB dock station with JMicron chip. Unable to attach usb dev - Installing and Using OpenWrt - OpenWrt Forum
And as I was want to use it for torrent downloads, without usb all this gonna be unnecessary. So, may be I will be need to revert to OEM firmware..... for now I'll wait a little bit, maybe someone will tell me something

So.... all my experiments ended with totally fail.... I have overcome a lot of problems on the way to a working mounted HDD, but when I checked its performance, I realized that it is completely unusable option. Therefore, I decided to go back to the OEM firmware.

Well.... Forget about instruction from openwrt wiki, and do like me!
just unplug power adapter.

  1. Plug it again. "Linksys led" start to blinking rhythmically and then it will go out its time to unplug power adapter again, before it start blinking again.

  2. Plug it again. "Linksys led" start to blinking rhythmically and then it will go out its time to unplug power adapter again, before it start blinking again.

  3. Plug it again. "Linksys led" start to blinking rhythmically and then it will go out its time to unplug power adapter again, before it start blinking again.

:slightly_smiling_face: :upside_down_face: :slightly_smiling_face:

Plug power adapter last time, but at this time don't unplug power adapter, and now OEM firmware will boot (in my case even with my settings which was it right before I flash OpenWRT).
And finally, for both boot partitions fill with OEM firmware, just select manual flash in settings now.
BWT, don't use last firmware, because it have a bug, and you unable to login with local router admin account. I use: FW_EA7300_1.0.10.192945_prod Its work good.

3 Likes

That worked perfectly. Thank you all for sharing this!

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.