OTA error at nvidia-l4t-bootloader update from JetPack 4.3 to JetPack 4.4

【Reproduction】

  1. Write nv-jetson-nano-sd-card-image-r32.3.1/sd-blob-b01.img into 32GB sd card.
  2. OTA update.
    https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3242/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide%2Fquick_start.html%23wwpID0E0LB0HA
  3. Error occurs.

after ubuntu launched,

sudo apt update
apt list --upgradable
sudo apt upgrade
sudo reboot

sudo vi /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
sudo apt update
sudo apt dist-upgrade

terminal log:

Setting up nvidia-l4t-apt-source (32.4.2-20200408182156) ...

Configuration file '/etc/apt/sources.list.d/nvidia-l4t-apt-source.list'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** nvidia-l4t-apt-source.list (Y/I/N/O/D/Z) [default=N] ? Y
Installing new version of config file /etc/apt/sources.list.d/nvidia-l4t-apt-source.list ...
Setting up nvidia-container-csv-cudnn (8.0.0.145-1+cuda10.2) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/cudnn.csv ...
Setting up jetson-gpio-common (2.0.8) ...
Setting up uff-converter-tf (7.1.0-1+cuda10.2) ...
Setting up nvidia-l4t-kernel (4.9.140-tegra-32.4.2-20200408182156) ...
Setting up fwupd (1.2.10-1ubuntu2~ubuntu18.04.3) ...
Installing new version of config file /etc/fwupd/daemon.conf ...
Installing new version of config file /etc/fwupd/remotes.d/lvfs-testing.conf ...
Installing new version of config file /etc/fwupd/remotes.d/lvfs.conf ...
Installing new version of config file /etc/fwupd/remotes.d/vendor.conf ...
Installing new version of config file /etc/fwupd/uefi.conf ...
fwupd-offline-update.service is a disabled or a static unit not running, not starting it.
Setting up libcudnn8-dev (8.0.0.145-1+cuda10.2) ...
update-alternatives: using /usr/include/aarch64-linux-gnu/cudnn_v8.h to provide /usr/include/cudnn.h (libcudnn) in manual mode
Setting up cuda-cusparse-10-2 (10.2.89-1) ...
Setting up cuda-cuobjdump-10-2 (10.2.89-1) ...
Setting up cuda-cusolver-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-oem-config (32.4.2-20200408182156) ...
Setting up cuda-misc-headers-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-weston (32.4.2-20200408182156) ...
Installing new version of config file /etc/xdg/weston/weston.ini ...
Setting up cuda-curand-10-2 (10.2.89-1) ...
Setting up cuda-cudart-10-2 (10.2.89-1) ...
Setting up cuda-npp-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-jetson-io (32.4.2-20200408182156) ...
Setting up cuda-cufft-dev-10-2 (10.2.89-1) ...
Setting up fwupdate (12-7~ubuntu18.04.3) ...
Setting up nvidia-l4t-kernel-dtbs (4.9.140-tegra-32.4.2-20200408182156) ...
Setting up nvidia-l4t-bootloader (32.4.2-20200408182156) ...
3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
Starting bootloader post-install procedure.
ERROR. Procedure for bootloader update FAILED.
Cannot install package. Exiting...
dpkg: error processing package nvidia-l4t-bootloader (--configure):
 installed nvidia-l4t-bootloader package post-installation script subprocess returned error exit status 1
Setting up cuda-libraries-10-2 (10.2.89-1) ...
Setting up cuda-memcheck-10-2 (10.2.89-1) ...
Setting up python3-jetson-gpio (2.0.8) ...
Setting up vpi (0.2.0) ...
update-alternatives: warning: alternative /opt/nvidia/vpi/vpi-0.1/lib/libnvvpi.so.0.1.0 (part of link group vpi) doesn't exist; removing from list of alternatives
update-alternatives: warning: /etc/alternatives/vpi is dangling; it will be updated with best choice
update-alternatives: using /opt/nvidia/vpi-0.2 to provide /opt/nvidia/vpi (vpi) in auto mode
Setting up cuda-nvrtc-dev-10-2 (10.2.89-1) ...
Setting up cuda-driver-dev-10-2 (10.2.89-1) ...
Setting up cuda-npp-dev-10-2 (10.2.89-1) ...
Setting up cuda-nvdisasm-10-2 (10.2.89-1) ...
Setting up cuda-nvml-dev-10-2 (10.2.89-1) ...
Setting up cuda-nvgraph-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-3d-core (32.4.2-20200408182156) ...
Setting up cuda-nvcc-10-2 (10.2.89-1) ...
Setting up python-jetson-gpio (2.0.8) ...
Setting up cuda-nvprof-10-2 (10.2.89-1) ...
Setting up cuda-cusparse-dev-10-2 (10.2.89-1) ...
Setting up cuda-compiler-10-2 (10.2.89-1) ...
Setting up fwupd-signed (1.10~ubuntu18.04.3+1.2.10-1ubuntu2~ubuntu18.04.3) ...
Setting up nvidia-l4t-kernel-headers (4.9.140-tegra-32.4.2-20200408182156) ...
Unpacking kernel headers...
Setting up cuda-curand-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-cuda (32.4.2-20200408182156) ...
Setting up nvidia-l4t-multimedia (32.4.2-20200408182156) ...
Setting up cuda-cusolver-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-camera (32.4.2-20200408182156) ...
Setting up vpi-dev (0.2.0) ...
update-alternatives: warning: alternative /opt/nvidia/vpi/vpi-0.1/include/vpi (part of link group vpi-dev) doesn't exist; removing from list of alternatives
update-alternatives: warning: /etc/alternatives/vpi-dev is dangling; it will be updated with best choice
update-alternatives: using /opt/nvidia/vpi-0.2/include/vpi to provide /usr/include/vpi (vpi-dev) in auto mode
Setting up libvisionworks (1.6.0.501) ...
Setting up cuda-gdb-10-2 (10.2.89-1) ...
Setting up libnvinfer7 (7.1.0-1+cuda10.2) ...
Setting up cuda-cudart-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-graphics-demos (32.4.2-20200408182156) ...
Setting up libvisionworks-sfm (0.90.4.501) ...
Setting up libvisionworks-dev (1.6.0.501) ...
Setting up libnvinfer-plugin7 (7.1.0-1+cuda10.2) ...
Setting up libvisionworks-tracking (0.88.2.501) ...
Setting up fwupdate-signed (12-7~ubuntu18.04.3) ...
Setting up libnvparsers7 (7.1.0-1+cuda10.2) ...
Setting up nvidia-l4t-gstreamer (32.4.2-20200408182156) ...
Setting up libnvonnxparsers7 (7.1.0-1+cuda10.2) ...
Setting up cuda-libraries-dev-10-2 (10.2.89-1) ...
Setting up python-libnvinfer (7.1.0-1+cuda10.2) ...
Setting up libnvinfer-doc (7.1.0-1+cuda10.2) ...
Setting up vpi-samples (0.2.0) ...
Setting up libnvinfer-bin (7.1.0-1+cuda10.2) ...
Setting up nvidia-container-csv-visionworks (1.6.0.501) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/visionworks.csv ...
Setting up cuda-samples-10-2 (10.2.89-1) ...
Setting up python3-libnvinfer (7.1.0-1+cuda10.2) ...
Setting up cuda-cupti-10-2 (10.2.89-1) ...
Setting up libvisionworks-samples (1.6.0.501) ...
Setting up libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-documentation-10-2 (10.2.89-1) ...
Setting up libvisionworks-sfm-dev (0.90.4.501) ...
Setting up libnvinfer-plugin-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-cupti-dev-10-2 (10.2.89-1) ...
Setting up libnvparsers-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-command-line-tools-10-2 (10.2.89-1) ...
Setting up libnvonnxparsers-dev (7.1.0-1+cuda10.2) ...
Setting up libvisionworks-tracking-dev (0.88.2.501) ...
Setting up python3-libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up python-libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-tools-10-2 (10.2.89-1) ...
Setting up libnvinfer-samples (7.1.0-1+cuda10.2) ...
Setting up tensorrt (7.1.0.16-1+cuda10.2) ...
Setting up cuda-toolkit-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-jetson-multimedia-api (32.4.2-20200408182156) ...
Setting up nvidia-container-csv-tensorrt (7.1.0.16-1+cuda10.2) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/tensorrt.csv ...
Setting up nvidia-container-csv-cuda (10.2.89-1) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/cuda.csv ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for dbus (1.12.2-1ubuntu1.1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Processing triggers for nvidia-l4t-kernel (4.9.140-tegra-32.4.2-20200408182156) ...
Errors were encountered while processing:
 nvidia-l4t-bootloader
E: Sub-process /usr/bin/dpkg returned an error code (1)

【log】

cat /opt/ota_package/bl_update_payload.log 

Error. Version number is corrupted. Exiting...
BLOB PATH:
/opt/ota_package/t21x/bl_update_payload

SPEC: 3448-300---1-0-jetson-nano-qspi-sd-mmcblk0p1
Compatible SPEC: 3448-300---1--jetson-nano-qspi-sd-mmcblk0p1

[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
VER number: 0 
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,063,232
VER_b number: 0
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,063,232
blob ver number: 320402
cat /etc/nv_boot_control.conf 

TNSPEC 3448-300---1-0-jetson-nano-qspi-sd-mmcblk0p1
COMPATIBLE_SPEC 3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
TEGRA_CHIPID 0x21
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0

md5sum result:

md5sum /usr/sbin/l4t_payload_updater_t210
166db10942db4df38311edfe28cc282e  /usr/sbin/l4t_payload_updater_t210

md5sum /opt/ota_package/t21x/bl_update_payload
aaacb4404caf5f5b126fc2569dccb5cd  /opt/ota_package/t21x/bl_update_payload

【Question】
I don’t understand what I made a mistake.
Does anyone know what I did wrong?

Thanks for report this issue. We will check.

1 Like

Hi naisy,

We can’t reproduce your issue.
Please make sure below two steps are correct:

$ sudo vi /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
Change the repository name and download URL in the deb commands:
deb https://repo.download.nvidia.com/jetson/common r32.4 main
deb https://repo.download.nvidia.com/jetson/t210 r32.4 main

Thank you for confirming that there are no problems.
I have confirmed that the repository is correct.

cat /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
deb https://repo.download.nvidia.com/jetson/common r32.4 main
deb https://repo.download.nvidia.com/jetson/t210 r32.4 main

I used Nano A02 and TOSHIBA 32GB sd card.
I will try other sd card.

Hi naisy,

Please try to use sdkmanager to flash your board first. It seems related to bootrom of this jetson Nano so changing the sdcard itself does not help.

Hi WayneWWW,
I have never flashed with sdkmanager on nano. I will try it.
Thank you.

Naisy,

You could also share the boot up log from uart console for us to confirm your bootrom version too, if you are not yet flashing it with sdkmanager.

As requested by @ WayneWWW

Copied from topic JetPack 4.4 Developer Preview - L4T R32.4.2 released

===
After following To upgrade to new minor release @ https://docs.nvidia.com/jetson/l4t/Tegra%20Linux%20Driver%20Package%20Development%20Guide/quick_start.html#wwpID0EVHA I just encountered an error at the end of the dist-upgrade process:

Setting up nvidia-l4t-bootloader (32.4.2-20200408182156) …

3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
Starting bootloader post-install procedure.
ERROR. Procedure for bootloader update FAILED.
Cannot install package. Exiting...
dpkg: error processing package nvidia-l4t-bootloader (--configure):
 installed nvidia-l4t-bootloader package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 nvidia-l4t-bootloader
E: Sub-process /usr/bin/dpkg returned an error code (1)

and

xxx:~$ sudo apt-get install nvidia-jetpack
Reading package lists... Done
Building dependency tree       
Reading state information... Done
nvidia-jetpack is already the newest version (4.4-b144).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up nvidia-l4t-bootloader (32.4.2-20200408182156) ...
3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
Starting bootloader post-install procedure.
ERROR. Procedure for bootloader update FAILED.
Cannot install package. Exiting...
dpkg: error processing package nvidia-l4t-bootloader (--configure):
 installed nvidia-l4t-bootloader package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 nvidia-l4t-bootloader
E: Sub-process /usr/bin/dpkg returned an error code (1)

Did someone encountered this error before, and if so, what was the solution?

I have to upgrade six boards. First dist-upgrade one was successful. The above encountered was my second board.

And my third + fourth board:

Errors were encountered while processing:
 nvidia-l4t-bootloader
E: Sub-process /usr/bin/dpkg returned an error code (1)

===

If you issue sudo apt autoremove the following error message is displayed/returned:

xxx:~$ sudo apt autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up nvidia-l4t-bootloader (32.4.2-20200408182156) ...

3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
Starting bootloader post-install procedure.
ERROR. Procedure for bootloader update FAILED...............................................] 
Cannot install package. Exiting...
dpkg: error processing package nvidia-l4t-bootloader (--configure):
 installed nvidia-l4t-bootloader package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 nvidia-l4t-bootloader
E: Sub-process /usr/bin/dpkg returned an error code (1)

Hi WayneWWW,
After I flashed with sdkmanager, I tried this procedure again.
This OTA update was successful.
Thank you so much!

Setting up nvidia-l4t-apt-source (32.4.2-20200408182156) ...

Configuration file '/etc/apt/sources.list.d/nvidia-l4t-apt-source.list'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** nvidia-l4t-apt-source.list (Y/I/N/O/D/Z) [default=N] ? Y
Installing new version of config file /etc/apt/sources.list.d/nvidia-l4t-apt-source.list ...
Setting up nvidia-container-csv-cudnn (8.0.0.145-1+cuda10.2) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/cudnn.csv ...
Setting up jetson-gpio-common (2.0.8) ...
Setting up uff-converter-tf (7.1.0-1+cuda10.2) ...
Setting up nvidia-l4t-kernel (4.9.140-tegra-32.4.2-20200408182156) ...
Setting up fwupd (1.2.10-1ubuntu2~ubuntu18.04.3) ...
Installing new version of config file /etc/fwupd/daemon.conf ...
Installing new version of config file /etc/fwupd/remotes.d/lvfs-testing.conf ...
Installing new version of config file /etc/fwupd/remotes.d/lvfs.conf ...
Installing new version of config file /etc/fwupd/remotes.d/vendor.conf ...
Installing new version of config file /etc/fwupd/uefi.conf ...
fwupd-offline-update.service is a disabled or a static unit not running, not starting it.
Setting up libcudnn8-dev (8.0.0.145-1+cuda10.2) ...
update-alternatives: using /usr/include/aarch64-linux-gnu/cudnn_v8.h to provide /usr/include/cudnn.h (libcudnn) in manual mode
Setting up cuda-cusparse-10-2 (10.2.89-1) ...
Setting up cuda-cuobjdump-10-2 (10.2.89-1) ...
Setting up cuda-cusolver-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-oem-config (32.4.2-20200408182156) ...
Setting up cuda-misc-headers-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-weston (32.4.2-20200408182156) ...
Installing new version of config file /etc/xdg/weston/weston.ini ...
Setting up cuda-curand-10-2 (10.2.89-1) ...
Setting up cuda-cudart-10-2 (10.2.89-1) ...
Setting up cuda-npp-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-jetson-io (32.4.2-20200408182156) ...
Setting up cuda-cufft-dev-10-2 (10.2.89-1) ...
Setting up fwupdate (12-7~ubuntu18.04.3) ...
Setting up nvidia-l4t-kernel-dtbs (4.9.140-tegra-32.4.2-20200408182156) ...
Setting up nvidia-l4t-bootloader (32.4.2-20200408182156) ...
3448-300---1--jetson-nano-qspi-sd-mmcblk0p1
Starting bootloader post-install procedure.
Update bootloader completed.
Reboot the target system for changes to take effect.
Setting up cuda-libraries-10-2 (10.2.89-1) ...
Setting up cuda-memcheck-10-2 (10.2.89-1) ...
Setting up python3-jetson-gpio (2.0.8) ...
Setting up vpi (0.2.0) ...
update-alternatives: warning: alternative /opt/nvidia/vpi/vpi-0.1/lib/libnvvpi.so.0.1.0 (part of link group vpi) doesn't exist; removing from list of alternatives
update-alternatives: warning: /etc/alternatives/vpi is dangling; it will be updated with best choice
update-alternatives: using /opt/nvidia/vpi-0.2 to provide /opt/nvidia/vpi (vpi) in auto mode
Setting up cuda-nvrtc-dev-10-2 (10.2.89-1) ...
Setting up cuda-driver-dev-10-2 (10.2.89-1) ...
Setting up cuda-npp-dev-10-2 (10.2.89-1) ...
Setting up cuda-nvdisasm-10-2 (10.2.89-1) ...
Setting up cuda-nvml-dev-10-2 (10.2.89-1) ...
Setting up cuda-nvgraph-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-3d-core (32.4.2-20200408182156) ...
Setting up cuda-nvcc-10-2 (10.2.89-1) ...
Setting up python-jetson-gpio (2.0.8) ...
Setting up cuda-nvprof-10-2 (10.2.89-1) ...
Setting up cuda-cusparse-dev-10-2 (10.2.89-1) ...
Setting up cuda-compiler-10-2 (10.2.89-1) ...
Setting up fwupd-signed (1.10~ubuntu18.04.3+1.2.10-1ubuntu2~ubuntu18.04.3) ...
Setting up nvidia-l4t-kernel-headers (4.9.140-tegra-32.4.2-20200408182156) ...
Unpacking kernel headers...
Setting up cuda-curand-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-cuda (32.4.2-20200408182156) ...
Setting up nvidia-l4t-multimedia (32.4.2-20200408182156) ...
Setting up cuda-cusolver-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-camera (32.4.2-20200408182156) ...
Setting up vpi-dev (0.2.0) ...
update-alternatives: warning: alternative /opt/nvidia/vpi/vpi-0.1/include/vpi (part of link group vpi-dev) doesn't exist; removing from list of alternatives
update-alternatives: warning: /etc/alternatives/vpi-dev is dangling; it will be updated with best choice
update-alternatives: using /opt/nvidia/vpi-0.2/include/vpi to provide /usr/include/vpi (vpi-dev) in auto mode
Setting up libvisionworks (1.6.0.501) ...
Setting up cuda-gdb-10-2 (10.2.89-1) ...
Setting up libnvinfer7 (7.1.0-1+cuda10.2) ...
Setting up cuda-cudart-dev-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-graphics-demos (32.4.2-20200408182156) ...
Setting up libvisionworks-sfm (0.90.4.501) ...
Setting up libvisionworks-dev (1.6.0.501) ...
Setting up libnvinfer-plugin7 (7.1.0-1+cuda10.2) ...
Setting up libvisionworks-tracking (0.88.2.501) ...
Setting up fwupdate-signed (12-7~ubuntu18.04.3) ...
Setting up libnvparsers7 (7.1.0-1+cuda10.2) ...
Setting up nvidia-l4t-gstreamer (32.4.2-20200408182156) ...
Setting up libnvonnxparsers7 (7.1.0-1+cuda10.2) ...
Setting up cuda-libraries-dev-10-2 (10.2.89-1) ...
Setting up python-libnvinfer (7.1.0-1+cuda10.2) ...
Setting up libnvinfer-doc (7.1.0-1+cuda10.2) ...
Setting up vpi-samples (0.2.0) ...
Setting up libnvinfer-bin (7.1.0-1+cuda10.2) ...
Setting up nvidia-container-csv-visionworks (1.6.0.501) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/visionworks.csv ...
Setting up cuda-samples-10-2 (10.2.89-1) ...
Setting up python3-libnvinfer (7.1.0-1+cuda10.2) ...
Setting up cuda-cupti-10-2 (10.2.89-1) ...
Setting up libvisionworks-samples (1.6.0.501) ...
Setting up libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-documentation-10-2 (10.2.89-1) ...
Setting up libvisionworks-sfm-dev (0.90.4.501) ...
Setting up libnvinfer-plugin-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-cupti-dev-10-2 (10.2.89-1) ...
Setting up libnvparsers-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-command-line-tools-10-2 (10.2.89-1) ...
Setting up libnvonnxparsers-dev (7.1.0-1+cuda10.2) ...
Setting up libvisionworks-tracking-dev (0.88.2.501) ...
Setting up python3-libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up python-libnvinfer-dev (7.1.0-1+cuda10.2) ...
Setting up cuda-tools-10-2 (10.2.89-1) ...
Setting up libnvinfer-samples (7.1.0-1+cuda10.2) ...
Setting up tensorrt (7.1.0.16-1+cuda10.2) ...
Setting up cuda-toolkit-10-2 (10.2.89-1) ...
Setting up nvidia-l4t-jetson-multimedia-api (32.4.2-20200408182156) ...
Setting up nvidia-container-csv-tensorrt (7.1.0.16-1+cuda10.2) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/tensorrt.csv ...
Setting up nvidia-container-csv-cuda (10.2.89-1) ...
Installing new version of config file /etc/nvidia-container-runtime/host-files-for-container.d/cuda.csv ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for dbus (1.12.2-1ubuntu1.1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Processing triggers for nvidia-l4t-kernel (4.9.140-tegra-32.4.2-20200408182156) ...
cat /opt/ota_package/bl_update_payload.log 
BLOB PATH:
/opt/ota_package/t21x/bl_update_payload

SPEC: 3448-300---1-0-jetson-nano-qspi-sd-mmcblk0p1
Compatible SPEC: 3448-300---1--jetson-nano-qspi-sd-mmcblk0p1

[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
VER number: 320301 
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,128,768
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,063,232
VER_b number: 320301
[R]eading 65,536 bytes of /dev/mtdblock0 at offset 4,063,232
blob ver number: 320402
[R]eading 196,608 bytes of /dev/mtdblock0 at offset 262,144
[R]eading 196,608 bytes of /dev/mtdblock0 at offset 524,288
BLOB HEADER:
       Magic: NVIDIA__BLOB__V2
     Version: 0x00020000
   Blob Size: 7,927,560 bytes
 Header Size: 40 bytes
 Entry Count: 50 partition(s)
        Type: 0 (0 for update, 1 for BMP)
Uncompressed
   Blob Size: 7,927,560 bytes
   Accessory: Not Present

ENTRY TABLE:
| part_name |  offset | part_size | version | op_mode |                      tnspec                      |
|     VER_b | 1885500 |       102 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT8 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|     NVC_R | 1885704 |    166544 |    2    |    0    |                                                  | 
|      BCT7 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT6 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT5 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT4 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT3 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|      BCT2 |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|       BCT |   57240 |     10240 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|       NVC | 1885704 |    166544 |    2    |    0    |                                                  | 
|       VER | 1885500 |       102 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|       RP1 | 1429432 |    216048 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|        PT | 1878123 |      2536 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|       TBC | 2052248 |     65760 |    2    |    0    |                                                  | 
|       EBT | 2118008 |    484304 |    2    |    0    |                                                  | 
|       WB0 | 2602312 |      3952 |    2    |    0    |                                                  | 
|       BPF | 2606264 |      3376 |    2    |    0    |                                                  | 
|       TOS | 2609640 |     54208 |    2    |    0    |                                                  | 
|       EKS | 2663848 |      1028 |    2    |    0    |                                                  | 
|       BMP | 2664876 |     70988 |    2    |    0    |                                                  | 
|       DTB | 4087576 |    216048 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
|       LNX | 6956808 |    485376 |    2    |    0    | 3448-300-0000--1-0-jetson-nano-qspi-sd-mmcblk0p1 | 
Note: only partitions updatable on this system are shown, use "-p" to show all partitions in payload.
Note: partitions are written to system top down in the order shown above.

Beginning update.

Updating partition: VER_b
[R]eading 102 bytes of /dev/mtdblock0 at offset 4,063,232
[E]rasing 65,536 bytes to /dev/mtdblock0 at offset 4,063,232
[W]riting 102 bytes to /dev/mtdblock0 at offset 4,063,232
[R]eading 102 bytes of /dev/mtdblock0 at offset 4,063,232
Verification successful.

Updating partition: BCT8
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 229,376
[E]raWarning. TBC partition data on system is identical to payload data. Skipping update.

Warning. EBT partition data on system is identical to payload data. Skipping update.

Warning. WB0 partition data on system is identical to payload data. Skipping update.

Warning. BPF partition data on system is identical to payload data. Skipping update.

sing 32,768 bytes to /dev/mtdblock0 at offset 229,376
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 229,376
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 229,376
Verification successful.

Updating partition: NVC_R
[R]eading 166,544 bytes of /dev/mtdblock0 at offset 524,288
[E]rasing 196,608 bytes to /dev/mtdblock0 at offset 524,288
[W]riting 166,544 bytes to /dev/mtdblock0 at offset 524,288
[R]eading 166,544 bytes of /dev/mtdblock0 at offset 524,288
Verification successful.

Updating partition: BCT7
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 196,608
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 196,608
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 196,608
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 196,608
Verification successful.

Updating partition: BCT6
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 163,840
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 163,840
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 163,840
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 163,840
Verification successful.

Updating partition: BCT5
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 131,072
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 131,072
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 131,072
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 131,072
Verification successful.

Updating partition: BCT4
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 98,304
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 98,304
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 98,304
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 98,304
Verification successful.

Updating partition: BCT3
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 65,536
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 65,536
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 65,536
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 65,536
Verification successful.

Updating partition: BCT2
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 32,768
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 32,768
[W]riting 10,240 bytes to /dev/mtdblock0 at offset 32,768
[R]eading 10,240 bytes of /dev/mtdblock0 at offset 32,768
Verification successful.

Note: BCT in block-0 is 2 times the usual size as it holds 2 copies.
Updating partition: BCT
[R]eading 20,480 bytes of /dev/mtdblock0 at offset 0
[E]rasing 32,768 bytes to /dev/mtdblock0 at offset 0
[W]riting 20,480 bytes to /dev/mtdblock0 at offset 0
[R]eading 20,480 bytes of /dev/mtdblock0 at offset 0
Verification successful.

Updating partition: NVC
[R]eading 166,544 bytes of /dev/mtdblock0 at offset 262,144
[E]rasing 196,608 bytes to /dev/mtdblock0 at offset 262,144
[W]riting 166,544 bytes to /dev/mtdblock0 at offset 262,144
[R]eading 166,544 bytes of /dev/mtdblock0 at offset 262,144
Verification successful.

Updating partition: VER
[R]eading 102 bytes of /dev/mtdblock0 at offset 4,128,768
[E]rasing 65,536 bytes to /dev/mtdblock0 at offset 4,128,768
[W]riting 102 bytes to /dev/mtdblock0 at offset 4,128,768
[R]eading 102 bytes of /dev/mtdblock0 at offset 4,128,768
Verification successful.

Updating partition: RP1
[R]eading 216,048 bytes of /dev/disk/by-partlabel/RP1 at offset 0
[E]rasing 458,752 bytes to /dev/disk/by-partlabel/RP1 at offset 0
[W]riting 216,048 bytes to /dev/disk/by-partlabel/RP1 at offset 0
[R]eading 216,048 bytes of /dev/disk/by-partlabel/RP1 at offset 0
Verification successful.

Updating partition: PT
[R]eading 2,536 bytes of /dev/mtdblock0 at offset 458,752
[E]rasing 65,536 bytes to /dev/mtdblock0 at offset 458,752
[W]riting 2,536 bytes to /dev/mtdblock0 at offset 458,752
[R]eading 2,536 bytes of /dev/mtdblock0 at offset 458,752
Verification successful.

Updating partition: TBC
[R]eading 65,760 bytes of /dev/disk/by-partlabel/TBC at offset 0
Updating partition: EBT
[R]eading 484,304 bytes of /dev/disk/by-partlabel/EBT at offset 0
Updating partition: WB0
[R]eading 3,952 bytes of /dev/disk/by-partlabel/WB0 at offset 0
Updating partition: BPF
[R]eading 3,376 bytes of /dev/disk/by-partlabel/BPF at offset 0
Updating partition: TOS
[R]eading 54,20Warning. BMP partition data on system is identical to payload data. Skipping update.

8 bytes of /dev/disk/by-partlabel/TOS at offset 0
[E]rasing 458,752 bytes to /dev/disk/by-partlabel/TOS at offset 0
[W]riting 54,208 bytes to /dev/disk/by-partlabel/TOS at offset 0
[R]eading 54,208 bytes of /dev/disk/by-partlabel/TOS at offset 0
Verification successful.

Updating partition: EKS
[R]eading 1,028 bytes of /dev/disk/by-partlabel/EKS at offset 0
[E]rasing 65,536 bytes to /dev/disk/by-partlabel/EKS at offset 0
[W]riting 1,028 bytes to /dev/disk/by-partlabel/EKS at offset 0
[R]eading 1,028 bytes of /dev/disk/by-partlabel/EKS at offset 0
Verification successful.

Updating partition: BMP
[R]eading 70,988 bytes of /dev/disk/by-partlabel/BMP at offset 0
Updating partition: DTB
[R]eading 216,048 bytes of /dev/disk/by-partlabel/DTB at offset 0
[E]rasing 458,752 bytes to /dev/disk/by-partlabel/DTB at offset 0
[W]riting 216,048 bytes to /dev/disk/by-partlabel/DTB at offset 0
[R]eading 216,048 bytes of /dev/disk/by-partlabel/DTB at offset 0
Verification successful.

Updating partition: LNX
[R]eading 485,376 bytes of /dev/disk/by-partlabel/LNX at offset 0
[E]rasing 485,376 bytes to /dev/disk/by-partlabel/LNX at offset 0
[W]riting 485,376 bytes to /dev/disk/by-partlabel/LNX at offset 0
[R]eading 485,376 bytes of /dev/disk/by-partlabel/LNX at offset 0
Verification successful.

Total data updatable for system: 23 partitions, 2,029,076 bytes.
   Total data written to system: 18 partitions, 1,400,696 bytes.

Update successful.
1 Like

Hi Naisy,

OTA (Over The Air): did you update remotely and solely via LAN (SDKManager on another computer/desktop/laptop)? Or is it still micro-usb?

Without resetting/configuring all from scratch?

I do use SDKManager for my Jetson AGX Xavier. So it could be a good alternative.

Update 16.50 GMT+2: Flashing at the moment with SDKManager via Micro-USB.
Update 2 17.40: Muhh… that did not went well. Board setup failed and dangling symlink ‘etc/resolv.conf’. Going the full SD card install route with full reconfiguration. Damn.
–> oops… made a mistake during use of SDKManager. Forgot to place a jumper on J40 pins 3 and 4 to enable Force Recovery Mode (FRC).

Hi remko.lems,
I did remote update. ssh login, and update from jetpack4.3 to jetpack 4.4.

1 Like

Hi remko.lems,

Actually the dmesg is not what I want. I want the boot up log.
Boot log does not contain only the kernel log but also the bootloader log. You have to use the UART serial console to dump such log.

This error comes because your board’s bootrom is not updated since you buy the jetson nano. Unfortunately, changing the sdcard image alone does not upgrade the bootrom. Thus, you have to use sdkmanager to help.

1 Like

Regarding bootrom … ahhh (epiphany moment) … that makes absolute sense. Thanks.

Note: I forgot to use a jumper temporarily on J40 pins 3+4 on my A02 board while flashing with SDKManager.

Flashing correctly now.

Update: it is working with a flash/full reinstall of SD card.

Hi,
I have the same issue after update from JetPack 4.3 to JetPack 4.4 on my Jetson Nano.

Hopefully I can avoid flashing / reinstalling the device.

dpkg: error processing package nvidia-l4t-bootloader (--configure):
installed nvidia-l4t-bootloader package post-installation script subprocess returned error exit status 1

Very likely, it’s related - I am running the Nano from a USB-memory stick, with the SD-card just required for booting as shown here.
The bootloader is on the SD-card, which is mounted, but cannot be installed/configured

The SDK-manager seems to require Ubuntu or similar, and I only have a Windows machine available …

Actually, you could think this of some kind of incompatible issues on some early-released device bootrom with latest sdcard image.

The only way to update bootrom on your side is the sdkmanager.

I bought my Nano Development Kit in January 2020, so I wonder why it has an ‘early-released device bootrom’ …

Anyway, it seems I have been able to solve the issue - although I don’t know how to confirm it 100%.

I re-flashed my SD-Card with the most recent image, configured it to run from an USB-stick as done before, plugged in my existing USB-stick, and everything (incl all my data and programs) seem back to normal.
Even the error-message when ‘sudo apt upgrade’ has disappeared.
A test of CUDA shows up and running.

Hi mictiemix,

I bought my Nano Development Kit in January 2020, so I wonder why it has an ‘early-released device bootrom’ …

It is not precise to tell what bootrom you are using by the time your bought the device.
The way to check the bootrom version is check the boot log from the serial console log.

Too complicated …, and anyway my device is working.

Nevertheless, maybe Nvidia can include some clearly visibly warnings that upgrading the JetPack might require re-flash of the device, and/or use of the SDK …

IMO, learning how to dump the serial console is necessary. You could see almost every forum user here uses this method to debug. Honestly speaking, this is the only method that could provide detailed log when something goes wrong on your device.

Nevertheless, maybe Nvidia can include some clearly visibly warnings that upgrading the JetPack might require re-flash of the device, and/or use of the SDK …

There are lots of ways to upgrading your system. OTA upgrade through deb package is a new way and starts recently.
Unfortunately it is not compatible with some Nano boards here and require you to use the old way (reflash) to do the upgrade.

Thanks, for the detailed info - will try!