Quick Start
The information here is intended to help you get started quickly using the NVIDIA® Jetson™ Linux Driver Package (L4T) in conjunction with an NVIDIA Jetson developer kit.
Types and Models of Jetson Devices
Both Jetson modules and Jetson developer kits are available from NVIDIA. A Jetson developer kit includes a non-production specification Jetson module attached to a reference carrier board. You can use it with the JetPack SDK to develop and test software for your use case. Jetson developer kits are not intended for production use.
Jetson modules are suitable for deployment in a production environment throughout their operating lifetime. A Jetson module ships with no software preinstalled; you attach it to a carrier board designed or procured for your product and flash it with a software image you have developed.
This release of L4T supports the following Jetson devices:
• NVIDIA Jetson Xavier™ NX series modules with Jetson Xavier NX Developer Kit
• NVIDIA Jetson Nano™ 2GB modules with Jetson Nano 2GB Developer Kit
• NVIDIA Jetson Nano modules with Jetson Nano Developer Kit
• NVIDIA Jetson AGX Xavier™ series modules with Jetson AGX Xavier Developer Kit
• NVIDIA Jetson™ TX2 series modules with Jetson TX2 Developer Kit
• NVIDIA Jetson TX1 module with Jetson TX1 Developer
For details about these Jetson devices, see the
Jetson Developer Site and the
Jetson FAQ.
Preparing a Jetson Developer Kit for Use
This section explains how to prepare a Jetson developer kit for use by flashing it with the appropriate software.
Assumptions
• You have a Jetson developer kit.
For either Jetson Nano developer kit, you can skip this guide and simply download and use the supported microSD card image. Alternatively, you can follow these instructions to flash the QSPI-NOR, or flash the QSPI-NOR and a microSD card inserted in the Jetson Nano module.
• Your Jetson developer kit is powered off, and is connected as follows. (Note that your Jetson developer kit may not come with the devices and cables listed below.)
• A USB cable connects the correct USB port on your Jetson developer kit to a host computer to be used for flashing and other development support functions.
For the NVIDIA Jetson AGX Xavier Developer Kit, use the USB-C port next to the power button. For the other Jetson developer kits, use the micro USB port.
The host computer must run Ubuntu 16.04 LTS or 18.04 LTS.
• Any required USB peripherals such as keyboard and mouse are connected to the Jetson developer kit, possibly through a USB hub.
• A wired Ethernet connection is available for installing optional software on the Jetson developer kit after L4T is installed and running.
• Either a display device or a serial console is connected to the Jetson developer kit.
• The qemu-user-static package has been installed on the Linux host:
sudo apt-get install qemu-user-static
The installation process needs this package to install certain NVIDIA software components onto the Jetson developer kit.
Placeholders
A placeholder is an element in a value (a pathname, option, environment variable, etc.) whose value is variable. Placeholders are single words, or words connected by underscores, wrapped in angle brackets. These are examples of placeholders taken from later parts of this document:
• An shell script’s environment variable assignment:
TEGRA_KERNEL_OUT=<outdir>
• A pathname:
<top>/vendor/nvidia/tegra/bootloader/partner/common/
• A line of code:
ec_boot_dev_cfg=<value>&0x3fff
The placeholder <top> is used throughout this document to denote the top-level directory of the files untarred from the Jetson Linux distribution.
Other placeholders are defined where they are used, or at the beginning of a section in which they are used repeatedly.
Environment Variables
The directions that follow assume that:
• ${L4T_RELEASE_PACKAGE} contains the L4T release package’s name.
• For Jetson Nano devices and Jetson TX1 modules: Tegra210_Linux_R32.5_aarch64.tbz2
• For Jetson Xavier NX series, Jetson AGX Xavier series, and Jetson TX2 series modules: Tegra186_Linux_R32.5_aarch64.tbz2
• ${SAMPLE_FS_PACKAGE} contains the filename of the sample filesystem package:
Tegra_Linux_Sample-Root-Filesystem_L4TRELEASEVERSION.tbz2
• ${BOARD} contains the name of a configuration supported for your specific Jetson module and carrier board.
Some examples are:
• jetson-nano-devkit
• jetson-tx2-devkit
• jetson-xavier-nx-devkit
Recent and future configuration files’ names follow this format:
<board_part_number>+<module_part_number>[-<modifier>].conf
• <board_part_number> is the P‑number (the full part number) for the NVIDIA carrier board that the .conf file supports.
• <module_part_number> is the P‑number for the Jetson module that the .conf file supports.
• <modifier> is an optional string that indicates which of several configurations the .conf file applies; for example, on a module that may have either eMMC or microSD card memory, which one it uses to flash the operating software.
Older configuration files’ name generally follow this format:
<config_name>[-<modifier>].conf
Where <config_name> is a name that represents the carrier board and module that the .conf file supports.
To flash Jetson Developer Kit operating software
1. Download the latest L4T release package and sample file system for your Jetson developer kit from:
2. Enter these commands to untar the files and assemble the rootfs:
$ tar xf ${L4T_RELEASE_PACKAGE}
$ cd Linux_for_Tegra/rootfs/
$ sudo tar xpf ../../${SAMPLE_FS_PACKAGE}
$ cd ..
$ sudo ./apply_binaries.sh
3. Ensure that your Jetson developer kit is configured and connected to your Linux host as described in
Assumptions.
4. Put your Jetson developer kit into Force Recovery Mode (RCM).
• For Jetson Xavier NX Developer Kit:
1) Ensure that your Jetson Xavier NX developer kit is powered off.
2) Insert a 16 GB or larger size microSD card into the module’s SD card slot.
3) To ensure that the developer kit starts in Force Recovery Mode, place a jumper across pins 9 and 10 (FC REC and GND) of the button header (J14), located on the edge of the carrier board under the Jetson module.
4) Connect the included power adapter to J16. The developer kit powers on and enters Force Recovery mode.
5) Remove the jumper from pins 9 and 10 of the button header.
6) Continue the software installation.
• For Jetson Nano 4GB Developer Kit:
1) Ensure that your Jetson Nano developer kit is powered off.
2) Insert a 16 GB or larger microSD card into the module’s microSD card slot.
3) To ensure that the developer kit starts in Force Recovery Mode, place a jumper across the FRC pins of the button header on the carrier board.
• For carrier board revision A02, these are pins 3 and 4 of J40, which is located near the camera header.
• For carrier board revision B01, these are pins 9 and 10 of J50, which is located on the edge of the carrier board under the Jetson module.
4) Place a jumper across J48 to enable use of a DC power adapter.
5) Connect a DC power adapter to J25. The developer kit powers on automatically and enters Force Recovery Mode.
6) Remove the jumper from the FRC pins of the button header.
7) Continue the software installation.
• For Jetson Nano 2GB Developer Kit:
1) Ensure that your Jetson Nano developer kit is powered off.
2) Insert a 16 GB or larger microSD card into the module’s microSD card slot.
3) To ensure that the developer kit starts in Force Recovery Mode, place a jumper across pins 9 and 10 (FC REC and GND) of the button header J12, located on the edge of the carrier board under the Jetson module.
4) Connect USB A to a micro‑B cable from Host PC to carrier board J13.
5) Connect a USB type C power cable to J2 for 5V power input. The developer kit powers on automatically and enters Force Recovery Mode.
6) Remove the jumper from the FRC pins of the button header.
7) Continue the software installation.
• For other Jetson developer kits that have hardware buttons:
1) Ensure that the developer kit is powered off.
2) Press and hold down the Force Recovery button.
3) Press, then release the Power button.
4) Release the Recovery button.
5) Continue the software installation.
5. Enter this command on your Linux host to flash (install) the L4T release onto the Jetson developer kit:
sudo ./flash.sh ${BOARD} mmcblk0p1
The value of the environment variable $(BOARD) determines the configuration that the flashing script applies. The table at the end of this section describes the configurations available for each Jetson module with its respective Jetson developer kit carrier board.
There is a configuration file that corresponds to each value of $(BOARD). Its name is the value of $(BOARD) with the filename $(BOARD).conf. For example, the configuration file that corresponds to jetson-nano-devkit is jetson-nano-devkit.conf.
Flashing L4T takes about 10 minutes, or more with a slow host computer.
6. The Jetson developer kit automatically reboots at the end of the installation process. At this point your Jetson developer kit is operational. Follow the prompts on the display to set up a user account and log in.
Jetson Modules and Configurations with Respective Jetson Developer Kit Carrier Board |
---|
Module Part Number * | Value of $(BOARD) | Module Notes ** | Series Notes |
---|
Jetson Xavier NX P3668-0000 | jetson-xavier-nx-devkit | For development use only. Internal QSPI-NOR & on-module microSD card. | Small form factor. |
Jetson Xavier NX (8 GB) P3668-0001 | jetson-xavier-nx-devkit-emmc | Internal QSPI-NOR & eMMC. |
Jetson Xavier NX (16 GB) P3668-0003 | jetson-xavier-nx-devkit-emmc | Internal QSPI-NOR & eMMC. |
Jetson Nano 2GB P3448-0003 | jetson-nano-2gb-devkit | For educational & experimental use only. Internal QSPI‑NOR & microSD card. | Compact, economical. |
Jetson Nano 4GB P3448-0000 | jetson-nano-devkit or jetson-nano-qspi-sd | For development use only. Internal built-in QSPI‑NOR & on-module microSD card. |
Jetson Nano 4GB P3448-0002 | jetson-nano-devkit-emmc | Internal QSPI-NOR and eMMC. |
Jetson AGX Xavier (16 GB) P2888-0001 | jetson-agx-xavier-devkit | Internal eMMC. | High-performance series for demanding applications. |
Jetson AGX Xavier (32 GB) P2888-0004 | jetson-agx-xavier-devkit | Internal eMMC. |
Jetson AGX Xavier 64GB P2888-0005 | jetson-agx-xavier-devkit-64gb.conf | Internal eMMC. |
Jetson AGX Xavier Industrial P2888-0008 | jetson-agx-xavier-industrial | Internal eMMC. |
Jetson TX2 P3310-1000 | jetson-tx2-devkit | Internal eMMC. | Midrange series, more performance than Jetson Xavier NX series or Jetson Nano, at less cost than Jetson AGX Xavier series |
Jetson TX2i P3489-0000 | jetson-tx2-devkit-tx2i | Industrial module with expanded environmental limits and increased useful life. Internal eMMC. |
Jetson TX2 4GB P3489-0080 | jetson-tx2-devkit-4GB | Internal eMMC. |
Jetson TX2 NX P3636-0010 | jetson-xavier-nx-devkit-tx2-nx | Used with Jetson Xavier NX Developer Kit for development work. Internal eMMC. |
Jetson TX1 P2180-1000 | jetson-tx1-devkit | Used with Jetson TX2 Developer Kit. Internal eMMC for development work. | Not recommended for new development. |
* GB indicates DRAM size. ** Except as noted, all modules are intended for development or production use. For detailed Jetson module information, see the Jetson Modules page on the NVIDIA Developer Site. |
To determine whether the developer kit is in Force Recovery mode
1. Connect your Linux host to the correct USB port on your Jetson developer kit (see
Assumptions).
2. Open a terminal window on your host and enter the command lsusb.
The Jetson module is in Force Recovery mode if you see this message:
Bus <bbb> Device <ddd>: ID 0955: <nnnn> Nvidia Corp.
Where:
• <bbb> is any three-digit number
• <ddd> is any three-digit number
• <nnnn> is a four-digit number that represents the type of Jetson module:
Module | <nnnn> | Module Description |
Jetson Xavier NX series | P3668 | 7e19 | All variants |
P3668-0003 | 7e19 | Production |
Jetson Nano devices | P3448 | 7f21 | All variants |
Jetson AGX Xavier series | P2888 | 7019 | All variants |
Jetson TX2 series | P3310-1000 | 7c18 | Jetson TX2 |
P3489-0000 | 7018 | Jetson TX2i (industrial) |
P3489-0888 | 7418 | Jetson TX2 4GB |
P3636-0001 | 7c18 | Jetson TX2 NX |
Jetson TX1 | P2180-1000 | 7721 | |
As an alternative, you can look for the message above on the display device or serial console connected to one of the developer kit’s USB ports. (See
Assumptions.)