[Jetson Agx Orin] [OTA] [36.3] Failed to boot after OTA

Hi Nvidia team,

I’m trying to test OTA upgrade from 36.3 to 36.3 . The hardware I use is jetson agx orin P3701-0004 , and the software is downloaded from Sdkmanager.
The reference URL is:
https://docs.nvidia.com/jetson/archives/r36.3/DeveloperGuide/SD/SoftwarePackagesAndTheUpdateMechanism.html?highlight=ota#preparing-for-an-image-based-ota-update

My problem:

After updating the ota payload package, restart and get an error:


L4TLauncher: Attempting Recovery Boot
Android image header not seen
Failed to boot recovery:0 partition

Here is full log:
targetRebootLog.txt (39.6 KB)

Problem reproduction

First, I flash the target machine using flash.sh .


sudo ./flash.sh jetson-agx-orin-devkit internal

Then, I generate the payload using l4t_generate_ota_package
Here is my step to generate OTA payload


export BASE_BSP=/home/hostmachine/nvidia/nvidia_sdk/JetPack_6.0_Linux_JETSON_AGX_ORIN_TARGETS/Linux_for_Tegra/

sudo ./apply_binaries.sh 

export TARGET_BSP=/home/hostmachine/nvidia/nvidia_sdk/JetPack_6.0_Linux_JETSON_AGX_ORIN_TARGETS/Linux_for_Tegra/

sudo -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh jetson-agx-orin-devkit R36-3

ota_payload_package.tar.gz file size : 2.5G

Here is the log

output.txt (655.8 KB)

Operation on the target machine

ee@ee-desktop:~$ sudo mkdir /ota
ee@ee-desktop:~$ sudo cp ~/sd/home/rootf/ota_payload_package.tar.gz  /ota
ee@ee-desktop:~$ sync
ee@ee-desktop:~$ md5sum /ota/ota_payload_package.tar.gz
56f053f49b5160ee6ea6eb7da42d75fa  /ota/ota_payload_package.tar.gz
ee@ee-desktop:~$ sudo cp ~/sd/home/rootf/ota_tools_R36.3.0_aarch64.tbz2 /ota
ee@ee-desktop:~$ sync
ee@ee-desktop:~$ ll /ota
total 2588756
drwxr-xr-x  2 root root       4096 Jan  1 18:20 ./
drwxr-xr-x 20 root root       4096 Jan  1 18:16 ../
-rw-r--r--  1 root root 2650821326 Jan  1 18:18 ota_payload_package.tar.gz
-rw-r--r--  1 root root      46217 Jan  1 18:20 ota_tools_R36.3.0_aarch64.tbz2
ee@ee-desktop:~$ cd /ota
ee@ee-desktop:/ota$ sudo tar -xjpf ota_tools_R36.3.0_aarch64.tbz2
tar: Linux_for_Tegra/Tegra_Software_License_Agreement-Tegra-Linux.txt: time stamp 2024-04-24 23:27:14.237160436 is 1713931519.444671956 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/ota_multi_board_specs.sh: time stamp 2024-04-24 23:27:14.225159814 is 1713931519.432258086 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_run_tasks.sh: time stamp 2024-04-24 23:27:14.181157527 is 1713931519.388168119 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_common.func: time stamp 2024-04-24 23:27:14.149155865 is 1713931519.356026297 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/ota_backup_files_list.txt: time stamp 2024-04-24 23:27:14.23316023 is 1713931519.439946246 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_common_utils.func: time stamp 2024-04-24 23:27:14.161156488 is 1713931519.36787044 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/ota_validate_params.sh: time stamp 2024-04-24 23:27:14.237160436 is 1713931519.44381058 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/ota_board_specs.conf: time stamp 2024-04-24 23:27:14.23316023 is 1713931519.43973223 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_preserve_data.sh: time stamp 2024-04-24 23:27:14.181157527 is 1713931519.387659639 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh: time stamp 2024-04-24 23:27:14.14115545 is 1713931519.346959034 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_decompress_package.sh: time stamp 2024-04-24 23:27:14.157156281 is 1713931519.362732569 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_rootfs_updater.sh: time stamp 2024-04-24 23:27:14.173157112 is 1713931519.378375256 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_log.sh: time stamp 2024-04-24 23:27:14.165156697 is 1713931519.370302009 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_customer.conf: time stamp 2024-04-24 23:27:14.153156072 is 1713931519.358238152 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_update_implement.sh: time stamp 2024-04-24 23:27:14.217159398 is 1713931519.421948454 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_update_alt_part.func: time stamp 2024-04-24 23:27:14.209158983 is 1713931519.413638055 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/Image_based_OTA_Examples.txt: time stamp 2024-04-24 23:27:14.14115545 is 1713931519.345249146 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_update.sh: time stamp 2024-04-24 23:27:14.181157527 is 1713931519.385184439 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_start.sh: time stamp 2024-04-24 23:27:14.197158358 is 1713931519.401081398 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_update_rootfs_in_recovery.sh: time stamp 2024-04-24 23:27:14.189157943 is 1713931519.392948055 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_update_alt_part.sh: time stamp 2024-04-24 23:27:14.221159605 is 1713931519.424883797 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade/nv_ota_validate.sh: time stamp 2024-04-24 23:27:14.217159398 is 1713931519.420711654 s in the future
tar: Linux_for_Tegra/tools/ota_tools/version_upgrade: time stamp 2024-04-24 23:27:14.273162308 is 1713931519.476518916 s in the future
tar: Linux_for_Tegra/tools/ota_tools: time stamp 2024-04-24 23:27:14.133155034 is 1713931519.336423354 s in the future
tar: Linux_for_Tegra/tools: time stamp 2024-04-24 23:27:14.133155034 is 1713931519.336386426 s in the future
tar: Linux_for_Tegra: time stamp 2024-04-24 23:27:14.237160436 is 1713931519.440362164 s in the future
ee@ee-desktop:/ota$ cd Linux_for_Tegra/tools/ota_tools/version_upgrade/
ee@ee-desktop:/ota/Linux_for_Tegra/tools/ota_tools/version_upgrade$ ls
Image_based_OTA_Examples.txt  nv_ota_update_alt_part.func
l4t_generate_ota_package.sh   nv_ota_update_implement.sh
nv_ota_common.func            nv_ota_update_rootfs_in_recovery.sh
nv_ota_common_utils.func      nv_ota_update.sh
nv_ota_customer.conf          nv_ota_validate.sh
nv_ota_decompress_package.sh  nv_update_alt_part.sh
nv_ota_log.sh                 ota_backup_files_list.txt
nv_ota_preserve_data.sh       ota_board_specs.conf
nv_ota_rootfs_updater.sh      ota_multi_board_specs.sh
nv_ota_run_tasks.sh           ota_validate_params.sh
nv_ota_start.sh
a_start.sh  /ota/ota_payload_package.tar.gz _tools/version_upgrade$ sudo ./nv_ot
Command: ./nv_ota_start.sh /ota/ota_payload_package.tar.gz
Current rootfs is on /dev/mmcblk0
init_ota_log /ota_log
Creating log dir at /ota_log
Create log file at /ota_log/ota_19700101-182255.log
OTA_LOG_FILE=/ota_log/ota_19700101-182255.log
Extract /ota/ota_payload_package.tar.gz
update_nv_boot_control_in_rootfs /ota_work
3701--0004--1--jetson-agx-orin-devkit-
Info. Active boot storage: mmcblk0
TNSPEC 3701-500-0004-L.0-1-1-jetson-agx-orin-devkit-
COMPATIBLE_SPEC 3701--0004--1--jetson-agx-orin-devkit-
TEGRA_BOOT_STORAGE mmcblk0
TEGRA_CHIPID 0x23
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0
Info: Write TegraPlatformCompatSpec with 3701--0004--1--jetson-agx-orin-devkit-.
check_prerequisites
decompress_ota_package ota_package.tar /ota_work
decompress_ota_package: start at Thu Jan  1 06:23:23 PM EST 1970
Sha1 checksum for /ota_work/ota_package.tar (574dd086e885e0e2f2a73dfe35777ae9adf59daa) matches
decompress_ota_package: end at Thu Jan  1 06:23:36 PM EST 1970
nv_ota_update_implement.sh
Command: nv_ota_update_implement.sh
check_target_board /ota_work TARGET_BOARD
get_chip_id CHIP_ID
ota_choose_images /ota_work
COMPATIBLE_SPEC=3701--0004--1--jetson-agx-orin-devkit-
TEGRA_CHIPID=0x23
_BOARD_SPEC_NAME=3701--0004-
Copy files from ./images-R36-ToT/3701--0004-/ to ./images-R36-ToT/
is_rootfs_a_b_enabled ROOTFS_AB_ENABLED ROOTFS_CURRENT_SLOT
ROOTFS_AB_ENABLED=0
ROOTFS_CURRENT_SLOT=0
is_rootfs_encryption_enabled ROOTFS_ENC_ENABLED
ROOTFS_ENC_ENABLED=0
get_update_slot UPDATE_SLOT
UPDATE_SLOT=B
get_update_control /ota_work UPDATE_BOOTLOADER UPDATE_ROOTFS
UPDATE_BOOTLOADER=1, UPDATE_ROOTFS=1
check_bsp_version /ota_work BASE_VERSION
User release version in system: 0.0
User release version in OTA package: 0.0
User version is to be upgrade from 0.0 to 0.0
base_version=R36 ota_version=R36
update_misc_partitions /ota_work /ota_work/internal_device/images-R36-ToT
Updating misc partitions without layout change
install_partition_with_alt /ota_work/internal_device/images-R36-ToT recovery
prerequisite_check recovery
No image is specified for partition recovery
Skip updating recovery partition as no valid image is found
install_partition_with_alt /ota_work/internal_device/images-R36-ToT recovery-dtb
prerequisite_check recovery-dtb
No image is specified for partition recovery-dtb
Skip updating recovery-dtb partition as no valid image is found
install_partition_with_alt /ota_work/internal_device/images-R36-ToT esp
prerequisite_check esp
The /ota_work/internal_device/images-R36-ToT/esp.img for partition esp is not found
Skip updating esp partition as no valid image is found
update_rootfs /ota_work
update_rootfs_with_a_b_disabled /ota_work
update_rootfs_in_recovery /ota_work
force_booting_to_recovery
Force booting to recovery by writing \x07\x00\x00\x00\x03\x00\x00\x00 to UEFI variable L4TDefaultBootMode-781e084c-a330-417c-b678-38e696380cb9
dd if=/tmp/var_tmp.bin of=L4TDefaultBootMode-781e084c-a330-417c-b678-38e696380cb9 bs=8
1+0 records in
1+0 records out
8 bytes copied, 0.00235885 s, 3.4 kB/s
Rootfs is to be updated in recovery kernel once device is rebooted.
check_bootloader_version /ota_work
update_bootloader /ota_work
Bootloader on non-current slot(B) is to be updated once device is rebooted
clean_up_ota_files
ee@ee-desktop:/ota/Linux_for_Tegra/tools/ota_tools/version_upgrade$

Then, reboot , the above error will appear.

Did I overlook something, or is there something wrong with the operation? Please help me take a look on it.
Thanks!

Hi Pelva,

Are you using the devkit or custom board for AGX Orin 32GB?

Your steps look good to me.
Could you share the result of the following commands on your board?

$ sudo nvbootctrl dump-slots-info
$ cat /etc/nv_tegra_release

Do you have other AGX Orin module to verify like P3701-0000 or P3701-0005?

Hi KevinFFF,

I am using the devkit.

Since I can’t get into the system after OTA, this is the log I got after re-flash.

 sudo nvbootctrl dump-slots-info
[sudo] password for ee1:
Current version: 36.3.0
Capsule update status: 0
Current bootloader slot: A
Active bootloader slot: A
num_slots: 2
slot: 0,             status: normal
slot: 1,             status: normal

 cat /etc/nv_tegra_release
# R36 (release), REVISION: 3.0, GCID: 36191598, BOARD: generic, EABI: aarch64, DATE: Mon May  6 17:34:21 UTC 2024
# KERNEL_VARIANT: oot
TARGET_USERSPACE_LIB_DIR=nvidia
TARGET_USERSPACE_LIB_DIR_PATH=usr/lib/aarch64-linux-gnu/nvidia

Thank you for your reply, you reminded me, I will test it with another board.

I tested it with the new 32G AGX Orin module, and it still doesn’t work. I don’t have P3701-0000 or P3701-0005, so is there anything else I can try?

I tested it with 35.5 and it can be OTA normally.

 sudo nvbootctrl dump-slots-info
Current version: 35.5.0
Capsule update status: 0
Current bootloader slot: A
Active bootloader slot: A
num_slots: 2
slot: 0,             status: normal
slot: 1,             status: normal

cat /etc/nv_tegra_release
# R35 (release), REVISION: 5.0, GCID: 35550185, BOARD: t186ref, EABI: aarch64, DATE: Tue Feb 20 04:46:31 UTC 2024

Has anyone tested the 36.3 ota?

Do you mean that OTA from R35.5.0 to R35.5.0 working?
Or R35.5.0 to R36.3.0 working?

R35.5.0 to R35.5.0 is OK.
R35.5.0 to R36.3.0 not tested.

Try it later

Upgrading from R35.5.0 to R36.3.0 was successful; however, subsequent to this, I recreated the upgrade package for the transition from R36.3.0 to R36.3.0 itself. Upon restarting the system after applying this redundant update package, it became unresponsive and got stuck.

Here is the log.



Jetson System firmware version 36.3.0-gcid-36191598 date 2024-05-06T16:58:59+00:
00
ESC   to enter Setup.
F11   to enter Boot Manager Menu.
Enter to continue boot.

L4TLauncher: Attempting Recovery Boot
Failed to boot image: Invalid Parameter
Failed to boot recovery:1 partition
UEFI Interactive Shell v2.2
EDK II
UEFI v2.70 (EDK II, 0x00010000)
Mapping table
      FS2: Alias(s):HD2b:;BLK1:
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(1,GPT,4F106151-8751-4633-BA00-34D3A3B0741B,0x
2E8A40,0x73A7598)
      FS3: Alias(s):HD2k:;BLK2:
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(10,GPT,520C2C12-41B5-4F90-BAC1-F639BCF7DA67,0
xC8A28,0x20000)
      FS1: Alias(s):F1:
          MemoryMapped(0xB,0x82C800000,0x82CB1FFFF)
      FS0: Alias(s):F0:
          Fv(49A79A15-8F69-4BE7-A30C-A172F44ABCE7)
     BLK0: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)
    BLK16: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x1)
    BLK17: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x2)
     BLK8: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(2,GPT,2868663C-B46A-450F-9314-02381EC85533,0x
28,0x40000)
     BLK9: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(3,GPT,15CECBAA-CE93-4057-9BB0-8C56904E1D04,0x
40028,0x600)
    BLK10: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(4,GPT,39FC1ACD-6310-49B2-A794-45167CFDFD2E,0x
40628,0xFD00)
    BLK11: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(5,GPT,4CA79745-E798-4FD6-A46D-D267319E0E21,0x
50328,0x40000)
    BLK12: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(6,GPT,7B5C6C43-B68F-4717-A615-4F25D9950408,0x
90328,0x600)
    BLK13: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(7,GPT,567194F9-1CB8-46CE-9D1D-060258B12A06,0x
90928,0xFD00)
    BLK14: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(8,GPT,52B177B3-7FDA-4BBB-AEA9-C24368B90109,0x
A0628,0x28000)
    BLK15: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(9,GPT,5E3892E0-77A8-4CFC-A22D-8E771CF9A006,0x
C8628,0x400)
     BLK3: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(11,GPT,2FE81048-7215-4083-8D46-F86B162BE469,0
xE8A28,0x28000)
     BLK4: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(12,GPT,5A35D526-DAB4-423D-9228-E2186B6CDD26,0
x110A28,0x400)
     BLK5: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(13,GPT,3214C24D-95B6-40B4-9D0A-EC47902E712D,0
x110E28,0x20000)
     BLK6: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(14,GPT,27CC4C45-1FC3-4D3B-A9C4-75353FE13D7E,0
x130E40,0xC8000)
     BLK7: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3460000
,0x347FFFF)/eMMC(0x0)/Ctrl(0x0)/HD(15,GPT,54093C7B-E187-477B-9792-68042EB4BA26,0
x1F8E40,0xEFC00)
Press ESC in 5 seconds to skip startup.nsh or any other key to continue.
Shell>
Shell>
Shell>

UPDATE_BOOTLOADER=1, UPDATE_ROOTFS=1
..
No image is specified for partition recovery

I just checked your log again and curious about why you would update rootfs in the update from R36.3.0 to R36.3.0.

Please share the result of the following command on your board.

$ cat /ota_work/update_control

This is merely a functionality test for the Jetpack 6.0 OTA. If updating the rootfs fails when the same version is being updated, I would consider that abnormal.

Below is the output information from the cat command.

bootloader
rootfs

Hi Pelva,

We still can not reproduce your issue on the AGX Orin devkit from R36.3.0 to R36.3.0 including updating both rootfs and bootloader.

[   10.284829] Running nv_ota_update.sh
[   10.292647] ota_update_rootfs_in_recovery /dev/mmcblk0p1 /mnt/ota_work
[   10.293892] apply_files_for_base_recovery /mnt/ota_work
[   10.297536] _current_storage_device=/dev/mmcblk0p
[   10.299145] update_rootfs /mnt/ota_work /dev/mmcblk0p1 /mnt/ota_work/internal_device/system.img
_rootfs_p 10art.309] on  ro/mnta_s uk/iterntel_dmntce/systemork.img //nva_rdevootcblupd1 /atemnth

Please refer to out steps as following:

[Host]
$ BASE_BSP=${HOME}/Desktop/JEP/JetPack/JetPack-6.0_GA_AGX-Orin/Linux_for_Tegra
$ sudo -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh jetson-agx-orin-devkit R36-3
$ scp bootloader/jetson-agx-orin-devkit/ota_payload_package.tar.gz <username>@<ip address>:/home/nvidia/.
$ scp ota_tools_R36.3.0_aarch64.tbz2 <username>@<ip address>:/home/nvidia/.

[AGX-Orin]
$ tar xjpf ota_tools_R36.3.0_aarch64.tbz2
$ cd Linux_for_Tegra/tools/ota_tools/version_upgrade
$ sudo ./nv_ota_start.sh ~/ota_payload_package.tar.gz
$ sudo reboot

also attach the full serial console log for your reference.
r36.3-r36.3_AGX-Orin_Image-OTA_uart.log (190.0 KB)

still have same issue

Current update state: S4.
The recovery-dtb is already updated. Skip update process.
Updating recovery-dtb and recovery-dtb_alt partitions done
install_partition_with_alt /ota_work/internal_device/images-R36-ToT esp
prerequisite_check esp
The /ota_work/internal_device/images-R36-ToT/esp.img for partition esp is not found
Skip updating esp partition as no valid image is found
update_rootfs /ota_work
update_rootfs_with_a_b_enabled /ota_work
update_rootfs_runtime /ota_work B internal_device
Use rootfs updater: /ota_work/nv_ota_rootfs_updater.sh
Failed to find the APP_b partition
Failed to run "update_rootfs_runtime /ota_work B internal_device"
Failed to run "update_rootfs_with_a_b_enabled /ota_work"
Failed to run "update_rootfs /ota_work"

Your situation is different from mine. You have enabled AB partition OTA. First, you need to enable ROOTFS_AB when flashing the image. Then, you can use AB partition.

@Pelva I’m using this cmd to build OTA package, ROOTFS_AB enabled already:

sudo ROOTFS_AB=1 -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh ${TARGET_BOARD} ${BSP_VERSION}

There is nothing wrong with your command. What I mean is that when flashing the TARGET, enable the AB partition, such as ROOTFS_AB=1 flash.sh ...

@Pelva I run this cmd on target device to setup new package:

sudo ROOTFS_AB=1 ./nv_ota_start.sh /ota/ota_payload_package.tar.gz

This parameter is used for the board config to know which partition layout should be used.
You can check the board config for details.

Please enable redundant rootfs ab during flash and add “ROOTFS_AB=1” in the command when you are generating OTA payload from the host.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.