Builds for Linksys WHW03 V2 + V1

read my messages where my builds are posted

Fixed it by switching from

  • "Target Profile : Linksys WHW03 V2"
    to
  • "Target Profile : Multiples devices " and selecting only "Enable all profiles by default" and "Linksys WHW03 V2" in "Target Devices"

But shouldn't both lead to the same images ?

news

  • i've created a device page for V1 and posted instructions to repartition the device to leverage its large 4 GB emmc. return to stock is possible if you take backups as instructed. see: https://openwrt.org/toh/linksys/whw03_v1#repartitioning

  • the BDF files for V1 are still not merged; everything is so slooow...

  • V1 backport to 23.05 is still not merged.

  • backport of the V2 channel fix was accepted into 23.05.

performance

these devices have only one ethernet adapter behind a switch. so aggregate traffic on BOTH ports cannot exceed 1 Gbps, if the traffic is going to the CPU.

consider enabling network/firewall/software flow offloading for increased throughput. network/interfaces/global/packet steering can also help.

3 Likes

the BDF files for V1 were finally merged, so users of V1 should update their setups ASAP. the BDFs ensure the hardware meets FCC regulations, and probably make the devices work better.

on the other hand, it looks like V1 will not be backported to 23.05.

so users of V1 should install SNAPSHOT plus luci-app-attendedsysupgrade/auc and do a sysupgrade whenever they need to install new packages.

2 Likes

I just tried creating a new Snapshot for the whw03v1 using the Attended Sysupgrade and it returns an error that auc cannot be installed. As I am relatively new to OpenWRT, it's probably something I have done wrong.

Collected errors:
 * opkg_install_cmd: Cannot install package auc.
make[2]: *** [Makefile:220: package_install] Error 255
make[1]: *** [Makefile:161: _call_manifest] Error 2
make: *** [Makefile:322: manifest] Error 2

I am presently running:

OpenWrt SNAPSHOT r26747-f864b83b1d / LuCI Master 24.158.03388~a6f8361

Also, I have noticed if I boot to the opposite partition, all my settings disappear. Is there anyway to sync the settings between the two partitions?

BTW, great job to all involved in this port for whw03v1. I have had these sitting on the shelf for over a year now and have finally put them to good use using a gretap tunnel to transport my three vlans wirelessly. Beautiful!!!

In main (snapshots), auc has been removed in favour of owut.

That worked! I could not just remove the package from Attended SysUpgrade as it still tried to install build with auc. I had to manually use opkg to remove it first, then add owut then it worked. Thank you!

EDIT: the new BDF files for V1 definitely make a huge difference in the backhaul speed. Went from 320Mb/s to 585Mb/s.

that's great to know! we were having difficulties making sure which were the right files. thanks for sharing!

btw, i just added detailed instructions and pics on how to open V1.

thanks to @wowthur who helped me getting the thing open.

1 Like

Great write up. I had wondered how difficult it was going to be to do this. Fortunately I did not need to serial flash for my initial factory to openwrt venture. But indeed this is excellent info to have. Thanks!

1 Like

Hi,
I own a Linksys Velop WHW03 V1 Mesh system that comes as a package of 3-nodes. Bought it in the Christmas of 2019 in EU. I have tried previously to install OpenWRT on one of the nodes, but to no avail. Here's the issue

  1. the firmware will flash without issue (I have tried both manual update from CA and the ...router-ip/fwupdate.html)
  2. the node will reboot with a solid blue light and it stays that way forever. I cannot connect to the node from either of the 2 ethernet ports
  3. I have to cycle the node to force recovery to Linksys firmware.

I decided to open up the node and see if I could get a serial port, but contrary to what is suggested this V1 board does not have pins populated. I had to solder it myself, but the pinouts are the same as listed in the openwrt instructions. Please find the log files here: bootlogs, printenv, mmcinfo, mmcpart

A look at when openwrt boots from the eMMC, shows that it is stuck at Waiting for root device /dev/mmcblk0p15...

Similarly, when I try to fetch the image file from TFTP and boot the image directly from memory using bootm, the kernel panics. I'm not sure if I'm doing the TFTP boot correctly, do we need to pass some bootargs? I have attached the logs in the GitHub repo as well

As far as I can tell, from the mmcinfo the eMMC on this device is different (Manufacturer ID: 15, Name: 4FTE4). Maybe it is a similar situation as some V2's having a different flash memory?

Can someone help troubleshoot the issue? I can help with testing and getting debug information. I want to get OpenWRT working on my system before OpenWRT 24.10 becomes stable.

I have seen this before, where late builds do not flash onto these older devices. I have attached the original build I flashed to these last July '24. I did this using the hidden factory fwupdate.html menu and they all flashed fine.

Once this is flashed and working you can go to the firmware builder and build a recent release.

If you would happen to use Attended SysUpgrade instead, you will need to remove opkg from the package list and add apk. It will fail otherwise.

Hi @Lexridge,
Thanks for the quick response!

I still have the same problem with your image - the node boots upto the Waiting for root device /dev/mmcblk0p17... and then stuck there forever. (I used the same hidden ...router-ip/fwupdate.html to do the flash)

I'm able to load the kernel provided by the firmware builder site to memory and then use bootm to boot to a openwrt console. But the eMMC isn't mounted, so I'm not sure what to do.

I'm I wrong to suspect that the eMMC on my node is from a different vendor? if possible can you check the eMMC present in your models?

I'd be happy to check the eMMC in my versions, but you must tell me how to do that. I am not that experienced in OpenWRT. I only use it on these particular routers. I use dd-wrt on everything else, but dd-wrt does not support these.

I may need to connect to serial to see this information, but here is my freshly booted dmesg. Maybe that will tell you?

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 6.6.70 (builder@buildhost) (arm-openwrt-linux-muslgnueabi-gcc (OpenWrt GCC 13.3.0 r28557-e9415be4ad) 13.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Sun Jan 12 09:19:05 2025
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Linksys WHW03 (Velop)
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] OF: reserved mem: 0x87e00000..0x87e7ffff (512 KiB) nomap non-reusable smem@87e00000
[    0.000000] OF: reserved mem: 0x87e80000..0x87ffffff (1536 KiB) nomap non-reusable tz@87e80000
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000080000000-0x000000009fffffff]
[    0.000000]   HighMem  empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x0000000087dfffff]
[    0.000000]   node   0: [mem 0x0000000087e00000-0x0000000087ffffff]
[    0.000000]   node   0: [mem 0x0000000088000000-0x000000009fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000009fffffff]
[    0.000000] percpu: Embedded 13 pages/cpu s21524 r8192 d23532 u53248
[    0.000000] pcpu-alloc: s21524 r8192 d23532 u53248 alloc=13*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Kernel command line: init=/sbin/init rootfstype=ext4 root=/dev/mmcblk0p15 rootwait console=ttyMSM0,115200n8 rootfstype=squashfs
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129920
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 504760K/524288K available (7671K kernel code, 643K rwdata, 1996K rodata, 1024K init, 248K bss, 19528K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 48.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xb11fd3bfb, max_idle_ns: 440795203732 ns
[    0.000001] sched_clock: 56 bits at 48MHz, resolution 20ns, wraps every 4398046511096ns
[    0.000018] Switching to timer-based delay loop, resolution 20ns
[    0.000309] Calibrating delay loop (skipped), value calculated using timer frequency.. 96.00 BogoMIPS (lpj=480000)
[    0.000334] CPU: Testing write buffer coherency: ok
[    0.000385] pid_max: default: 32768 minimum: 301
[    0.010296] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.010320] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.018857] qcom_scm: convention: smc legacy
[    0.020330] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4.
[    0.020506] Setting up static identity map for 0x80300000 - 0x8030003c
[    0.020707] rcu: Hierarchical SRCU implementation.
[    0.020714] rcu: 	Max phase no-delay instances is 1000.
[    0.021397] smp: Bringing up secondary CPUs ...
[    0.025061] smp: Brought up 1 node, 4 CPUs
[    0.025086] SMP: Total of 4 processors activated (384.00 BogoMIPS).
[    0.025097] CPU: All CPU(s) started in SVC mode.
[    0.033472] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.033690] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.033720] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.038833] pinctrl core: initialized pinctrl subsystem
[    0.042051] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.042522] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.044051] thermal_sys: Registered thermal governor 'step_wise'
[    0.044156] cpuidle: using governor ladder
[    0.044199] cpuidle: using governor menu
[    0.061341] cryptd: max_cpu_qlen set to 1000
[    0.065938] usbcore: registered new interface driver usbfs
[    0.066023] usbcore: registered new interface driver hub
[    0.066111] usbcore: registered new device driver usb
[    0.066161] pps_core: LinuxPPS API ver. 1 registered
[    0.066169] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.066195] PTP clock support registered
[    0.068887] clocksource: Switched to clocksource arch_sys_counter
[    0.079684] NET: Registered PF_INET protocol family
[    0.079931] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.082256] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.082296] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.082315] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    0.082374] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear)
[    0.082528] TCP: Hash tables configured (established 4096 bind 4096)
[    0.083599] MPTCP token hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.083995] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.084035] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.084762] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.084819] PCI: CLS 0 bytes, default 64
[    0.086500] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.087513] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.087528] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.331998] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[    0.336553] tcsr 1953000.ess-tcsr: setting ess interface select = 0
[    0.336714] tcsr 1949000.tcsr: setting wifi_glb_cfg = 41000000
[    0.336811] tcsr 194b000.tcsr: setting usb hs phy mode select = e700e7
[    0.336904] tcsr 1957000.tcsr: setting wifi_noc_memtype_m0_m2 = 2222222
[    0.337319] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.339573] qcom-pcie 40000000.pci: host bridge /soc/pci@40000000 ranges:
[    0.339641] qcom-pcie 40000000.pci:       IO 0x0040200000..0x00402fffff -> 0x0000000000
[    0.339673] qcom-pcie 40000000.pci:      MEM 0x0040300000..0x0040ffffff -> 0x0040300000
[    0.341657] msm_serial 78af000.serial: msm_serial: detected port #0
[    0.341709] msm_serial 78af000.serial: uartclk = 1843200
[    0.342070] 78af000.serial: ttyMSM0 at MMIO 0x78af000 (irq = 31, base_baud = 115200) is a MSM
[    0.342110] msm_serial: console setup on port #0
[    0.342161] printk: console [ttyMSM0] enabled
[    0.480750] qcom-pcie 40000000.pci: iATU: unroll F, 32 ob, 8 ib, align 4K, limit 4G
[    0.482980] msm_serial 78b0000.serial: msm_serial: detected port #1
[    0.490095] qcom-pcie 40000000.pci: Invalid eDMA IRQs found
[    0.496925] msm_serial 78b0000.serial: uartclk = 1843200
[    0.598884] qcom-pcie 40000000.pci: PCIe Gen.1 x1 link up
[    0.599583] 78b0000.serial: ttyMSM1 at MMIO 0x78b0000 (irq = 33, base_baud = 115200) is a MSM
[    0.604296] qcom-pcie 40000000.pci: PCI host bridge to bus 0000:00
[    0.611637] msm_serial: driver initialized
[    0.619140] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.009672] pci_bus 0000:00: root bus resource [io  0x0000-0xfffff]
[    1.015127] pci_bus 0000:00: root bus resource [mem 0x40300000-0x40ffffff]
[    1.021357] pci 0000:00:00.0: [17cb:1001] type 01 class 0x060400
[    1.028248] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x00000fff]
[    1.034473] pci 0000:00:00.0: PME# supported from D0 D3hot
[    1.042002] PCI: bus0: Fast back to back transfers disabled
[    1.046253] pci 0000:01:00.0: [168c:0056] type 00 class 0x028000
[    1.051588] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x001fffff 64bit]
[    1.058415] pci 0000:01:00.0: PME# supported from D0 D3hot
[    1.065165] PCI: bus1: Fast back to back transfers disabled
[    1.069783] pci 0000:00:00.0: BAR 8: assigned [mem 0x40400000-0x405fffff]
[    1.075200] pci 0000:00:00.0: BAR 0: assigned [mem 0x40300000-0x40300fff]
[    1.082168] pci 0000:01:00.0: BAR 0: assigned [mem 0x40400000-0x405fffff 64bit]
[    1.088999] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    1.096030] pci 0000:00:00.0:   bridge window [mem 0x40400000-0x405fffff]
[    1.101257] pci_bus 0000:00: resource 4 [io  0x0000-0xfffff]
[    1.108178] pci_bus 0000:00: resource 5 [mem 0x40300000-0x40ffffff]
[    1.113924] pci_bus 0000:01: resource 1 [mem 0x40400000-0x405fffff]
[    1.124113] pcieport 0000:00:00.0: AER: enabled with IRQ 35
[    1.131250] loop: module loaded
[    1.133242] spi_qup 78b6000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    1.134973] zigbee@0 enforce active low on GPIO handle
[    1.187573] i2c_dev: i2c /dev entries driver
[    1.187920] i2c_qup 78b7000.i2c: using default clock-frequency 100000
[    1.194108] sdhci: Secure Digital Host Controller Interface driver
[    1.197264] sdhci: Copyright(c) Pierre Ossman
[    1.203401] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.209539] sdhci_msm 7824900.mmc: Got CD GPIO
[    1.211487] NET: Registered PF_INET6 protocol family
[    1.220151] Segment Routing with IPv6
[    1.222946] In-situ OAM (IOAM) with IPv6
[    1.226544] NET: Registered PF_PACKET protocol family
[    1.230510] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    1.235757] 8021q: 802.1Q VLAN Support v1.8
[    1.248686] Registering SWP/SWPB emulation handler
[    1.249421] mmc0: SDHCI controller on 7824900.mmc [7824900.mmc] using ADMA 64-bit
[    1.279536] qca8k-ipq4019 c000000.switch: configuring for fixed/internal link mode
[    1.279903] qca8k-ipq4019 c000000.switch: Link is Up - 1Gbps/Full - flow control rx/tx
[    1.322416] mmc0: new HS200 MMC card at address 0001
[    1.323682] mmcblk0: mmc0:0001 4FTE4R 3.64 GiB
[    1.328352]  mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19
[    1.333573] mmcblk0boot0: mmc0:0001 4FTE4R 4.00 MiB
[    1.340173] mmcblk0boot1: mmc0:0001 4FTE4R 4.00 MiB
[    1.344157] mmcblk0rpmb: mmc0:0001 4FTE4R 512 KiB, chardev (246:0)
[    1.480750] qca8k-ipq4019 c000000.switch lan (uninitialized): PHY [90000.mdio-1:03] driver [Qualcomm QCA8072] (irq=POLL)
[    1.559748] qca8k-ipq4019 c000000.switch wan (uninitialized): PHY [90000.mdio-1:04] driver [Qualcomm QCA8072] (irq=POLL)
[    1.560964] ipqess-edma c080000.ethernet eth0: entered promiscuous mode
[    1.569852] DSA: tree 0 setup
[    1.576748] clk: Disabling unused clocks
[    1.584703] VFS: Mounted root (squashfs filesystem) readonly on device 259:7.
[    1.586805] Freeing unused kernel image (initmem) memory: 1024K
[    1.591148] Run /sbin/init as init process
[    1.596567]   with arguments:
[    1.596573]     /sbin/init
[    1.596580]   with environment:
[    1.596586]     HOME=/
[    1.596592]     TERM=linux
[    1.986387] init: Console is alive
[    1.986794] init: - watchdog -
[    3.188989] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.306266] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    3.335520] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.343841] init: - preinit -
[    7.838892] random: crng init done
[    8.647335] ipqess-edma c080000.ethernet eth0: configuring for fixed/internal link mode
[    8.648108] qca8k-ipq4019 c000000.switch lan: configuring for phy/psgmii link mode
[    8.654214] qca8k-ipq4019 c000000.switch: PSGMII calibration!
[    8.661904] ipqess-edma c080000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   12.489283] qca8k-ipq4019 c000000.switch lan: Link is Up - 1Gbps/Full - flow control off
[   13.799477] loop0: detected capacity change from 0 to 262144
[   13.848883] loop0: detected capacity change from 262144 to 242816
[   13.917855] F2FS-fs (loop0): Disable nat_bits due to incorrect cp_ver (932290757193873692, 0)
[   13.924970] F2FS-fs (loop0): Mounted with checkpoint version = 11ebb91c
[   13.926982] mount_root: switching to f2fs overlay
[   13.937969] urandom-seed: Seeding with /etc/urandom.seed
[   14.056788] qca8k-ipq4019 c000000.switch lan: Link is Down
[   14.065363] procd: - early -
[   14.065591] procd: - watchdog -
[   14.654402] procd: - watchdog -
[   14.655252] procd: - ubus -
[   14.738316] procd: - init -
[   15.381457] kmodloader: loading kernel modules from /etc/modules.d/*
[   15.455400] gre: GRE over IPv4 demultiplexor driver
[   15.460492] ip_gre: GRE over IPv4 tunneling driver
[   15.468528] ip6_gre: GRE over IPv6 tunneling driver
[   15.486158] hid: raw HID events driver (C) Jiri Kosina
[   15.522327] Bluetooth: Core ver 2.22
[   15.522497] NET: Registered PF_BLUETOOTH protocol family
[   15.524995] Bluetooth: HCI device and connection manager initialized
[   15.530337] Bluetooth: HCI socket layer initialized
[   15.536633] Bluetooth: L2CAP socket layer initialized
[   15.541280] Bluetooth: SCO socket layer initialized
[   15.548428] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   15.551156] Bluetooth: BNEP filters: protocol multicast
[   15.556696] Bluetooth: BNEP socket layer initialized
[   15.572167] usbcore: registered new interface driver btusb
[   15.575262] Loading modules backported from Linux version v6.12.6-0-ge9d65b48ce1a
[   15.576588] Backport generated by backports.git v6.1.110-1-35-g410656ef04d2
[   15.586970] Bluetooth: HCI UART driver ver 2.3
[   15.590934] Bluetooth: HCI UART protocol H4 registered
[   15.595421] Bluetooth: HCI UART protocol BCSP registered
[   15.600579] Bluetooth: HCI UART protocol ATH3K registered
[   15.608325] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[   15.611390] Bluetooth: HIDP socket layer initialized
[   15.644323] Bluetooth: RFCOMM TTY layer initialized
[   15.644421] Bluetooth: RFCOMM socket layer initialized
[   15.648086] Bluetooth: RFCOMM ver 1.11
[   15.906872] PPP generic driver version 2.4.2
[   15.908407] NET: Registered PF_PPPOX protocol family
[   15.920201] wireguard: WireGuard 1.0.0 loaded. See www.wireguard.com for information.
[   15.920253] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
[   15.957693] ath10k 6.10 driver, optimized for CT firmware, probing pci device: 0x56.
[   15.958793] ath10k_pci 0000:01:00.0: enabling device (0140 -> 0142)
[   15.965345] ath10k_pci 0000:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[   16.256498] urngd: v1.0.2 started.
[   16.858042] ath10k_pci 0000:01:00.0: qca9888 hw2.0 target 0x01000000 chip_id 0x00000000 sub 0000:0000
[   16.858115] ath10k_pci 0000:01:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   16.870628] ath10k_pci 0000:01:00.0: firmware ver 10.4b-ct-9888-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 59e741e7
[   17.188955] ath10k_pci 0000:01:00.0: board_file api 2 bmi_id 0:23 crc32 5968d47d
[   18.947418] ath10k_pci 0000:01:00.0: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   18.947488] ath10k_pci 0000:01:00.0: msdu-desc: 2500  skid: 32
[   19.001646] ath10k_pci 0000:01:00.0: wmi print 'P 48/48 V 16 K 144 PH 176 T 186  msdu-desc: 2500  sw-crypt: 0 ct-sta: 0'
[   19.002569] ath10k_pci 0000:01:00.0: wmi print 'free: 114572 iram: 12644 sram: 29508'
[   19.248796] ath10k_pci 0000:01:00.0: htt-ver 2.2 wmi-op 6 htt-op 4 cal pre-cal-file max-sta 32 raw 0 hwcrypto 1
[   19.333729] ath: EEPROM regdomain: 0x0
[   19.333762] ath: EEPROM indicates default country code should be used
[   19.333770] ath: doing EEPROM country->regdmn map search
[   19.333780] ath: country maps to regdmn code: 0x3a
[   19.333790] ath: Country alpha2 being used: US
[   19.333798] ath: Regpair used: 0x3a
[   20.232657] ath10k_ahb a000000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   20.232733] ath10k_ahb a000000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   20.244597] ath10k_ahb a000000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 6b2b5c5b
[   20.386540] ath10k_ahb a000000.wifi: board_file api 2 bmi_id 0:20 crc32 2d972a4b
[   21.673881] ath10k_ahb a000000.wifi: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   21.673961] ath10k_ahb a000000.wifi: msdu-desc: 2500  skid: 32
[   21.723656] ath10k_ahb a000000.wifi: wmi print 'P 48/48 V 16 K 144 PH 176 T 186  msdu-desc: 2500  sw-crypt: 0 ct-sta: 0'
[   21.724608] ath10k_ahb a000000.wifi: wmi print 'free: 53252 iram: 13432 sram: 35752'
[   21.864273] ath10k_ahb a000000.wifi: htt-ver 2.2 wmi-op 6 htt-op 4 cal pre-cal-file max-sta 32 raw 0 hwcrypto 1
[   21.978519] ath: EEPROM regdomain: 0x0
[   21.978551] ath: EEPROM indicates default country code should be used
[   21.978561] ath: doing EEPROM country->regdmn map search
[   21.978570] ath: country maps to regdmn code: 0x3a
[   21.978579] ath: Country alpha2 being used: US
[   21.978587] ath: Regpair used: 0x3a
[   22.600373] ath10k_ahb a800000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   22.600463] ath10k_ahb a800000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   22.612397] ath10k_ahb a800000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 6b2b5c5b
[   22.676586] ath10k_ahb a800000.wifi: board_file api 2 bmi_id 0:21 crc32 2d972a4b
[   23.964187] ath10k_ahb a800000.wifi: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   23.964270] ath10k_ahb a800000.wifi: msdu-desc: 2500  skid: 32
[   24.013276] ath10k_ahb a800000.wifi: wmi print 'P 48/48 V 16 K 144 PH 176 T 186  msdu-desc: 2500  sw-crypt: 0 ct-sta: 0'
[   24.014232] ath10k_ahb a800000.wifi: wmi print 'free: 53252 iram: 13432 sram: 35752'
[   24.152809] ath10k_ahb a800000.wifi: htt-ver 2.2 wmi-op 6 htt-op 4 cal pre-cal-file max-sta 32 raw 0 hwcrypto 1
[   24.266733] ath: EEPROM regdomain: 0x0
[   24.266765] ath: EEPROM indicates default country code should be used
[   24.266773] ath: doing EEPROM country->regdmn map search
[   24.266782] ath: country maps to regdmn code: 0x3a
[   24.266790] ath: Country alpha2 being used: US
[   24.266798] ath: Regpair used: 0x3a

Hey @Lexridge,

The dmesg output was more than enough!! I see that your nodes have the same model of eMMC as mine.

But for some reason isn't read into :thinking:. Everything upto to this point is same as my bootlog

[    1.249421] mmc0: SDHCI controller on 7824900.mmc [7824900.mmc] using ADMA 64-bit

These are missing:

[    1.322416] mmc0: new HS200 MMC card at address 0001
[    1.323682] mmcblk0: mmc0:0001 4FTE4R 3.64 GiB
[    1.328352]  mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19
[    1.333573] mmcblk0boot0: mmc0:0001 4FTE4R 4.00 MiB
[    1.340173] mmcblk0boot1: mmc0:0001 4FTE4R 4.00 MiB
[    1.344157] mmcblk0rpmb: mmc0:0001 4FTE4R 512 KiB, chardev (246:0)

And so instead of this

[    1.584703] VFS: Mounted root (squashfs filesystem) readonly on device 259:7.

my node is get stuck

[    1.580295] Waiting for root device /dev/mmcblk0p15...

That is odd. Might need the dev to pop in and look at this. Maybe compare your uboot variables with these?

# fw_printenv
altkern=48022
auto_recovery=yes
baudrate=115200
boot_part_ready=3
boot_ver=0.0.22
bootargs=console=ttyMSM0,115200n8
bootcmd=if test $boot_part = 1; then run bootpart1; else run bootpart2; fi
bootdelay=2
bootpart1=set bootargs $partbootargs && mmc read $loadaddr $prikern 4000 && bootm $loadaddr
bootpart2=set bootargs $partbootargs2 && && mmc read $loadaddr $altkern  4000 && bootm $loadaddr
ethact=eth0
fileaddr=90000000
flash_type=1
flashimg=tftp $fileaddr $image && mmc write $fileaddr $prikern $imgsize
flashimg2=tftp $fileaddr $image && mmc write $fileaddr $altkern $imgsize
image=nodes.img
imgsize=44000
ipaddr=192.168.1.11
loadaddr=84000000
machid=8010006
partbootargs=init=/sbin/init rootfstype=ext4 root=/dev/mmcblk0p15  rootwait console=ttyMSM0,115200n8
partbootargs2=init=/sbin/init rootfstype=ext4 root=/dev/mmcblk0p17 rootwait console=ttyMSM0,115200n8
prikern=4022
stderr=serial
stdin=serial
stdout=serial
boot_part=1

They should be the same regardless of whether you are booted to openwrt or oem.

Hey @Lexridge,
That was the first thing I checked and there isn't any change to my uboot env. Either way I just diff your printenv output with mine and they are still the same.

Even when I boot the openwrt kernel .itb image from TFTP the mmc0 isn't mounted. I'm not sure at this point what the issue might be.

I have no idea why they would be different. I'm rather short on time for the next several days but I am only using 2 of these units presently. I will flash the unused unit back to stock and try to recreate your environment and see if this problem exists for me. Have you tried flashing or booting only the kernel first then manually upgrading from there? I have not tried this but seems to be common goto when all else fails.

@Lexridge I was successful at booting to the Kernel image by loading it to memory from tftpboot. But since the mmc0 isn't populated on /dev I'm trying to understand what my options are.

I had the OEM 1.1.19.215389 (Dated: 4/25/2024) on the node, before trying the snapshot builds from OpenWRT. But because the serial pins on my models are not populated I don't want to have to open each one to unbrick, if the flash fails.

Even I'm testing the OpenWRT on one of the nodes that has been lying dormant, as most of the time just two of these cover the entire home. But the plan is to flash all these 3 nodes eventually, once I get it working on the test setup.

Thanks for the quick response, and yeah if you can recreate the issue maybe it's not a one off case and might garner further investigation. Meanwhile, I will try to see if I can flash just the kernel, to see if it works. But I think I have to manually do it from uboot? not sure so I will look at @flipy's instructions.

P.S - I'm unable to reply to any post after this, apparently new users are restricted to 3 posts on the same topic :upside_down_face:. @Lexridge I'm sorry for the delayed response for your next posts. edited on January 26, 2025 11:07AM IST

Unfortunately I only added the serial pins to one unit and I have no idea which one it was now. It's gonna be a crap shoot finding it lol. While adding the serial pins was very easy, disassembling these units was challenging. I will have to re-read the instructions again. lol

There may be some useful information in this thread as well.

I will try to find the unit with serial pins installed early to mid next week and do some testing.

1 Like

Well, I was wrong. I had some time tonight so I tore into one. All the pins are there on all units. I did not apparently add these and I would assume they are already present in your routers as well. I know this because the unit I disassembled did not have the holes punched in the bottom label where the screws reside. Sorry for that mistake but I have been into a LOT of routers since last July.

I flashed back to stock via uboot on both partitions. Once booted I was able to flash the latest OpenWRT factory to OpenWRT from the Firmware Selector without any issues. I originally flashed the image I sent you earlier but it did not have Luci included, and with opkg being deprecated I was not able to get it installed. So I flashed back again to stock via uboot and flashed the latest 24.10.0 rc6 without issue (which includes Luci). I did all this through the CA Connections page and not the hidden menu. If you need the logs, I will provide.
EDIT:
Here is the complete log. First I am flashing both partitions back to stock. Then from within CA, I flash a recent RC6 OpenWRT-Factory image, once rebooted, I flash a sysupgrade that matches my other WHW03v1s. No idea why yours is not working, but this was smooth and no issues whatsoever.

1 Like