NVIDIA Jetson AGX Thor - Flashing the Board from Command Line

From RidgeRun Developer Wiki

Follow Us On Twitter LinkedIn Email Share this page





Previous: JetPack_7.0/Compiling_Code Index Next: JetPack_7.0/Flashing_Board_USB









This section describes the command-line workflows available to flash the Jetson AGX Thor Developer Kit using JetPack 7.0. Flashing installs the Linux for Tegra OS image, bootloader, and optional SDK components into the selected storage device (NVMe).

Flashing Methods Overview

Jetson AGX Thor supports the following three methods for flashing:

Table 1: Supported Flashing Workflows
Method Description Notes
Initrd-based flash Modern method using l4t_initrd_flash.sh to generate and deploy prebuilt images Automatically applies binaries and handles default user setup
Convenient SDK wrapper Simplified flashing via nvsdkmanager_flash.sh script Wraps the full SDK Manager workflow and auto-detects devices
Standard flash.sh Manual control over image flashing using flash.sh Requires apply_binaries.sh if used


Note
Jetson AGX Thor only supports booting from NVMe. eMMC, USB, and SD Card boot are not supported by default.


Assumptions

  1. You have JetPack 7.0 installed on your host in the default directory.
  2. You have not manually moved OS components or modified the JetPack installation paths.

Step 1: Set Up Environment

export DEVDIR=$HOME/nvidia/nvidia_sdk/JetPack_7.0_Linux_JETSON_AGX_THOR_TARGETS/Linux_for_Tegra
cd $DEVDIR

Step 2: Put the Board in Recovery Mode

To flash Jetson Thor, it must be placed in Force Recovery Mode. Use the following steps and Figure 1:

Jetson Thor front buttons
Figure 1. Jetson Thor AGX devkit front buttons
  1. Ensure the device is connected to the power adapter, but powered off.
  2. Connect USB-C cable between your host computer and Thor's USB-C port.
  3. Press and hold the middle button (Force Recovery).
  4. While holding the Force Recovery button, press and hold the left button (Power).
  5. Release both buttons.

To verify the device is in recovery mode, run:

lsusb

If Jetson Thor is in recovery mode, you'll see a line like:

Bus 001 Device 011: ID 0955:7026 NVIDIA Corp. APX


Note
Note: Product ID 7026 corresponds to Jetson AGX Thor (P3834-0008).


Step 3: Run Flash Prerequisites

Install the flash prerequisites:

sudo ./tools/l4t_flash_prerequisites.sh


Flashing Method 1: Using `l4t_initrd_flash.sh` (Recommended)

This is the preferred and most robust method for Jetson AGX Thor.

sudo ./l4t_initrd_flash.sh jetson-agx-thor-devkit internal

This command will:

  • Prepare and flash the root filesystem image
  • Apply NVIDIA binaries automatically

At the end of the process you should see the following message in your terminal:

[flash_bsp_jetson-t264]: Flashing finished Successfully!!

Optional Variants

Generate image without flashing:

sudo ./l4t_initrd_flash.sh --no-flash jetson-agx-thor-devkit internal

Then flash it later:

sudo ./l4t_initrd_flash.sh --flash-only jetson-agx-thor-devkit internal

Advanced Options

Mass flash multiple units:

sudo ./l4t_initrd_flash.sh --massflash 2 jetson-agx-thor-devkit internal

Use --keep or --reuse to avoid regenerating the image for every device.


Flashing Method 2: Using `nvsdkmanager_flash.sh`

This is a simplified wrapper around the full SDK Manager CLI flash process.

Flash with One Command

sudo ./nvsdkmanager_flash.sh
  • Automatically detects Thor in recovery mode
  • Flashes to internal NVMe
  • Handles user creation and binary injection internally


Flashing Method 3: Using `flash.sh` (Manual)

This workflow provides full control but requires additional steps.

Apply Proprietary Binaries

sudo ./apply_binaries.sh

(Optional) Predefine Default User

sudo ./tools/l4t_create_default_user.sh -u <user_name> -p <password>

If this step is skipped, the system will prompt for OEM configuration at first boot.

Flash to NVMe

sudo ./flash.sh jetson-agx-thor-devkit nvme0n1p1

Flash Script Help

To see all available arguments:

./flash.sh -h


Note
Note: Jetson AGX Thor does not support booting from USB or SD Card, and does not require manual rootfs/ flashing steps. All filesystem and image generation is handled automatically by l4t_initrd_flash.sh and nvsdkmanager_flash.sh using internal as the root device target.


Note
Note: For more indepth instructions and workflows you can visit Flashing Support for Jetson Thor at NVIDIA's offcial documentation.



Previous: JetPack_7.0/Compiling_Code Index Next: JetPack_7.0/Flashing_Board_USB