Image-Based Over-the-Air Update question

hello 417383384,

please also share your steps in details for reference,

Steps Performed on the Host Machine.

  1. Set the environment variable BASE_BSP
    $ BASE_BSP=/home/nvidia_l4t/32_5_1/Linux_for_Tegra

  2. Get the package for the current release of Jetson Linux and unpack and apply its sample root filesystem
    $ tar xpf Tegra186_Linux_aarch64.tbz2
    $ cd Linux_for_Tegra/rootfs/
    $ sudo tar xpf
    $ cd …
    $ sudo ./

  3. Set the environment variable ToT_BSP

  4. Install the OTA tool package

  5. Set the environment variable ToT_BSP

  6. Generate the base recovery image and recovery DTB
    sudo ./tools/ota_tools/version_upgrade/ jetson-agx-xavier-devkit R32-5 ${BASE_BSP}/ ${BASE_BSP}/rootfs ${TARGET_BSP}

  7. Generate the OTA update payload package
    sudo ./tools/ota_tools/version_upgrade/ jetson-agx-xavier-devkit R32-5
    generate_base_recovery_image.txt (1.3 KB)
    generate_ota_update_payload_package.txt (257.7 KB)

Steps Performed on the Jetson Device
1.Review /boot/extlinux/extlinux.conf.
2.Download the OTA update tool packageand the OTA update payload package to the target board.
3.Create a directory to hold files generated in the OTA update process
4.Unpack ota_tools__aarch64.tbz2
5.Create a directory /ota/ and put the OTA update payload package ota_payload_package.tar.gz in it.
6.Unpack the OTA payload package and prepare to start OTA
start_ota.txt (10.1 KB)

Just want to confirm, is your board a custom board or a devkit?

Can you share the full boot log?

a devkit.
boot_log.txt (135.9 KB)

Hi 417383384,

We can’t reproduce your issue on Xavier.
OTA update from r32.5 to r32.6, after reboot, device can boot up success without problme.

List our steps for you reference:
[On Host]

$cd ${TARGET_BSP}/../
$tar xpf ${ToT_BSP}/../ota_tools_R32.6.1_aarch64.tbz2 -C ./
$cp ${ToT_BSP}/tools/ota_tools/version_upgrade/* ./tools/ota_tools/version_upgrade
$sudo ./tools/ota_tools/version_upgrade/ jetson-agx-xavier-devkit R32-5 ${BASE_BSP} ${BASE_BSP}/rootfs ${TARGET_BSP}
$sudo ./tools/ota_tools/version_upgrade/ jetson-agx-xavier-devkit R32-5

[On Xavier with r32.5.1 build]

1. Review /boot/extlinux/extlinux.conf:
"INITRD /boot/initrd" is set under the LINUX /boot/Image
"root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4" add into the APPEND line.
2. copy ota_tools_R32.6.1_aarch64.tbz2 and ota_payload_package.tar.gz to Xavier
$ WORKDIR=/home/nvidia/OTA
$ tar xpvf ota_tools_R32.6.1_aarch64.tbz2 $WORKDIR
$ sudo mkdir /ota
$ sudo cp ota_payload_package.tar.gz /ota
$ cd ${WORKDIR}/Linux_for_Tegra/tools/ota_tools/version_upgrade
$ sudo ./ /dev/mmcblk0 /ota/ota_payload_package.tar.gz
$ sudo reboot

Can you share the full boot log?

Hi 417383384,

Attached uart log for you reference.
OTA-update_Xavier_Uart.log (155.6 KB)

I tested it again, the kernel log is as follows:

Listening on LPF/eth0/48:b0:2d:2f:f0:93
Sending on LPF/eth0/48:b0:2d:2f:f0:93
Sending on Socket/fallback
DHCPDISCOVER on eth0 to port 67 interval 3 (xid=0xe8bcf14f)
[ 8.260000] hid-generic 0003:413C:2113.0002: input,hidraw1: USB HID v1.11 Keyboard [Dell KB216 Wired Keyboard] on usb-3610000.xhci-4.4/input0
[ 8.265185] input: Dell KB216 Wired Keyboard as /devices/3610000.xhci/usb1/1-4/1-4.4/1-4.4:1.1/0003:413C:2113.0003/input/input8
[ 8.323620] hid-generic 0003:413C:2113.0003: input,hidraw2: USB HID v1.11 Device [Dell KB216 Wired Keyboard] on usb-3610000.xhci-4.4/input1
[ 11.060851] eqos 2490000.ether_qos eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 11.062057] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
ERROR: eth0: timeout for obtaining IP address through DHCP
[ 38.330889] lib80211: common routines for IEEE802.11 drivers
[ 38.335347] vdd-1v8-cvb: disabling
[ 38.335461] vdd-1v8-sd: disabling
[ 38.335524] vdd-epb-1v0: disabling
[ 38.335586] avdd-cam-2v8: disabling
[ 38.335648] vdd-sata-1v5: disabling
[ 38.335708] vdd-1v8-slt: disabling
[ 38.335768] vdd-3v3-slt: disabling
[ 38.335824] vdd-fan: disabling
[ 38.335885] vdd_sys_en: disabling
[ 38.365684] dhd_module_init in
[ 38.366190] no wifi platform data, skip
[ 38.366311] DHD wifi platform data is required for Android build
[ 38.366466] dhd_module_init: Failed to load the driver, try cnt 0
[ 38.366575] dhd_module_init: Failed to load driver max retry reached**
insmod: ERROR: could not insert module /lib/modules/4.9.201-tegra/kernel/drivers/net/wireless/bcmdhd/bcmdhd.ko: Invalid parameters
Failed to install wifi module
ERROR: Network(ethernet & wireless) i��

Is it " vdd disable" problem?

Is it " vdd disable" problem?

If you ever read your kernel log before, you would know it is not a problem.

It looks like you process didn’t succeed. 4.9.201 is still the kernel version of r32.5.1.

Does the device need network connection during OTA upgrade

Hi 417383384,

Yes, please connect Ethernet to do the OTA upgrade.

May I ask why need to connect to Ethernet?
If I am not connected to Ethernet, will OTA upgrade fail?

What is the software release version that you downloaded in this step?

Get the package for the current release of Jetson Linux and unpack and apply its sample root filesystem
$ tar xpf Tegra186_Linux_ aarch64.tbz2

I mean, does Xavier need to connect to Ethernet? During OTA upgrade and reboot.

please check developer guide, Over-the-Air Update. you’ll need to communicate with the server (host machine) to trigger the OTA Process.


if you don’t have network enabled, you can modify the “” to comment the line “reboot_system”:

ota_log "enable_remote_access"

if ! enable_remote_access; then
        ota_log "Failed to run \"enable_remote_access\""

thank you. The problem is solved.

1 Like

If you’re not using Ethernet, what are you using for OTA upgrade?

Mobile Hard Disk of USB. Because I can’t connect to Ethernet.