Install Balena OS to Compulab IMX8PLUS

Run the command:

sudo uuu -v -b emmc_all flash.bin.d2d4 debian-bullseye-arm64_iot-gate-imx8plus_live-img.img 

uuu (Universal Update Utility) for nxp imx chips -- lib1.4.193



Build in config:

	Pctl	 Chip		 Vid	 Pid	 BcdVersion

	==================================================

	SDPS:	 MX8QXP		 0x1fc9	 0x012f	 [0x0002..0xffff]

	SDPS:	 MX8QM		 0x1fc9	 0x0129	 [0x0002..0xffff]

	SDPS:	 MX8DXL		 0x1fc9	 0x0147

	SDPS:	 MX28		 0x15a2	 0x004f

	SDPS:	 MX815		 0x1fc9	 0x013e

	SDPS:	 MX865		 0x1fc9	 0x0146

	SDPS:	 MX8ULP		 0x1fc9	 0x014a

	SDPS:	 MX8ULP		 0x1fc9	 0x014b

	SDP:	 MX7D		 0x15a2	 0x0076

	SDP:	 MX6Q		 0x15a2	 0x0054

	SDP:	 MX6D		 0x15a2	 0x0061

	SDP:	 MX6SL		 0x15a2	 0x0063

	SDP:	 MX6SX		 0x15a2	 0x0071

	SDP:	 MX6UL		 0x15a2	 0x007d

	SDP:	 MX6ULL		 0x15a2	 0x0080

	SDP:	 MX6SLL		 0x1fc9	 0x0128

	SDP:	 MX7ULP		 0x1fc9	 0x0126

	SDP:	 MXRT106X	 0x1fc9	 0x0135

	SDP:	 MX8MM		 0x1fc9	 0x0134

	SDP:	 MX8MQ		 0x1fc9	 0x012b

	SDPU:	 SPL		 0x0525	 0xb4a4	 [0x0000..0x04ff]

	SDPV:	 SPL1		 0x0525	 0xb4a4	 [0x0500..0x9998]

	SDPV:	 SPL1		 0x1fc9	 0x0151	 [0x0500..0x9998]

	SDPU:	 SPL		 0x0525	 0xb4a4	 [0x9999..0x9999]

	SDPU:	 SPL		 0x3016	 0x1001	 [0x0000..0x04ff]

	SDPV:	 SPL1		 0x3016	 0x1001	 [0x0500..0x9998]

	FBK:	 		 0x066f	 0x9afe

	FBK:	 		 0x066f	 0x9bff

	FBK:	 		 0x1fc9	 0x0153

	FB:	 		 0x0525	 0xa4a5

	FB:	 		 0x18d1	 0x0d02

	FB:	 		 0x3016	 0x0001

	FB:	 		 0x1fc9	 0x0152



Run built-in script:

 

uuu_version 1.4.149



# @_flash.bin            | bootloader, which can extract from wic image

# @_image   [_flash.bin] | wic image burn to emmc.





# This command will be run when i.MX6/7 i.MX8MM, i.MX8MQ

SDP: boot -f flash.bin.d2d4 -scanlimited 0x800000



# This command will be run when ROM support stream mode

# i.MX8QXP, i.MX8QM

SDPS: boot -scanterm -f flash.bin.d2d4 -scanlimited 0x800000



# These commands will be run when use SPL and will be skipped if no spl

# SDPU will be deprecated. please use SDPV instead of SDPU

# {

SDPU: delay 1000

SDPU: write -f flash.bin.d2d4 -offset 0x57c00

SDPU: jump -scanlimited 0x800000

# }



# These commands will be run when use SPL and will be skipped if no spl

# if (SPL support SDPV)

# {

SDPV: delay 1000

SDPV: write -f flash.bin.d2d4 -skipspl -scanterm -scanlimited 0x800000

SDPV: jump -scanlimited 0x800000

# }





FB: ucmd setenv fastboot_dev mmc

FB: ucmd setenv mmcdev ${emmc_dev}

FB: ucmd mmc dev ${emmc_dev}

FB: flash -raw2sparse all debian-bullseye-arm64_iot-gate-imx8plus_live-img.img

FB: flash -scanterm -scanlimited 0x800000 bootloader flash.bin.d2d4

FB: ucmd if env exists emmc_ack; then ; else setenv emmc_ack 0; fi;

FB: ucmd mmc partconf ${emmc_dev} ${emmc_ack} 1 0

FB: done





Wait for Known USB Device Appear...

New USB Device Attached at 2:1

2:1>Start Cmd:SDPS: boot -scanterm -f flash.bin.d2d4 -scanlimited 0x800000

100%2:1>Okay (6.135s)

The compulab serial output when I run the command:

U-Boot SPL 2021.04-compulab-1.4 (Mar 16 2023 - 11:50:02 +0200)
pca9450@25 [ldo4][d] = 1v8
DDRINFO: EEPROM VALID DATA [ [ cafecafe ] = 1061010 4
DDRINFO(D): Samsung 4096MB @ 3200 MHz
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3200MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
DDRINFO(M): mr5-8 [ 0x1061010 ]
DDRINFO(E): mr5-8 [ 0x1061010 ]
Normal Boot
WDT:   Not starting
Trying to boot from BOOTROM
Find FIT header 0x&48020600, size 1124
Need continue download 1024
Download 1484208, total fit 1485744
NOTICE:  BL31: v2.6(release):compulab-2.0-0-g3c1583ba0
NOTICE:  BL31: Built : 21:55:14, Mar  4 2023


U-Boot 2021.04-compulab-1.4 (Mar 16 2023 - 11:50:02 +0200)

CPU:   i.MX8MP[8] rev1.1 1800 MHz (running at 1200 MHz)
Reset cause: POR
Model: CompuLab IOT-GATE-IMX8PLUS
DRAM:  4 GiB
WDT:   Not starting
MMC:   FSL_SDHC: 2
Loading Environment from MMC... MMC Device 0 not found
*** Warning - No MMC card found, using default environment

Fail to setup video link
In:    serial
Out:   serial
Err:   serial

 BuildInfo:
  - ATF 3c1583b

MMC Device 0 not found
no mmc device at slot 0
Detect USB boot. Will enter fastboot mode!
Net:   eth0: ethernet@30be0000 [PRIME], eth1: ethernet@30bf0000
Fastboot: Normal
Boot from USB for mfgtools
*** Warning - Use default environment for                                mfgtools
, using default environment

Run bootcmd_mfg: run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else booti ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
Hit any key to stop autoboot:  0

## Checking Image at 43800000 ...
Unknown image format!
Run fastboot ...

after that it stay stack.

Also add the device specifications:

Thank you for sharing the logs @Yosef , I relayed your response to Compulab. Do you have a gitub account so I can include you in the discussion with the maintainer at Provisioning reference image fails on iot-gate-imx8plus · Issue #23 · compulab-yokneam/meta-bsp-imx8mp · GitHub ?

1 Like

@Yosef did you read the github issue? Actually today Compulab created this https://github.com/compulab-yokneam/Documentation/blob/master/iot-gate-imx8mplus/balenaOS.adoc

Did you try?

Hi @Yosef, on our side we can see u-boot logs confirming that the image is being written using the method shared by Compulab. Even with a corrupt boot partition, we are able to flash both Compulab and also balenaOS images with the steps shared by Compulab: sudo uuu -v -b emmc_all flash.bin.d2d4 debian-bullseye-arm...

The u-boot output we got on the 4GB board is:

## Checking Image at 43800000 ...
Unknown image format!
Run fastboot ...
Detect USB boot. Will enter fastboot mode!
flash target is MMC:0
MMC Device 0 not found
invalid mmc device 0
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
Detect USB boot. Will enter fastboot mode!
flash target is MMC:2
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
switch to partitions #0, OK
mmc2(part 0) is current device
Detect USB boot. Will enter fastboot mode!
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
Starting download of 16776232 bytes
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
..........................................................................
.....................................................
downloading of 16776232 bytes finished
(NULL udevice *): request 0000000052f3eb00 was not queued to ep1in-bulk
writing to partition 'all'
sparse flash target is mmc:2
writing to partition 'all' for sparse, buffer size 16776232
Flashing sparse image at offset 0
Flashing Sparse Image
........ wrote 16776192 bytes to 'all'

Compulab maintainer suspects that on your side it could be a Host issue and recommends checking syslog, please see Provisioning reference image fails on iot-gate-imx8plus · Issue #23 · compulab-yokneam/meta-bsp-imx8mp · GitHub for details.

1 Like

Hi Yosef, did you manage to flash your unit or obtain system logs that can be shared with Compulab? Does switching to a different Ubuntu host PC solve the problem?

Hey @acostach ,
Compulab fixed the problem by remote control my PC

I see, so the issue was actually a Host PC problem. Glad to hear it got sorted!

Let us know if you need further help with the IOT-GATE-iMX8PLUS.

1 Like