reinstallation of OS image with sdk manager

Hello,

I would like to install several instances of the nvidia_sdk for different projects. How can I get fresh installs using the sdkmanager? Everything I’ve tried still shows that the OS Image is installed in the sdk manager. I’ve been unable to find a reinstall option. I’ve tried:

  1. Reinstalling the sdk manager
  2. Moving and deleting the nvdia_sdk folder

Also, the “Target HW image folder” is always greyed out. How do I change the target folder?

Even with all of its problems, the installer for Jetpack 3.2 was much better. I’d like it if the Jetpack used a normal looking installer with typical installer features.

Thanks.

You have not mentioned which version you are using, but you will have a directory “~/nvidia/nvidia_sdk/”, and within that a “JetPack_…” with a version such as “4.2” or “4.2.1”, followed by “_Linux_P3310”. As an example I am going to use “~/nvidia/nvidia_sdk/JetPack4.2_Linux_P3310/Linux_for_Tegra/”, but adjust for your release case. This is the driver package. The “rootfs/” subdirectory is the sample rootfs package (plus apply_binaries.sh added to it).

If running this has resulted in downloading the flash software you will have some files in the driver package directory. You will also have an entire set of operating system files in the “rootfs/” subdirectory. If those are there (and they would be if you’ve reached the stage where flash could start), then you will be set with a simple command line. If not, then something got in the way of setup.

If you do have those files, then with the TX2 in recovery mode you can flash via this from the driver package directory:

sudo ./flash.sh jetson-tx2 mmcblk0p1

If recovery mode is correct, then you should see some output from:

lsusb -d -0955:7c18

I’m not sure what would go wrong where it doesn’t offer to flash from the GUI, but maybe there isn’t enough disk space. See if you have space of type ext4 at the driver directory:

df -H -T ~/nvidia/nvidia_sdk/JetPack4.2_Linux_P3310/Linux_for_Tegra/

If you use a VM on the host then there are a number of expected USB issues.

Hello,

Thanks for the quick reply. I didn’t do a very good job at explaining myself.

I’m using Jetpack 4.2.1 and what I would like to do is have multiple version of the JetPack_4.2.1_Linux_GA_P3310 folder. I’m using multiple JetPack_4.2.1_Linux_GA_P3310 folders to help with developing different interfaces including pinmuxes and device trees for different sets of hardware. I’m changing configuration files throughout the JetPack_4.2.1_Linux_GA_P3310 tree.

I would like to install a fresh pull of the JetPack_4.2.1_Linux_GA_P3310 folder.

Thanks.

The only way I know of to handle that would be to create a shell script to overwrite whatever files you want to change. I typically have an “overlay” directory for the “rootfs/” subdirectory, and prior to a flash, I do a recursive copy into the “rootfs/”. This includes things like network settings and ssh keys. A similar approach could be taken with device tree files.

I suppose the flash.sh script itself could be edited, but I wouldn’t recommend it. If you were to take that route, then I’d have flash.sh source a configuration for each setup you want.

I had the same need to have the SDK manager re-create the content of directory nvdia_sdk after it was flashed to the Nano. In my case I had modified the content of ~/nvidia/nvidia_sdk/JetPack_4.2.2_Linux_GA_P3448/Linux_for_Tegra and wanted a fresh version of it.

I found two solutions to get this to work:

  1. Remove content of directlory ~/.nvsdkm. This is the place where the SDK manager stores all setup related information. The downside of this is that you end up having to set up your user credentials again.

  2. Modify the SDK Manager database.

sudo apt-get install sqlitebrowser
sqlitebrowser ~/.nvsdkm/sdkm.db
In table "target_components" for entries "NV_L4T_DRIVERS_NANO_TX1_COMP" and "NV_L4T_FILE_SYSTEM_AND_OS_NANO_TX1_COMP" set column "status" to NULL

The second option just requires a restart of SDK Manager. After that it will show the Jetson OS image as not installed, when starting the installation it will re-create it.

4 Likes

I had the the same issue and the best way to fix it is by deleting the setting of the SDKmanager.

To do that open Terminal and run the following commands:

$ cd ~/.nvsdkm/

$ rm sdkm.db

now open SDKmanager and ready to go.

13 Likes