ROOTer with ZBT Z8102AX-v2 128M has strange UBI errors

context:
Initially things went a bit wrong after I mistakenly flashed part of the bootloader... Then desoldered the NAND reprogramed the bootloader and resoldered. this was not supposed to happen... I know.. :upside_down_face:

So after messing around with ubiformat and the likes, I finally succeeded getting a ROOTer ZBT-Z8102AX-V2-GO2025-05-01-upgrade.bin firmware image on the device as suggested in this thread thread.

So now the device works, but I notice these UBI warnings in the log, hope someone might have a good hint.:

Bootlog: with the ROOter software:

U-Boot 2023.07 (Sep 20 2023 - 05:14:31 -0700)
...
ubi0: attaching mtd6
ubi0: scanning is finished
ubi0: attached mtd6 (name "ubi", size 114 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 916, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 0
ubi0: available PEBs: 0, total reserved PEBs: 916, PEBs reserved for bad PEB handling: 19
No size specified -> Using max size (4317184)
...
[    0.000000] Linux version 6.6.32 (root@a4f287c2f6f6) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 13.3.0 r0-fd463bb6) 13.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Sun Mar 30 13:34:41 2025
...
dmesg | grep ubi:

[    0.627739] 0x000000580000-0x0000077a0000 : "ubi"
[    1.094525] ubi0: default fastmap pool size: 45
[    1.099043] ubi0: default fastmap WL pool size: 22
[    1.103844] ubi0: attaching mtd4
[    1.862623] ubi0: scanning is finished
[    1.876261] ubi0 warning: ubi_eba_init: cannot reserve enough PEBs for bad PEB handling, reserved 14, need 19
[    1.886941] ubi0: attached mtd4 (name "ubi", size 114 MiB)
[    1.892466] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    1.899330] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    1.906111] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    1.913063] ubi0: good PEBs: 913, bad PEBs: 0, corrupted PEBs: 0
[    1.919056] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[    1.926272] ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 0
[    1.934615] ubi0: available PEBs: 0, total reserved PEBs: 913, PEBs reserved for bad PEB handling: 14
[    1.943831] ubi0: background thread "ubi_bgt0d" started, PID 550
[    1.945929] block ubiblock0_1: created from ubi0:1(rootfs)
[    1.955329] ubiblock: device ubiblock0_1 (rootfs) set to be root filesystem
[    6.368280] UBIFS (ubi0:2): Mounting in unauthenticated mode
[    6.374100] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 707
[    6.425614] UBIFS (ubi0:2): recovery needed
[    6.584739] UBIFS (ubi0:2): recovery completed
[    6.589253] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[    6.597093] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[    6.607001] UBIFS (ubi0:2): FS size: 93962240 bytes (89 MiB, 740 LEBs), max 751 LEBs, journal size 4698112 bytes (4 MiB, 37 LEBs)
[    6.618641] UBIFS (ubi0:2): reserved for root: 4438068 bytes (4334 KiB)
[    6.625247] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID 21BF3771-1D40-44AB-8D99-B415B59A93B1, small LPT model
[    6.638867] block: attempting to load /tmp/ubifs_cfg/upper/etc/config/fstab
[    6.658882] UBIFS (ubi0:2): un-mount UBI device 0
[    6.663617] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" stops
[    6.673734] UBIFS (ubi0:2): Mounting in unauthenticated mode
[    6.679485] UBIFS (ubi0:2): background thread "ubifs_bgt0_2" started, PID 710
[    6.775295] UBIFS (ubi0:2): UBIFS: mounted UBI device 0, volume 2, name "rootfs_data"
[    6.783155] UBIFS (ubi0:2): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[    6.793065] UBIFS (ubi0:2): FS size: 93962240 bytes (89 MiB, 740 LEBs), max 751 LEBs, journal size 4698112 bytes (4 MiB, 37 LEBs)
[    6.804707] UBIFS (ubi0:2): reserved for root: 4438068 bytes (4334 KiB)
[    6.811313] UBIFS (ubi0:2): media format: w5/r0 (latest is w5/r0), UUID 21BF3771-1D40-44AB-8D99-B415B59A93B1, small LPT model
[    6.934413] block: attempting to load /tmp/ubifs_cfg/upper/etc/config/fstab
[    6.948688] mount_root: switching to ubifs overlay
[   10.182658] mtdblock: MTD device 'ubi' is NAND, please consider using UBI block devices instead.
[   10.191559] mtdblock: MTD device 'ubi' is NAND, please consider using UBI block devices instead.
[   10.438970] /dev/ubiblock0_1: Can't open blockdev
[   10.449927] /dev/ubiblock0_1: Can't open blockdev
[   10.462978] /dev/ubiblock0_1: Can't open blockdev
[   10.468247] ubiblock0_1: Can't mount, would change RO state
[   10.474922] /dev/ubiblock0_1: Can't open blockdev
[   10.481203] /dev/ubiblock0_1: Can't open blockdev

Two problems possibly:

  1. U-Boot thinks the "ubi" partition size is:

    • MT7981> mtd list
      0x000000580000-0x000007800000 : "ubi"
    • ROOTer thinks it is: (see the above log)
      [ 0.627739] 0x000000580000-0x0000077a0000 : "ubi"
  2. And these messages got me worried:
    mtdblock: MTD device 'ubi' is NAND, please consider using UBI block devices instead.

Someone has some use-full pointers?

You need to ask for help in their (ROOter) forum.

1 Like

You can try if openwrt exhibits same problem

Yes indeed it is an issue with the ROOter firmware.
It looks cool BTW.

So I finally decided to re-flash with this patch included

That saved the NAND / ubi issues...

Bring that info to ROOTer?

Yes is is there on the forum..
Openwrt is more than sufficient for me.
I think the issue will solve itself once the DST patch that is in the openwrt tree for this device gets merged.

No idea, nothing to fix in OpenWrt, i thought you cared.