Wavlink WL-WN536AX6 "Mighty LX-2" "AX6000 Dual-band Mesh Router

This topic is to share my experience attempting to get a FOSS version of OpenWrt running on this "wifi-6" device, and to solicit help and support as needed. I'm totally new to the OS and this forum. My plan is to edit this first post to summarize the thread as it grows, and as I learn what are the expectations of forum members for post topics.

Let's start with some product reference links:

When I received the router, WavLink customer support told me that the device wasn't compatible with OpenWrt (wrong) and that it was none of my business what was the internal hardware chipset (MT7986).

Running the iminfo command from a serial console in U-boot mode
yields ...


MT7986> iminfo

## Checking Image at 46000000 ...
   FIT image found
   FIT description: ARM64 OpenWrt FIT (Flattened Image Tree)
    Image 0 (kernel@1)
     Description:  ARM64 OpenWrt Linux-5.4.194
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x460000e8
     Data Size:    3515846 Bytes = 3.4 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x48080000
     Entry Point:  0x48080000
     Hash algo:    crc32
     Hash value:   6b9b3b87
     Hash algo:    sha1
     Hash value:   4b4264a0837d84415239f8bce3a9b1c682546856
    Image 1 (fdt@1)
     Description:  ARM64 OpenWrt mt7986a-ax6000-2500wan-spim-nand-rfb device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x4635a804
     Data Size:    24154 Bytes = 23.6 KiB
     Architecture: AArch64
     Hash algo:    crc32
     Hash value:   08841695
     Hash algo:    sha1
     Hash value:   b9f65b2d6853e032cccda37b3df26d957166bf05
    Default Configuration: 'config@1'
    Configuration 0 (config@1)
     Description:  OpenWrt
     Kernel:       kernel@1
     FDT:          fdt@1
## Checking hash(es) for FIT Image at 46000000 ...
   Hash(es) for Image 0 (kernel@1): crc32+ sha1+
   Hash(es) for Image 1 (fdt@1): crc32+ sha1+
MT7986>

So, the device is pretty definitely running some closed-source modified version of OpenWrt on a MediaTek 7986 chip.

Here is where my questions and requests for support begin...

  1. Shouldn't the OpenWrt license require WavLink to share the source code?
    • Is this actionable? How?
  2. What's the default user name for command line login?
    • It isn't 'admin'
    • It doesn't appear in the logs, not even when changing the password via GUI interface.
    • I tried peeking at the image's /etc/passwd, but performing ubifsmount returned errors for all of the volumes ('kernel', 'rootfs', 'rootfs_data', 'layout volume' - yes, with an embedded space)
UBIFS error (ubi0:1 pid 0): ubifs_read_node: bad node type (4 but expected 6)
UBIFS error (ubi0:1 pid 0): ubifs_read_node: bad node at LEB 0:0, LEB mapping status 1
Not a node, first 24 bytes:00000000: 68 73 71 73 6b 0d 00 00 da 3f 17 66 00 00 04 00 68 00 00 00 04 00 12 00                          hsqsk....?.f....h.......
Error reading superblock on volume 'ubi0:rootfs' errno=-22!
  1. How can I modify the kernel boot command to perform init=/bin/sh?
  1. It does, email them
  2. Email them again
  3. You could try to modify the bootcmd param in U-Boot

@frollic: I did everything that you suggested.

  1. & 2. I sent a polite email to the Wavlink technical support email address.

  2. All my modifications to environment variables failed. Performing printenv showed that neither bootcmd nor bootargs were defined by default. Here's what I did:

setenv bootcmd "init=/bin/sh"
saveenv

That booted normally, ie. no shell prompt at the TTL console

env delete bootcmd
setenv bootargs "init=/bin/sh"
saveenv

That boot hanged at the beginning, ie. "Starting kernel ..."

env delete bootargs
saveenv

EDIT: The setenv commands were tried both with and without the quotes

Anyone know how I can mount those ubi filesystems? ie. correct the reported errors or circumvent them?

Boot an Openwrt initramfs, try to mount it through there.

Boot an Openwrt initramfs, try to mount it through there.

That's way too cryptic a response for me. How would I go about doing that?

Find a device using the same SoC as your Wavlink, at https://firmware-selector.openwrt.org/, and DL the KERNEL image.

Boot it using the tftpboot + bootm commands in u-boot.

Understood. Thanks.

In the meantime, after some minor email back-and-forth last week, WavLink customer service promised me that sometime this week their 'engineering team' would send me a link to their 'source code'.

I'm also waiting for access to the wiki in order to start a hardware page for the device, including my photos and description of the take-apart process, and photos of the board etc.