Linksys WRT1900acs power switch

According to the following documentation:

https://openwrt.org/toh/linksys/wrt1900acs

The following should work:

In my case it does not work.
Anyone of you could make it working?

It can be tricking finding the proper sequence.

  • switch off
  • switch on - all leds will light up, then go out. The second time the top port leds flash, immediately switch off.
  • repeat step 2 six to eight times to make sure the boot fail counter hits at least 3 to switch to alternate partition.

You are right!
I did it!
Now I have booted in the secondary partition, what is next?
This partition is not up-to-date anymore.
I have the following partitions:

root@OpenWrt:~# fdisk -l
Disk /dev/mtdblock0: 2 MiB, 2097152 bytes, 4096 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock1: 256 KiB, 262144 bytes, 512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock2: 256 KiB, 262144 bytes, 512 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock3: 1 MiB, 1048576 bytes, 2048 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock4: 40 MiB, 41943040 bytes, 81920 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock5: 34 MiB, 35651584 bytes, 69632 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock6: 40 MiB, 41943040 bytes, 81920 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock7: 34 MiB, 35651584 bytes, 69632 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock8: 38 MiB, 39845888 bytes, 77824 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mtdblock9: 6.51 MiB, 6815744 bytes, 13312 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/ubiblock0_0: 2.43 MiB, 2539520 bytes, 4960 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

I can’t tell you what is next without a little more context regarding what your intent is.

  • what is on the current partition and the alternate partition you were on before your original post? OEM or OpenWrt and version?
  • do you intend to install/upgrade OpenWrt for the first time from OEM, upgrade to a more current OpenWrt version, or return the router to the original OEM firmware from OpenWrt?

The Linksys WRT series partitioning works on a round robin scheme - from the current partition, flashing either OEM firmware or OpenWrt will flash the firmware to the alternate partition and then boot into the alternate partition.

I think the last was #1 that is more recent, and the current one is #2 that is old:

root@OpenWrt:~# ubus call luci.advanced_reboot obtain_device_info
{
	"current_partition": 2,
	"device_name": "Linksys WRT1900ACv2",
	"partitions": [
		{
			"state": "Alternative",
			"os": "OpenWrt 23.05.2 (Linux 5.15.137)",
			"number": 1
		},
		{
			"state": "Current",
			"os": "OpenWrt 19.07.3 (Linux 4.14.180)",
			"number": 2
		}
	],
	"rom_board_name": "linksys,cobra"
}

We are talking about OpenWRT not the OEM software.
I bought this router and I was using the OEM software for about six months and the I installed OpenWRT. This was in 2018 so I can't remember in what partition it was installed.
What about if I bring the current partition to 23.05 that is the last stable version? If I reboot in what partition does it start? I guess the alternate partition is broken due to a configuration issu, how can I fix it and use as Alternative partition?

Yes! It looks like you’re current partition is on OpenWrt 19.07.3.

I assume you needed to use the power switch method to get back to 19.07.3 when the flash to 23.05.3 went bad?

First, you should try to backup your config from the 19.07.3.
sysupgrade -l will list what will be what would be backed up. You should have at least etc/config/network/wireless/firewall/system. You will need this to reconfigure 23.05.4 from 19.07.3.

Then run sysupgrade -b backup-19.07.3.tar.gz to create the backup file. After the 19.07 versions, the Linksys WRT series changed from swconfig to DSA and the configuration changes are likely why 23.03 got borked when you flashed it.

Now you can sysupgrade to current 23.05.4:
sysupgrade -n -F https://downloads.openwrt.org/releases/23.05.4/targets/mvebu/cortexa9/openwrt-23.05.4-mvebu-cortexa9-linksys_wrt1900acs-squashfs-sysupgrade.bin
This will upgrade the alternate partition without upgrading your 19.07.3 config and force the upgrade. Just say yes to any warnings. If all goes well, you should get the GUI after the flash at 192.168.1.1

Not exactly. The flash to 23.05.03 was good and I used for several months. Then I changed something in the configuration and that partition went broken. I could not make it running anymore.
Now if I flash it again, does the old configuration get overwritten? If yes then it is ok, it will probably start running again. But if it keeps the old configuration I believe it won't start.

I have done it!
Thanks!

root@OpenWrt:~# ubus call luci.advanced_reboot obtain_device_info
{
	"current_partition": 1,
	"device_name": "Linksys WRT1900ACS",
	"partitions": [
		{
			"state": "Current",
			"os": "OpenWrt 23.05.4 (Linux 5.15.162)",
			"number": 1
		},
		{
			"state": "Alternative",
			"os": "OpenWrt 19.07.3 (Linux 4.14.180)",
			"number": 2
		}
	],
	"rom_board_name": "linksys,wrt1900acs"
}

i have wrt1900ac and wrt32x devices and need to power cycle to revert to other partition since i loaded one of the unupgradeable images on parttion 1.

if you are trying to sysupgrade from partition 2 to partition 1, i think that has been broken since buyilds after about june 2024.
there are other problems with sysupgrade on other boards also.- maybe this is contibuting.