How to Install OpenWrt on Linksys WHW01 [GUIDE]

I found many users struggling to find the right guide to installing OpenWrt on Velop WHW01 Mesh System. Here is a brief install guide;

WARNING: DO THIS AT YOUR OWN RISK!

As this is not a stable version but a snapshot (nightly), It might not be as stable but it should work.

Tested with openwrt
build version
SNAPSHOT (r22307-4bfbecbd9a)

and flashed using Linksys web UI
firmware version
1.1.13.202617

  1. Go to this URL
    https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=ipq40xx%2Fgeneric&id=linksys_whw01

  2. Click on arrow icon with text "Customize installed packages and/or first boot script" to expand

  3. In the Installed Packages section add " luci" this will add WebGUI for you to manage
    your router. Note: you must add a single space to indicate that it is a new package
    as shown in the image below

  1. then scroll down and click on the REQUEST BUILD Button

  2. Build process will start and might take a minute or a few seconds, you will see a Build successful message if you scroll up a little on that site.

  3. Scroll down and you should see FACTORY Button, this should download the image you will use to flash your router

  4. Follow the second method stated in the link below called
    Alternative method: Using a specific link
    https://www.linksys.com/support-article?articleNum=274497

  5. When it is done flashing, it should display the OK message as stated in the above article and you can connect to your router openwrt using 192.168.1.1

Note: Make sure no other device (i.e some other router in the network) is using this IP or change this IP after logging in to avoid IP conflicts. If you are unable to access the GUI due to conflict, try setting a static IP then log in again.

Happy Flashing :slight_smile:

1 Like

There is a devicepage where installation instructions can be found: https://openwrt.org/toh/linksys/whw01_v1

1 Like

You are right, but the method is too complicated and not everyone wants to open their device and connect it using serial, besides, the firmware link given is also broken and I was unable to find an option to edit anything on the wiki.

Done, download links updated.

1 Like

NOTE: This guide only installs openwrt on one partition, as Linksys whw01 is a dual partition device firmware, if you wish to install it on both partitions you can reflash the image when openwrt boots up from the luci web interface. This will install openwrt on both partitions but you will have to configure both partitions individually and the settings of one partition will stay the same unless you change them explicitly. In simple words, changes done to one partition stay on only one partition and do not reflect on the second partition.

NOTE (2): If you wish to see which boot partition is currently active or want to switch to another partition for some reason, you can use the command below using ssh.

Shows currently active boot partition:

/usr/sbin/fw_printenv -n boot_part

The below command switches the partition to the given number, In this case, I used 1 to switch boot to partition 1, you can do the same with others by replacing 1 with 2. Do note that you will have to reboot either manually or using the reboot command for the actual switching to happen after executing the command.

Switch the boot partition to the given number after reboot:

/usr/sbin/fw_setenv boot_part 1

The firmware selector link is returning an error with or without the "luci" addition, it looks like a signature failure under STDERR.

Error: Impossible package selection
>STDERR
>STDOUT

Not sure what to do about this - anyone?

1 Like

It's just a missing package librairy. Nothing serious, it will be fixed in a couple of days.

EDIT
It's a generic issue, other targets are impacted.

EDIT2 : I was able to build for mt7621. The package is available. It will be to others targets soon.

2 Likes

Upon looking into it, it seems the package mtd is causing issues, one of its dependencies, libubox20230523 is not found and the next candidate for installation is incompatible with the architecture.

Either raise an issue on GitHub repo and wait till it is fixed, or maybe use an older build

You can use the below build meanwhile if you wish (includes factory and sys upgrade image)
openwrt-1da4a00e173a-ipq40xx-generic-linksys_whw01-squashfs

Collected errors:
 * pkg_hash_check_unresolved: cannot find dependency libubox20230523 for mtd
 * pkg_hash_fetch_best_installation_candidate: Packages for mtd found, but incompatible with the architectures configured
 * opkg_install_cmd: Cannot install package mtd.
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for mtd:
 * 	libubox20230523
 * opkg_install_cmd: Cannot install package mtd.

mtd Description:
This package contains an utility useful to upgrade from other firmware or\ older OpenWrt releases.

2 Likes

The issue has been fixed, now you can build successfully.

1 Like

I can see we have 23.05.0-rc1 firmware for this whw01. Do you recommend it?

A few days ago, only the snapshot was available and so we had no choice but to use snapshots which are very early stage (latest / in development) build and can change many times in a day.

Now, it seems that rc (release candidate) has also become available, Release candidate builds are as the name implies candidates for the stable release, they will soon be made available as stable releases for the production/ family environment if no major bugs are found.

Coming to your question, I have not tested the release candidate version myself but it should work fine, you can try if you wish or wait more until it becomes a stable release, but if you are thinking of installing a snapshot then you can go with release candidate as it is more mature compared to snapshot. In a way, you could say that the release candidate is similar to the beta version and the snapshot is similar to the alpha version.

SNAPSHOT (Before) -> Release Candidate (Currently) -> Stable Release (Soon)

Do tell me how it goes if you decide to go with it. :slightly_smiling_face:

Here is some more info to read if you wish:

https://openwrt.org/releases/snapshot

https://openwrt.org/releases/start

2 Likes

I cannot build against 23.05.0-rc1 build

Signature check failed.
Remove wrong Signature file.
Collected errors:

  • pkg_hash_check_unresolved: cannot find dependency libubox20220927 for mtd
  • pkg_hash_fetch_best_installation_candidate: Packages for mtd found, but incompatible with the architectures configured
  • opkg_install_cmd: Cannot install package mtd.
  • satisfy_dependencies_for: Cannot satisfy the following dependencies for mtd:
  • libubox20220927
  • opkg_install_cmd: Cannot install package mtd.
    make[2]: *** [Makefile:186: package_install] Error 255
    make[1]: *** [Makefile:151: _call_manifest] Error 2
    make: *** [Makefile:271: manifest] Error 2

does it have luci built in? GUI package?

luci is only available in the stable release. The Second Release Candidate (rc2) is out now and I am able to build it successfully using luci, you can try that.

1 Like

Mine is Linksys WHW03 V1 but official release is for V2 ? I don't think flashing V2 on V1 would be a good idea?

EDIT: There are some hardware differences, so I would advise you against it.

Try checking the hardware differences in both, if there are no hardware differences then it should work.
Note: DO IT AT YOUR OWN RISK!!

1 Like

@dlinkETA3 Builds for Linksys WHW03 V2 + V1 - #345 by cd-slash

I was unable to flash OpenWrt using the installation instructions.

run flashimg

Returns the error:

NAND write: device 1 offset 0x0, size 0xa80100
Attempt to write to non page aligned data
NAND write to offset 0 failed -22
 0 bytes written: ERROR

This is because the file size of the OpenWrt image (and $filesize in u-boot env) is not aligned to the page size:

$ wc -c openwrt-ipq40xx-generic-linksys_whw01-squashfs-factory.bin
11010304 openwrt-ipq40xx-generic-linksys_whw01-squashfs-factory.bin

The NAND page size is 2KiB:

NAND:  spi_nand: spi_nand_flash_probe SF NAND ID 0:ef:ab:21
SF: Detected W25M02GV with page size 2 KiB, total 256 MiB

To be page aligned, you need to write 0xa80800 bytes (5377 pages) instead of 0xa80100 (5376.125). The flash area is actually 0x5000000 much larger than the image you write, so there is no adverse effect.

The actual write command(s) should therefore be:

nand write $loadaddr $prikern 0xa80800
nand write $loadaddr $altkern 0xa80800

Once you correct the $filesize to write, flashing proceeds as expected.

The hardware looks like the EA8300, why aren't the installation procedure the same ?

Note that the support article is no longer at that link. I found this support article that has similar instructions. https://www.linksys.com/support-article?articleNum=47547#Link .

Thanks for the instructions, @fockoemfirmwares. Worked perfectly to flash OpenWrt SNAPSHOT r24755-f547fc9d57 / LuCI Master git-23.357.52396-5355b7b , except for the correction I mentioned.

Now to follow your instructions to flash that second partition...

1 Like