ConnectCore 6UL SBC Pro 1GB Installation error (ERROR: Could not mount 'update' partition, volume not found)

I’ve performed 256MB and 1GB installs on our ConnectCore 6UL SBC Pros (we have one of each board at the moment) using the instructions at https://www.digi.com/resources/documentation/digidocs/embedded/dey/3.0/cc6ul/yocto-gs_t_program-fw (I used the ConnectCore 6UL SBC Pro .zip file for both).

The 256MB board install went well but the 1GB board installation failed with error message:
“ERROR: Could not mount ‘update’ partition, volume not found”

Here’s the tail messages snippet before rebooting:

ubi2: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi2: good PEBs: 3576, bad PEBs: 0, corrupted PEBs: 0
ubi2: user volume: 0, internal volumes: 1, max. volumes count: 128
ubi2: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 4084596699
ubi2: available PEBs: 3410, total reserved PEBs: 166, PEBs reserved for bad PEB handling: 160
ubi2: background thread “ubi_bgt2d” started, PID 186
ERROR: Could not mount ‘update’ partition, volume not found
ubi2: detaching mtd6
ubi2: mtd6 is detached
rmdir: ‘/mnt/update’: No such file or directory
[RECOVERY] Starting recovery…
[RECOVERY] [ERROR] No command found
[RECOVERY] The system will now reboot in 10 seconds

Is it possible that the update partition is NOT created/included in the 1GB u-boot-ccimx6ulsbc1GB.imx file?

do you have update partition? What is your partition table right now? where did you put the update file?

Yes I do have an “update” partition, see log extract below.

What “update file” are you referring to?

I unzipped the .zip file and put the contents in the root of an SD card and the initial firmware flash appears to be successful. The “Rebooting into recovery mode for final deployment.” is where the error is reported.


  • Warning: Booting into recovery mode… *

Hit any key to stop autoboot: 1 … 0
=> run install_linux_fw_sd
reading install_linux_fw_sd.scr
4798 bytes read in 16 ms (292 KiB/s)

Executing script at 80800000

############################################################

Linux firmware install from micro SD

############################################################

This process will erase your NAND and will install a new
U-Boot and Linux firmware images on the NAND.

Press CTRL+C now if you wish to abort or wait 10 seconds
to continue.

>> Installing U-Boot boot loader (target will reset)

reading u-boot-ccimx6ulsbc1GB.imx
728064 bytes read in 48 ms (14.5 MiB/s)
Writing bootstream…OK
Saving Environment to NAND…
Erasing redundant NAND…

Erasing at 0x320000 – 100% complete.
Writing to redundant NAND… OK
resetting …

U-Boot dub-2017.03-r7.1+g72f9d767ff (Oct 23 2020 - 16:31:41 +0000)

CPU: Freescale i.MX6UL rev1.2 528 MHz (running at 396 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 45C
Reset cause: POR
I2C: ready
DRAM: 1 GiB
MCA: HW_VER=1 FW_VER=1.14
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
NAND: 1024 MiB
MMC: FSL_SDHC: 0
In: serial
Out: serial
Err: serial
Model: Digi International ConnectCore 6UL SBC.
ConnectCore 6UL SOM variant 0x04: Industrial Ultralite 528MHz, 1GB NAND, 1GB DDR3, -40/+85C, Wireless, Bluetooth
Board: ConnectCore 6UL SBC Pro, version 3, ID 136
Boot device: NAND
Net: FEC0 [PRIME]


  • Warning: Booting into recovery mode… *

Hit any key to stop autoboot: 0

Resetting to default environment

oldval: 00:04:F3:1B:83:98 defval: 00:04:f3:ff:ff:fa

Error: Can’t overwrite “ethaddr”

himport_r: can’t insert “ethaddr=00:04:f3:ff:ff:fa” into hash table
oldval: 00:04:F3:1B:83:9A defval: 00:04:f3:ff:ff:fb

Error: Can’t overwrite “wlanaddr”

himport_r: can’t insert “wlanaddr=00:04:f3:ff:ff:fb” into hash table
oldval: 00:04:F3:1B:83:9B defval: 00:04:f3:ff:ff:fc

Error: Can’t overwrite “btaddr”

himport_r: can’t insert “btaddr=00:04:f3:ff:ff:fc” into hash table
oldval: 00:04:F3:1B:83:99 defval: 00:04:f3:ff:ff:fd

Error: Can’t overwrite “eth1addr”

himport_r: can’t insert “eth1addr=00:04:f3:ff:ff:fd” into hash table
Saving Environment to NAND…
Erasing NAND…

Erasing at 0x300000 – 100% complete.
Writing to NAND… OK

>> Installing Linux kernel and device tree files

NAND erase.part: device 0 offset 0x900000, size 0x1800000

Erasing at 0x900000 – 0% complete.
:
Erasing at 0x20e0000 – 100% complete.
OK
reading dey-image-qt-x11-ccimx6ulsbc.boot.ubifs
8634368 bytes read in 382 ms (21.6 MiB/s)

NAND erase.part: device 0 offset 0x900000, size 0x1800000

Erasing at 0x900000 – 0% complete.
:
Erasing at 0x20e0000 – 100% complete.
OK
:
:
ubi0: available PEBs: 180, total reserved PEBs: 12, PEBs reserved for bad PEB handling: 8
No size specified -> Using max size (22855680)
Creating dynamic volume linux of size 22855680
8634368 bytes written to volume linux
Verifying firmware…
Update was successful

>> Installing recovery

NAND erase.part: device 0 offset 0x2100000, size 0x2000000

Erasing at 0x2100000 – 0% complete.
:
Erasing at 0x40e0000 – 100% complete.
OK
reading dey-image-qt-x11-ccimx6ulsbc.recovery.ubifs
12697600 bytes read in 554 ms (21.9 MiB/s)

NAND erase.part: device 0 offset 0x2100000, size 0x2000000

Erasing at 0x2100000 – 0% complete.
:
Erasing at 0x40e0000 – 100% complete.
OK
ubi0: detaching mtd1
:
:
ubi0: available PEBs: 241, total reserved PEBs: 15, PEBs reserved for bad PEB handling: 11
No size specified -> Using max size (30601216)
Creating dynamic volume recovery of size 30601216
12697600 bytes written to volume recovery
Verifying firmware…
Update was successful

>> Installing Linux root file system

NAND erase.part: device 0 offset 0x4100000, size 0x20000000

Erasing at 0x4100000 – 0% complete.
:
Erasing at 0x240e0000 – 100% complete.
OK
reading dey-image-qt-x11-ccimx6ulsbc.ubifs
111992832 bytes read in 4770 ms (22.4 MiB/s)

NAND erase.part: device 0 offset 0x4100000, size 0x20000000

Erasing at 0x4100000 – 0% complete.
:
Erasing at 0x240e0000 – 100% complete.
OK
ubi0: detaching mtd1
:
:
ubi0: available PEBs: 3932, total reserved PEBs: 164, PEBs reserved for bad PEB handling: 160
No size specified -> Using max size (499269632)
Creating dynamic volume rootfs of size 499269632
111992832 bytes written to volume rootfs
Verifying firmware…
Update was successful

Saving Environment to NAND…
Erasing redundant NAND…

Erasing at 0x320000 – 100% complete.
Writing to redundant NAND… OK

>> Firmware installation complete. Rebooting into recovery mode for final deployment.

resetting …

U-Boot dub-2017.03-r7.1+g72f9d767ff (Oct 23 2020 - 16:31:41 +0000)

CPU: Freescale i.MX6UL rev1.2 528 MHz (running at 396 MHz)
:
Model: Digi International ConnectCore 6UL SBC.
ConnectCore 6UL SOM variant 0x04: Industrial Ultralite 528MHz, 1GB NAND, 1GB DDR3, -40/+85C, Wireless, Bluetooth
Board: ConnectCore 6UL SBC Pro, version 3, ID 136
Boot device: NAND
Net: FEC0 [PRIME]


  • Warning: Booting into recovery mode… *

Hit any key to stop autoboot: 1 … 0
ubi0: attaching mtd1
:
:
ubi0: available PEBs: 0, total reserved PEBs: 256, PEBs reserved for bad PEB handling: 11
Loading file ‘boot.scr’ to addr 0x80800000…
Done

Executing script at 80800000

Skipping mounting already mounted ubifs fs
Loading file ‘zImage-ccimx6ulsbc.bin’ to addr 0x80800000…
Done
Skipping mounting already mounted ubifs fs
Loading file ‘imx6ul-ccimx6ulsbc-id136.dtb’ to addr 0x83000000…
Done
Skipping mounting already mounted ubifs fs
Loading file ‘uramdisk-recovery.img’ to addr 0x83800000…
Done
Kernel image @ 0x80800000 [ 0x000000 - 0x696f70 ]

Loading init Ramdisk from Legacy Image at 83800000 …

Image Name: dey-image-recovery-initramfs-cci
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 3887095 Bytes = 3.7 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum … OK

Flattened Device Tree blob at 83000000

Booting using the fdt blob at 0x83000000
Using Device Tree in place at 83000000, end 83010686
ft_system_setup for mx6
switch to ldo_bypass mode!

Starting kernel …

Booting Linux on physical CPU 0x0
:
:
mem auto-init: stack:off, heap alloc:off, heap free:off
Memory: 953764K/1048576K available (9216K kernel code, 374K rwdata, 2912K rodata, 1024K init, 408K bss, 29276K reserved, 65536K cma-reserved, 0K highmem)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
:
:
nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 128
Scanning device for bad blocks
7 cmdlinepart partitions found on MTD device gpmi-nand
Creating 7 MTD partitions on “gpmi-nand”:
0x000000000000-0x000000500000 : “bootloader”
0x000000500000-0x000000800000 : “environment”
0x000000800000-0x000000900000 : “safe”
0x000000900000-0x000002100000 : “linux”
0x000002100000-0x000004100000 : “recovery”
0x000004100000-0x000024100000 : “rootfs”
0x000024100000-0x000040000000 : “update”
:
:
Freeing unused kernel memory: 1024K
Run /init as init process
:
:
ubi2: background thread “ubi_bgt2d” started, PID 186
ERROR: Could not mount ‘update’ partition, volume not found
ubi2: detaching mtd6
ubi2: mtd6 is detached
rmdir: ‘/mnt/update’: No such file or directory
[RECOVERY] Starting recovery…
[RECOVERY] [ERROR] No command found

When I abort the update and log in, I can see the “update” partition":

=> mtdparts

device nand0 , # parts = 7
#: name…size…offset…mask_flags
0: bootloader 0x00500000.0x00000000.0
1: environment 0x00300000.0x00500000.0
2: safe 0x00100000.0x00800000.0
3: linux 0x01800000.0x00900000.0
4: recovery 0x02000000.0x02100000.0
5: rootfs 0x20000000.0x04100000.0
6: update 0x1bf00000.0x24100000.0

active partition: nand0,0 - (bootloader) 0x00500000 @ 0x00000000

defaults:
mtdids : nand0=gpmi-nand
mtdparts: none

https://forums.digi.com/68421/change-partition-software-update-issues-related-partition

and

https://forums.digi.com/68374/how-to-firmware-update-dey-image-tiny?show=68386#a68386

had similar “ERROR: Could not mount ‘update’ partition, volume not found” messages. They don’t appear to have been resolved either?

I don’t think we have ever seen this issue. There is one thing odd in your log: U-Boot is already configured for booting in recovery mode when you run the install script.
I don’t know if this could have anything to do with the issue.
I would re-try doing the following:

  1. Reset the environment and save it:

    => env reset -a
    => saveenv

  2. Restart the device.

  3. Run the install script.

    => run install_linux_fw_sd

if you still have an issue with this, please open a support ticket by forwarding the contents of this thread to tech.support@digi.com

one more thing to try erasing the ‘update’ partition.

=> nand erase.part update

If the partition table had been manually modified, we have seen occasionally that a pre-existing UBI volume on the ‘update’ partition could cause problems.

those do not seem to be related. Have you tried to erase the update partition?