SDKManager 2.0.0 File System and OS Install Error on WSL2 Ubuntu 22.04

Good news! But first, some information to help others. @DaveYYY, prior to your last response, I went with the flashing command per the documentation you directed me to. It did not work. Aside from being the wrong command, another problem was that the usb connection kept detaching & attaching during the flash process, and in the end, I received this error:


Waiting for target to boot-up…
Unknown device “/sys/class/net/bonding_masters”: No such device
Unknown device “/sys/class/net/bonding_masters”: No such device
Waiting for target to boot-up…
Timeout
Cleaning up…

.
.
To help others, let me summarize the goal and solution:

GOALS

  • Update/flash QSPI bootloader for new Nvidia Orin Nano Dev Kit to enable use of latest Jetpack 6.0 DP using a simple command line approach.
  • Avoid sdkmanager altogether (too many issues with Win10 WSL2).
  • Avoid purchasing separate dedicated Ubuntu machine
  • Separately, install Jetpack 6.0 on SD Card with SD Card Image method on Windows 10 (simple, fast, robust).
  • Use Windows 10 WSL2 with Ubuntu 22.04 without changing WSL2 kernels.
  • Only flash QSPI bootloader on Orin Nano Dev Kit WITHOUT the SD card installed.

APPROACH

  • Install WSL2 with Ubuntu 22.04. The following steps worked for me on a Win10.

  • Download and move the following files somewhere inside your WSL2 container
    https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v2.0/release/jetson_linux_r36.2.0_aarch64.tbz2
    https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v2.0/release/tegra_linux_sample-root-filesystem_r36.2.0_aarch64.tbz2

  • Download Nvidia flashing software from r36.2 developer guide

    • tar xf ${L4T_RELEASE_PACKAGE}
      sudo tar xpf ${SAMPLE_FS_PACKAGE} -C Linux_for_Tegra/rootfs/
      cd Linux_for_Tegra/
      sudo ./apply_binaries.sh
      sudo ./tools/l4t_flash_prerequisites.sh

  • Install additional USB related tools from Nvidia WSL Doc

    • Caution: for Win10 WSL with Ubuntu 22.04 the steps outlined in the documentation were not sufficient.
    • Specifically, it would not install the usbip tool
    • Without usbip, communication with the Orin Nano is impossible and flashing will not work.
  • Install ‘usbip’ tools from usbipd-win github page

    • Simplest installation of usbipd-win tools is to download the *.msi installer, double-click that file, and let it install it for you.
    • Check for the latest version. At the time of this writing, 4.0.0 was the latest
  • Put Orin Nano Dev Kit into Force Recovery Mode

  • Run Win10 PowerShell with Admin privileges.

    • in powershell, run usbipd list to list connected devices. This is my output:

    • PS C:\WINDOWS\system32> usbipd list
      Connected:
      BUSID VID:PID DEVICE STATE
      1-4 27b1:0001 USB Serial Device (COM4) Not shared
      1-9 0955:7523 APX Attached
      1-11 046d:c548 Logitech USB Input Device, USB Input Device Not shared
      1-12 046d:c52b Logitech USB Input Device, USB Input Device Not shared
      1-13 0b05:19af AURA LED Controller, USB Input Device Not shared
      1-14 8087:0026 Intel(R) Wireless Bluetooth(R) Not shared
      1-23 04e8:4001 USB Attached SCSI (UAS) Mass Storage Device Not shared

    • Orin Nano Dev Kit is the second entry (busid 1-9)

    • while still in powershell, run:

    • usbipd attach --busid 1-9 --auto-attach --wsl
      usbipd: info: Using WSL distribution ‘Ubuntu-22.04’ to attach; the device will be available in all WSL 2 distributions.
      usbipd: info: Using IP address 172.20.48.1 to reach the host.
      usbipd: info: Starting endless attach loop; press Ctrl+C to quit.

  • While Powershell runs in the background, open a WSL Ubuntu terminal window. DO NOT CLOSE POWERSHELL window.

  • In Ubuntu terminal, verify Orin Nano Dev Kit is attached with lsusb command

  • READY TO FLASH QSPI BOOTLOADER WITHOUT SD CARD INSTALLED

    • In Ubuntu terminal, change to Linux_for_Tegra directory

    • Flash command:

    • sudo ./flash.sh --no-systemimg -c bootloader/generic/cfg/flash_t234_qspi.xml jetson-orin-nano-devkit mmcblk0p1

    • On my system, process takes about 6 minutes

    • Orin Nano Dev Kit fan should start running prior to end of flash - this is a very good sign

    • Last few lines of flash process:

    • [ 453.1240 ] Bootloader version 01.00.0000
      [ 453.1302 ] Writing partition B_MEM_BCT with mem_coldboot_sigheader.bct.encrypt [ 243712 bytes ]
      [ 453.1303 ] […] 100%
      [ 456.1773 ] Flashing completed
      [ 456.1774 ] Coldbooting the device
      [ 456.1777 ] tegrarcm_v2 --chip 0x23 0 --ismb2
      [ 456.1779 ] MB2 version 01.00.0000
      [ 456.1828 ] Coldbooting the device
      [ 456.1830 ] tegrarcm_v2 --chip 0x23 0 --reboot coldboot
      [ 456.1832 ] MB2 version 01.00.0000
      *** The target generic has been flashed successfully. ***
      Reset the board to boot from internal eMMC.

    • Full flash output: log_flash2.txt (84.2 KB)

.
I hope this helps you.

Just a followup, I removed the jumper and got out of force-recovery-mode, inserted the SD Card imaged with Jetpack 6.0 DP (Win10 + Etcher), and fired up the Orin Nano Dev Kit. It booted properly, stepped through the first-time setup process, and I ran the following checks. I’m writing this message from my Orin Nano. Thank you for your help @DaveYYY.

:~$ sudo apt-cache show nvidia-jetpack
Package: nvidia-jetpack
Version: 6.0-b52
Architecture: arm64
Maintainer: NVIDIA Corporation
Installed-Size: 194
Depends: nvidia-jetpack-runtime (= 6.0-b52), nvidia-jetpack-dev (= 6.0-b52)

:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.3 LTS
Release: 22.04
Codename: jammy

6 Likes