Upgrading jetpack onto nvme without having to wipe out the system

I agx orin 64gb with 1tb nvme . How can I upgrade from one jetpack ie 5.1.1 to the latest 5.1.2 without using sdk manager. I have tried sdk manager with the os on the orin up and running but sdk manager cannot/will not connect to device. I have done a orin reset and reinstalled the latest jetpack OK but this wipes out the system completly.
I thought that as from jetpack 5.0 we could perfom over the air upgrades !!!
For what I can see the problem is the NVME the upgrade system doest not work or ever has. (I know the system is originally flashed to eMMC ) but what happens after that I don’t now.
I have also tried editing
then upgrading. this has never worked properly on my jetson xavier nx nor has it worked on the orin.
Surely there is a way to upgrade from one jetpacke to another without having to wipe out the system every time.

Hi paulrrh,

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

Are you boot from NVMe and use it as rootfs currently?

Could you share the result of lsblk on your board?

Hello KevinFFF
Thanks for you reply. The AGX orin 64gb is a Dev-kit
The results of lsblk follows:
loop0 7:0 0 64.8M 1 loop /snap/cups/981
loop1 7:1 0 68.5M 1 loop /snap/core22/861
loop2 7:2 0 4K 1 loop /snap/bare/5
loop3 7:3 0 151.3M 1 loop /snap/chromium/2573
loop4 7:4 0 464.7M 1 loop /snap/gnome-42-2204/122
loop5 7:5 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop6 7:6 0 46.4M 1 loop /snap/snapd/19459
loop7 7:7 0 16M 1 loop
mmcblk0 179:0 0 59.3G 0 disk
├─mmcblk0p1 179:1 0 55G 0 part
├─mmcblk0p2 179:2 0 128M 0 part
├─mmcblk0p3 179:3 0 768K 0 part
├─mmcblk0p4 179:4 0 31.6M 0 part
├─mmcblk0p5 179:5 0 128M 0 part
├─mmcblk0p6 179:6 0 768K 0 part
├─mmcblk0p7 179:7 0 31.6M 0 part
├─mmcblk0p8 179:8 0 80M 0 part
├─mmcblk0p9 179:9 0 512K 0 part
├─mmcblk0p10 179:10 0 64M 0 part
├─mmcblk0p11 179:11 0 80M 0 part
├─mmcblk0p12 179:12 0 512K 0 part
├─mmcblk0p13 179:13 0 64M 0 part
├─mmcblk0p14 179:14 0 400M 0 part
└─mmcblk0p15 179:15 0 479.5M 0 part
zram0 251:0 0 3.9G 0 disk [SWAP]
zram1 251:1 0 3.9G 0 disk [SWAP]
zram2 251:2 0 3.9G 0 disk [SWAP]
zram3 251:3 0 3.9G 0 disk [SWAP]
zram4 251:4 0 3.9G 0 disk [SWAP]
zram5 251:5 0 3.9G 0 disk [SWAP]
zram6 251:6 0 3.9G 0 disk [SWAP]
zram7 251:7 0 3.9G 0 disk [SWAP]
nvme0n1 259:0 0 931.5G 0 disk
├─nvme0n1p1 259:1 0 930.1G 0 part /
├─nvme0n1p2 259:2 0 128M 0 part
├─nvme0n1p3 259:3 0 768K 0 part
├─nvme0n1p4 259:4 0 31.6M 0 part
├─nvme0n1p5 259:5 0 128M 0 part
├─nvme0n1p6 259:6 0 768K 0 part
├─nvme0n1p7 259:7 0 31.6M 0 part
├─nvme0n1p8 259:8 0 80M 0 part
├─nvme0n1p9 259:9 0 512K 0 part
├─nvme0n1p10 259:10 0 64M 0 part
├─nvme0n1p11 259:11 0 80M 0 part
├─nvme0n1p12 259:12 0 512K 0 part
├─nvme0n1p13 259:13 0 64M 0 part
├─nvme0n1p14 259:14 0 400M 0 part
└─nvme0n1p15 259:15 0 479.5M 0 part


It should work with debian based OTA update from JP5.1.1(R35.3.1) to JP5.1.2(R35.4.1).
Please refer to the following instruction.
Software Packages and the Update Mechanism — Jetson Linux Developer Guide documentation (nvidia.com)

Please share the update log if there’s any issue during update.

Thanks again

The one and only time I managed using ota with xavier nx I did the following:-

I have never sucessfully executed OTA without errors and nobody hs managed to give me answers. Documentation is fine if it provides answers but mostly it does not.

Nobody has explained to me why upgrading using sdk manager with the operting system up and running orn the orin agx sdk manager does not connect

Re documentation —resources Jestson Linux 35.4.1. Release Notes


All I’m asking for is a system for upgrading that works which over the last couple of years I have not found a solution.


I have now tried to upgrade xavier nx which got to the end having answered yes to 3 questions. The process got to end to which I rebooted.

It now keeps saying
nvidia-l4t-bootloader Post Install Notification
reboot is required to complete the installation.

When I do the grub the menu says updating … until it gets to 11% then re-starts thus arriving at the Desktop.

dpkg-query --show nvidia-l4t-core
nvidia-l4t-core 35.4.1-20230801124926
Where do I go from Here as this is another different outcome trying to updagrade?

Sorry to be a pain but your systems seem to be far from perfect.

Do you have SD card on your board?
Do you boot from external NVMe drive and use it as rootfs?

I would need the full update log for further check.

Thanks again for your help.
There is NO sd card on board.
The nvme is internal and is used as rootfs
Unfortunatly there was an external usb nvme which is only used for backup attached at the time or ota.

These are two logs in /opt/ota_package/

kernel.log (2.7 KB)
kernel-dtb.log (2.7 KB)
Not sure where to find update log
Hope this helps

I would need the log showed on your serial console when you are doing debian based update.

There should be no “internal” nvme on the board…
You could share the result of lsblk command on your board.

Hello KevinFFF
My understanding of internal is connected to the nvme slot underneath the xavier NX developement kit apoliges for my misunderstanding.
Here is result of lsblk
paul@xavier-nx:~$ lsblk
loop0 7:0 0 151.2M 1 loop /snap/chromium/2558
loop1 7:1 0 59.2M 1 loop /snap/core20/1953
loop2 7:2 0 59.3M 1 loop /snap/core20/1977
loop3 7:3 0 68.5M 1 loop /snap/core22/821
loop4 7:4 0 68.5M 1 loop /snap/core22/861
loop5 7:5 0 64.8M 1 loop /snap/cups/963
loop6 7:6 0 64.8M 1 loop /snap/cups/981
loop7 7:7 0 334M 1 loop /snap/gnome-3-38-2004/141
loop8 7:8 0 464.7M 1 loop /snap/gnome-42-2204/127
loop9 7:9 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop10 7:10 0 46.4M 1 loop /snap/snapd/19459
loop11 7:11 0 56.7M 1 loop /snap/thonny/80
loop12 7:12 0 56.8M 1 loop /snap/thonny/86
loop13 7:13 0 151.3M 1 loop /snap/chromium/2573
loop14 7:14 0 334M 1 loop /snap/gnome-3-38-2004/145
loop15 7:15 0 464.7M 1 loop /snap/gnome-42-2204/122
loop16 7:16 0 46.4M 1 loop /snap/snapd/19365
loop17 7:17 0 4K 1 loop /snap/bare/5
loop18 7:18 0 16M 1 loop
zram0 251:0 0 856.1M 0 disk [SWAP]
zram1 251:1 0 856.1M 0 disk [SWAP]
zram2 251:2 0 856.1M 0 disk [SWAP]
zram3 251:3 0 856.1M 0 disk [SWAP]
nvme0n1 259:0 0 465.8G 0 disk
├─nvme0n1p1 259:1 0 465.2G 0 part /
├─nvme0n1p2 259:2 0 64M 0 part
├─nvme0n1p3 259:3 0 448K 0 part
├─nvme0n1p4 259:4 0 32M 0 part
├─nvme0n1p5 259:5 0 64M 0 part
├─nvme0n1p6 259:6 0 448K 0 part
├─nvme0n1p7 259:7 0 32M 0 part
├─nvme0n1p8 259:8 0 80M 0 part
├─nvme0n1p9 259:9 0 512K 0 part
├─nvme0n1p10 259:10 0 100M 0 part
├─nvme0n1p11 259:11 0 64M 0 part
├─nvme0n1p12 259:12 0 80M 0 part
├─nvme0n1p13 259:13 0 512K 0 part
└─nvme0n1p14 259:14 0 64M 0 part

Hope this helps !!
just as an asside
Software updates (other software) has got:-
https://repro.download.nvidia.com/jetson/common r35.4 main
https://repro.download.nvidia.com/jetson/t194 r35.4 main
the sotware updater is asking to update and & then reboot.

Apart from all this the system seems to be working.

It seems only NVMe on your board.

Do you try modify this and trigger OTA update with sudo apt update and sudo apt dist-upgrade?
Please share the full update logs.

Yes I said there was only nvme onboard !!!

No I did not modify anything.

All I did was
sudo vi /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
deb https://repo.download.nvidia.com/jetson/common r35.3 main
deb https://repo.download.nvidia.com/jetson/t194 r35.3 main
deb https://repo.download.nvidia.com/jetson/common r35.4 main
deb https://repo.download.nvidia.com/jetson/t194 r35.4 main
sudo apt update
sudo apt dist-upgrade
and answered any question with a yes

Today I spent all day getting system to work.
I am now running jetpack 5.1.1
using sdk manager in reset node ie pi 8&9
Jetpack 5.2 does not work with runtime it reverts to oem rendering the nvme useless . It does not come up with
app disk space when staring up on the jetson.
I also does not work when 5.1.1 is running and auto upgrading to 5.2 as it reverts to oem upgrade with the same result.
hence I now have system working only in 5.1.1

Here are the logs-------------------

SDKM_logs_2023-08-10_12-17-44.zip (741.3 KB)
sdk manager

SDKM_logs_2023-08-10_17-53-01.zip (568.1 KB)

Where do I go nexr???
You probably notice I do not give up easlly

It seems we are discussing about Xavier NX so that I’ve moved your topic to correct category.

We would need the full update log after you run this command on your board.

Do you mean that you could not flash JP5.1.2 to your board(only connect NVMe)?
If so, could you help to put a SD card on your board any try again?

And I think we should separate 2 topics as following:

  1. Debian based update failed issue from JP5.1.1 to JP5.1.2
  2. Flash JP5.1.2 with SDKM failed issue

Re:- sdk manger
I am a little confused.

Xavier NX in reset mode:-

flashing of jetpack 5.1.1 works fine using runtime with just nvme
flashing of jetpack 5.1.2 does not work using runtime as it seems to revert to oem reformating the nvme leaving most of a 500gb board unallocated

Xavier NX running jetpack 5.1.1
flashing (modify)5.1.2 while nx running 5,1.1 assumes oem hence the same problem as above.

All the above are sdkmanage problems flashing nvme only.

Why do I need to put sd card into xavier NX that seems to be going backwards 18mths !!

If you want me to try it I will but what do you want me to flash on sd card ?

Re: sudo apt dist-upgrade
Where will I find the log , or do I have to connect a serial cable to pc which also seem confusing for over the air update.

I look forward to you reply

Please refer to the following thread for the workaround about this issue.
JetPack 5.1.2/L4T 35.4.1 is now live - #9 by kayccc

Since there’s other partitions like bootloader, dtb…etc may be stored on the eMMC/SD. Just to verify if it would relate to your issue.

When you run apt dist-upgrade for debian based OTA update on your board(through serial console), there would be logs showed on your serial console. Please share them for further check.

Thanks for info;-
With all due respects the information makes no sense!

1: Flashed the device. If customer has flashed device before, skip this step.
2: Find the “nvsdkmanager_flash.sh” under “~/nvidia/nvidia_sdk//Linux_for_Tegra/” and replace the “flash_l4t_t194_nvme.xml” with “flash_l4t_external.xml”
Re-flash the device

There is no directory nvidia/nvidia_sdk /Linux_for_Tegra on my host machine only nvidia/nvidia_sdk/

It should read “~/nvidia/nvidia_sdk/Jetpack_5.1.2_Linux_JETSON_NX_TARGETS/Linux_for_tegra/”
This is because there 2 versions of JETSON-NX (5.1.1 & 5.1.2) TARGETS
and 2 versions of AGX_ORIN (5.1.1 & 5.1.2) TARGETS
and also Jetpack_5.1.1_Linux and Jetpack_5.1.2_linux directories

Yes, the directory should be…
~/nvidia/nvidia_sdk/<BSP for specific board>/Linux_for_Tegra/
It depends on which board and release you are using, the current issue happens with JP5.1.2.

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