Arcadyan AW1000 Telstra 5G Home Internet install

I recently got a Telstra branded Arcadyan AW1000 on 03-Jun-2024 but only to discover it has firmware version 0.06.01r, hardware version: XCI35AX44Z-TA, I have an Optus sim which I can't use with this Telstra device.

As per azzaboy18's post on 2022-May-4 from Arcadyan AW1000 Telstra 5G Home Internet Hacking, unfortunately I have found both "Method 1 – UART" and "Method 2 – Backup File" methods have been patched with the firmware revision mentioned above, also confirmed by James Bertschik's post on 2023-Dec-22.

I have proceeded to replace the Telstra stock firmware with OpenWrt firmware as mentioned by Arcadyan / Astoria AW1000, using factory.ubi file (13568.0 KB, Sat Jun 29 03:51:15 2024), via tftp host or usb boot with initramfs.bin image and it was successful. However after reboot I couldn't access its web interface page at https://192.168.1.1.

OpenWrt allows one to build snapshot via Download OpenWrt firmware for your device. Expanding the "Customize installed packages and/or first boot script" from that snapshot link, under "Installed Packages" shows:-

ath11k-firmware-ipq8074 base-files busybox ca-bundle dnsmasq dropbear e2fsprogs firewall4 fstools ipq-wifi-arcadyan_aw1000 kmod-ath11k-ahb kmod-fs-ext4 kmod-gpio-button-hotplug kmod-gpio-nxp-74hc164 kmod-leds-gpio kmod-nft-offload kmod-phy-aquantia kmod-qca-nss-dp kmod-spi-gpio kmod-usb-dwc3 kmod-usb-dwc3-qcom kmod-usb-serial-option kmod-usb3 libc libgcc libustream-mbedtls logd losetup luci mtd netifd nftables odhcp6c odhcpd-ipv6only opkg ppp ppp-mod-pppoe procd procd-seccomp procd-ujail uboot-envtools uci uclient-fetch uqmi urandom-seed urngd wpad-basic-mbedtls

It appears luci package was included but how to check offline if it was actually included in the factory.ubi or sysupgrade.bin files before being used for flashing? Perhaps provide a manifest like openwrt-armsr-armv8.manifest?

I have figured you can issue a "opkg list-installed" command to check for installed packages after it was flashed, so I have found luci package was not included in the factory.ubi file. Later on I found out in FAQ section about snapshots release.

FAQ: I can not connect via webbrowser

Do I have to continue upgrading the firmware using sysupgrade.bin file (12190.3 KB, Sat Jun 29 03:51:15 2024) in order to have LuCI?

I have proceeded to upgrade the firmware sysupgrade.bin file, and this time it gave me an error as below:-

root@OpenWrt:~# free
              total        used        free      shared  buff/cache   available
Mem:         886992       45876      794148       40240       46968      772936
Swap:             0           0           0

root@OpenWrt:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                   443496     27840    415656   6% /
tmpfs                   443496     12400    431096   3% /tmp
tmpfs                      512         0       512   0% /dev

root@OpenWrt:~# ls -l /tmp
-rw-r--r--    1 root     root             4 Jan  1 00:01 TZ
-rw-r--r--    1 root     root           713 Jan  1 00:00 board.json
-rw-r--r--    1 root     root             0 Jan  1 00:01 dhcp.leases
drwxr-xr-x    2 root     root            40 Jan  1 00:01 dnsmasq.d
drwxr-xr-x    2 root     root            60 Jan  1 00:01 etc
drwxr-xr-x    2 root     root            80 Jan  1 00:01 hosts
drwxr-xr-x    3 root     root            60 Jan  1 00:01 lib
drwxrwxrwt    2 root     root           340 Jan  1 00:01 lock
drwxr-xr-x    2 root     root            80 Jan  1 00:00 log
-rw-r--r--    1 root     root      12482867 Jan  1 00:02 openwrt-qualcommax-ipq807x-arcadyan_aw1000-squashfs-sysupgrade.bin
-rw-r--r--    1 root     root            47 Jan  1 00:01 resolv.conf
drwxr-xr-x    2 root     root            60 Jan  1 00:01 resolv.conf.d
drwxr-xr-x    6 root     root           240 Jan  1 00:01 run
drwxrwxrwt    2 root     root            40 Jan  1 00:01 shm
drwxr-xr-x    2 root     root            60 Jan  1 00:01 state
drwxr-xr-x    2 root     root            80 Jan  1 00:00 sysinfo
-rw-r--r--    1 root     root             0 Jan  1 00:02 sysupgrade.meta
drwxr-xr-x    2 root     root            40 Jan  1 00:00 tmp

root@OpenWrt:~# sysupgrade -n /tmp/openwrt-qualcommax-ipq807x-arcadyan_aw1000-squashfs-sysupgrade.bin
Thu Jan 1 00:01:47 UTC 1970 upgrade: Image metadata not present
Thu Jan 1 00:01:47 UTC 1970 upgrade: Use sysupgrade -F to override this check when downgrading or flashing to vendor firmware
Image check failed.

If additional LuCI related packages such as luci-proto-qmi, luci-proto-mbim, luci-proto-modemmanager will be required for internet, what essential packages are actually needed to build the firmware at least par to the Telstra stock firmware with LuCI interface?

This is my very first time doing this hope someone can provide some insight?

You need to do a "request build", if you want the snapshot to include luci.

I understand that but is there any utility program that can be used to check offline what packages are included in the released firmware file before it was being flashed?

Yes, you should be able to check the build recipe in the build sources.

Even if I could include the luci package to build the sysupgrade.bin file, there is still an error when performing the upgrade with "Image check failed." Please see attached screen in original post.

Please see the solution the warning messages provides you with.

If you refer to "Use sysupgrade -F to override this check when downgrading or flashing to vendor firmware" message, the sysupgrade.bin was used to flash over the factory.ubi and factory.ubi is no longer Telstra's firmware, hence I am unsure and afraid to use the -F switch as I have never done that before. So it is ok to use the -F switch?

I have also tried to download the essential luci*.ipk packages (extended) from the web links below and will have them manually installed offline, but I have also encountered some issues.

LuCI essentials
Index of LuCI snapshots release for aarch64_cortex-a53

root@OpenWrt:/# ubus call system board; \
> head -n -0 /etc/opkg/*.conf
{
        "kernel": "6.6.35",
        "hostname": "OpenWrt",
        "system": "ARMv8 Processor rev 4",
        "model": "Arcadyan AW1000",
        "board_name": "arcadyan,aw1000",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "SNAPSHOT",
                "revision": "r26809-7c9644a7b5",
                "target": "qualcommax/ipq807x",
                "description": "OpenWrt SNAPSHOT r26809-7c9644a7b5"
        }
}
==> /etc/opkg/customfeeds.conf <==
# add your custom package feeds here
#
# src/gz example_feed_name http://www.example.com/path/to/files

==> /etc/opkg/distfeeds.conf <==
src/gz openwrt_core https://downloads.openwrt.org/snapshots/targets/qualcommax/ipq807x/packages
src/gz openwrt_base https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base
src/gz openwrt_kmods https://downloads.openwrt.org/snapshots/targets/qualcommax/ipq807x/kmods/6.6.35-1-f37c2fdbdb753b455ef8cac06b859604
src/gz openwrt_luci https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/luci
src/gz openwrt_packages https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/packages
src/gz openwrt_routing https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/routing
src/gz openwrt_telephony https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/telephony

root@OpenWrt:/tmp/offline# opkg print_architecture
arch all 1
arch noarch 1
arch aarch64_cortex-a53 10

root@OpenWrt:/tmp/offline# ls -l
-rw-r--r--    1 root     root         18215 Jun 27 16:16 luci-app-firewall_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root         10238 Jun 27 16:16 luci-app-opkg_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root          1046 Jun 27 16:15 luci-light_23.024.33244~34dee82_all.ipk
-rw-r--r--    1 root     root          3799 Jun 27 16:15 luci-proto-ipv6_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root          2415 Jun 27 16:15 luci-proto-mbim_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root          5075 Jun 27 16:15 luci-proto-modemmanager_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root          3043 Jun 27 16:14 luci-proto-ppp_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root          2488 Jun 27 16:14 luci-proto-qmi_24.148.86114~fbbfdb4_all.ipk
-rw-r--r--    1 root     root           996 Jun 27 16:14 luci-ssl_23.035.26083~7550ad6_all.ipk
-rw-r--r--    1 root     root           989 Jun 27 16:14 luci_23.051.66410~a505bb1_all.ipk

root@OpenWrt:/tmp/offline# opkg install /tmp/offline/luci_23.051.66410~a505bb1_all.ipk
Unknown package 'luci'.
Collected errors:
 * pkg_hash_check_unresolved: cannot find dependency luci-light for luci
 * pkg_hash_check_unresolved: cannot find dependency luci-app-opkg for luci
 * pkg_hash_fetch_best_installation_candidate: Packages for luci found, but incompatible with the architectures configured
 * opkg_install_cmd: Cannot install package luci.

Actually I have successfully run sysupgrade, see output below, and I can confirm that luci package is not included in both factory.ubi and sysupgrade.bin snapshots.

root@OpenWrt:/# sysupgrade -n /tmp/openwrt-qualcommax-ipq807x-arcadyan_aw1000-sq
uashfs-sysupgrade.bin
Thu Jan  1 00:02:48 UTC 1970 upgrade: Commencing upgrade. Closing all shell sessions.
Watchdog handover: fd=3
- watchdog -
Watchdog did not previously reset the system
Thu Jan  1 00:02:48 UTC 1970 upgrade: Sending TERM to remaining processes ...
Thu Jan  1 00:02:48 UTC 1970 upgrade: Sending signal TERM to netifd (1982)
Thu Jan  1 00:02:52 UTC 1970 upgrade: Sending KILL to remaining processes ...
Thu Jan  1 00:02:52 UTC 1970 upgrade: Sending signal KILL to netifd (1982)
[  180.781448] stage2 (3082): drop_caches: 3
Thu Jan  1 00:03:00 UTC 1970 upgrade: Switching to ramdisk...
Thu Jan  1 00:03:01 UTC 1970 upgrade: Performing system upgrade...
verifying sysupgrade tar file integrity
[  182.180757] ubi0: attaching mtd18
[  182.589372] ubi0: scanning is finished
[  182.595679] ubi0: attached mtd18 (name "rootfs", size 100 MiB)
[  182.595722] ubi0: PEB size: 262144 bytes (256 KiB), LEB size: 253952 bytes
[  182.600415] ubi0: min./max. I/O unit sizes: 4096/4096, sub-page size 4096
[  182.607293] ubi0: VID header offset: 4096 (aligned 4096), data offset: 8192
[  182.614134] ubi0: good PEBs: 400, bad PEBs: 0, corrupted PEBs: 0
[  182.620900] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[  182.627154] ubi0: max/mean erase counter: 230/74, WL threshold: 4096, image sequence number: 742938691
[  182.634190] ubi0: available PEBs: 0, total reserved PEBs: 400, PEBs reserved for bad PEB handling: 80
[  182.643487] ubi0: background thread "ubi_bgt0d" started, PID 3886
[  182.644390] block ubiblock0_1: created from ubi0:1(rootfs)
UBI device number 0, total 400 LEBs (101580800 bytes, 96.8 MiB), available 0 LEBs (0 bytes), LEB size 253952 bytes (248.0 KiB)
[  182.739717] ------------[ cut here ]------------
[  182.739750] sysfs group 'power' not found for kobject 'ubiblock0_1'
[  182.743534] WARNING: CPU: 2 PID: 3922 at fs/sysfs/group.c:282 sysfs_remove_group+0x94/0xa0
[  182.749397] Modules linked in: pppoe ppp_async nft_fib_inet nf_flow_table_inet ath11k_ahb(O) ath11k(O) pppox ppp_generic nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir nft_quota nft_numgen nft_nat nft_masq nft_log nft_limit nft_hash nft_flow_offload nft_fib_ipv6 nft_fib_ipv4 nft_fib nft_ct nft_chain_nat nf_tables nf_nat nf_flow_table nf_conntrack mac80211(O) cfg80211(O) slhc qrtr_smd qrtr qmi_helpers(O) nfnetlink nf_reject_ipv6 nf_reject_ipv4 nf_log_syslog nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c compat(O) sha512_generic sha512_arm64 seqiv sha3_generic jitterentropy_rng drbg michael_mic hmac geniv cmac leds_gpio xhci_plat_hcd xhci_pci xhci_hcd dwc3 dwc3_qcom qca_nss_dp(O) qca_ssdk(O) gpio_button_hotplug(O) ext4 mbcache jbd2 aquantia hwmon crc_ccitt crc32c_generic
[  182.804848] CPU: 2 PID: 3922 Comm: ubirmvol Tainted: G           O       6.6.35 #0
[  182.827085] Hardware name: Arcadyan AW1000 (DT)
[  182.834632] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  182.839064] pc : sysfs_remove_group+0x94/0xa0
[  182.846002] lr : sysfs_remove_group+0x94/0xa0
[  182.850517] sp : ffffffc08757b960
[  182.854854] x29: ffffffc08757b960 x28: ffffff80056f8000 x27: ffffff8003946730
[  182.858160] x26: 000000000000001d x25: ffffff8005235800 x24: 0000000000000000
[  182.865278] x23: ffffffc081378000 x22: ffffffc081378a98 x21: ffffff8002c80cc8
[  182.872397] x20: ffffffc0808ac938 x19: 0000000000000000 x18: 0000000000000146
[  182.879515] x17: 0000000000000004 x16: ffffff80033f0080 x15: ffffffc081386ee0
[  182.886632] x14: 00000000000003d2 x13: 0000000000000146 x12: 00000000ffffffea
[  182.893752] x11: 00000000ffffefff x10: ffffffc0813deee0 x9 : ffffffc081386e88
[  182.900870] x8 : 0000000000017fe8 x7 : c0000000ffffefff x6 : 0000000000057fa8
[  182.907987] x5 : 0000000000000fff x4 : 0000000000000000 x3 : ffffffc08757b760
[  182.915106] x2 : ffffffc081386e20 x1 : ffffffc081386e20 x0 : 0000000000000037
[  182.922225] Call trace:
[  182.929333]  sysfs_remove_group+0x94/0xa0
[  182.931592]  dpm_sysfs_remove+0x5c/0x6c
[  182.935758]  device_del+0xa0/0x424
[  182.939403]  del_gendisk+0x1d0/0x328
[  182.942876]  ubiblock_remove+0xac/0x14c
[  182.946610]  ubiblock_notify+0x2c/0x284
[  182.950168]  blocking_notifier_call_chain+0x6c/0xa0
[  182.953989]  ubi_volume_notify+0x4c/0x60
[  182.958849]  ubi_remove_volume+0x218/0x33c
[  182.963017]  ubi_cdev_ioctl+0x440/0xb34
[  182.966920]  __arm64_sys_ioctl+0x1f4/0xe4c
[  182.970654]  invoke_syscall.constprop.0+0x5c/0x108
[  182.974823]  do_el0_svc+0x40/0xc8
[  182.979595]  el0_svc+0x30/0xb8
[  182.982979]  el0t_64_sync_handler+0x120/0x12c
[  182.985933]  el0t_64_sync+0x178/0x17c
[  182.990360] ---[ end trace 0000000000000000 ]---
[  183.012706] block ubiblock0_1: released
Volume ID 0, size 22 LEBs (5586944 bytes, 5.3 MiB), LEB size 253952 bytes (248.0 KiB), dynamic, name "kernel", alignment 1
[  183.095895] block ubiblock0_1: created from ubi0:1(rootfs)
Volume ID 1, size 29 LEBs (7364608 bytes, 7.0 MiB), LEB size 253952 bytes (248.0 KiB), dynamic, name "rootfs", alignment 1
Set volume size to 67297280
Volume ID 2, size 265 LEBs (67297280 bytes, 64.1 MiB), LEB size 253952 bytes (248.0 KiB), dynamic, name "rootfs_data", alignment 1
sysupgrade successful
umount: can't unmount /dev: Resource busy
umount: can't unmount /tmp: Resource busy
[  185.782702] reboot: Restarting system

I have also found sysupgrade.bin has installed 13 packages less than factory.ubi for some reason I do not yet understand. The 1st of the 13 packages listed below looks very important but it was removed?!?

  • ipq-wifi-arcadyan_aw1000 - 2024.04.26~644ba9ea-r1
  • kmod-gpio-nxp-74hc164 - 6.6.35-r1
  • kmod-mii - 6.6.35-r1
  • kmod-spi-bitbang - 6.6.35-r1
  • kmod-spi-gpio - 6.6.35-r1
  • kmod-usb-net - 6.6.35-r1
  • kmod-usb-net-qmi-wwan - 6.6.35-r1
  • kmod-usb-serial - 6.6.35-r1
  • kmod-usb-serial-option - 6.6.35-r1
  • kmod-usb-serial-wwan - 6.6.35-r1
  • kmod-usb-wdm - 6.6.35-r1
  • uqmi - 2024.04.24~e7207bec-r1
  • wwan - 2019.04.29-r6

no need to confirm what's already known - https://openwrt.org/releases/snapshot

Arcadyan AW1000 Telstra 5G Home Internet - #2 by frollic applies here too.

Instead, I have proceeded to installing a QWRT image - OpenWrt 21.02-SNAPSHOT, r47273-b4df38cf18, R23.8.10 (QSDK 12.1), please refer to my further post using other developer's knowledge and know how, in order for me to find out what essential packages that I need to get the device up and running!

How's that related to Openwrt ?