Only this pageAll pages
Powered by GitBook
1 of 7

Software setup - Guide

Guide

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Questions and Answers

Frequently Asked Questions

  • Q: Why is my X221 not going into force recovery?

    • A: If your system is not going into force recovery, please contact our support as you may got a system with a mismatched firmware.

  • Q: Why is my system not entering the force recovery state?

    • A: Most of our carrier boards are design to enter force recovery mode when they detect a Host PC. This detection only works one time automatically after the system was connected to its power supply. We recommend unplugging your system bevor connecting to a Host PC and plugging it back in to power after connecting.

    • A: If your system still does not enter force recovery you may have to press the force recovery button or short the respective pins bevor connecting to power (please see the Technical Reference Manual for a detailed pinout description).

    • A: If you cannot disconnect your system from power, it is also possible to enter force recovery via a button sequence.

      • Press/jumper “force recovery” button/pins

      • Press/jumper “reset” button/pins

      • Release/disconnect “reset” button/pins

      • Release/disconnect “force recovery” button/pins a few seconds later then the “reset” button/pins

SSD-Boot flashing guide

The guide for experienced users

This guide describes how to set up your system to boot partially or fully from an M.2 SSD, depending on your module choice.

This guide is intended for experienced users only.

Partial SSD boot for Jetson Nano, NX, TX2 NX

The Jetson Nano, NX and TX2 NX modules do not support native boot purely from the SSD.

To still benefit from the SSD speed and size, this guide describes how to move your Root FS to your SSD.

You can also use the Partial SSD boot flashing guide for the Jetson Xavier/Orin series, but we recommend the Native SSD boot guide for Jetson Xavier/Orin systems.

Note: If you run in to problems, there is also another resource from JetsonHacks: “Jetson Xavier NX – Run from SSD” which you can find on Google.

Before you start

  • Please make sure your system is set up and running according to our simple or advanced flashing guide from SECTION 2 or SECTION 3.

Locate and identify storage device

Ubuntu

Note

Jetson system

With the disc program you can find your device as shown in the Picture.

In this example: /dev/sdb1

The first thing you need to do is to identify the storage device you are intending to use.

Make sure your intended SSD storage device does not hold valuable data, as the following steps will format this device.

SSD-Storage device:

When working with NVMe SSD, your device name should look like this: /dev/nvme0n1p1

The ending p1 stands for partition one. In the following steps, you must remove the partition information from the device path. See the following example:

<YOUR_STORAGE_DEVICE> = /dev/nvme0n1

USB-Storage device:

When working with external USB devices, your device name should look like this: /dev/sdb1

The ending 1 stands for partition one. In the following steps, you must remove the partition information from the device path. See the following example:

<YOUR_STORAGE_DEVICE> = /dev/sdb

Set up Root FS on SSD

Please execute the following steps to copy your Root FS to your SSD-Boot storage.

Format the storage device

Device
Example

Jetson system

Create the Root FS partition

Device
Example

Jetson system

Create file system

Device
Example

Jetson system

Copy the existing Root FS to the storage device

Device
Example

Jetson system

Switch boot device to SSD

You need to change your root target in exlinux.conf to the SSD. This is necessary so that the operating system knows where to find the system files.

Open exlinux.conf

Device
Example

Jetson system

Modify the exlinux.conf by changing the root path

Device
Example

Jetson system

After a reboot, your system will start from the SSD

Validate

You can validate the SSD boot by using the following test

Device
Example

Jetson system

Wen <Your_Storage_device> shows up to what you have set it, you successfully moved your Root FS and booted from SSD.

You now have a functioning system ready for your needs.

Native SSD boot for Jetson AGX Xavier, AGX Orin, Xavier NX series

This guide is only applicable for the Jetson AGX Xavier, Xavier NX and AGX Orin series. These series support direct boot from NVMe SSD.

Note: If you run in to problems, there is also another resource from JetsonHacks “Jetson Xavier NX – Run from SSD” that might help you out.

Before you start

  • Please follow the steps described in the Advanced flashing guide (experienced users). The same steps apply if you want your system to boot from the SSD. You only must change one command from the Advanced flashing guide (experienced users) to apply the native SSD boot.

Flash system

Please change the command as displayed below.

The crossed-out command is just for reference and must not be executed!

Device
Example

Host PC

sudo ./flash <your_module> mmcblk0p1

sudo ./nvsdkmanager_flash.sh --storage nvme0n1p1

After following the Advanced flashing guide and replacing the command as discribet you now have a functioning system ready for your needs.

Simple flashing guide

The recommended guide

The simple flashing guide describes how to flash your Auvidea carrier board system, so it can boot and run. With this guide, everything you will need is included in the download package you can get from Auvidea. This flashing guide is recommended for the Auvidea carrier board series. If you are using an Orin nano or Orin NX module pleas see the Orin nano & Orin NX flashing guide.

Before you start

  • If you are using an AGX Orin, you have to use the Advanced flashing guide

  • Please make sure to use a Linux host PC with Ubuntu 18.04 LTS or Ubuntu 20.04 LTS (other versions may work, but some caused problems in the past!) operating system. Please use a native setup (no virtual machine). This Host PC should have a high bandwidth internet connection for the download of 3 GB+ installation file in the following steps

  • You should make sure that Python 2.x is installed, as it is required for the NVIDIA SDK Manager. You can check your installation in the command line with: python --version example return: Python 2.7.17. If you do not get a return or error, you do not have Python 2.x installed. (Please use: sudo apt install python to install Python 2.x to your system)

  • You will also need a high-quality standard USB 2.0 Type A to micro-USB 2.0 cable

Download installation file from Auvidea

  • Download the installation file for your setup from Auvidea. JNxxx means the carrier board series starting with JN, for example JN30D. Please check the description to download the right file for your module (NX, TX2,…)

  • Open a terminal window (CTRL + ALT + T) on your Linux host PC and navigate to your download location

Device
Example
  • Extract the tar.gz file you just downloaded

Device
Example
  • Change directory to the extracted bootloader folder

Device
Example

Connect carrier board to host PC

  1. Connect the system to the Linux host PC. Please use a USB 2.0 cable (micro-USB on the carrier board)

  2. Connect your system to power

    • Apply correct Voltage to prevent damage

    • The system should start automatically and detect the host PC and enter the flashing state (also called force recovery mode)

      • In some cases, you have to manually enable flashing state by pressing or shorting pins before connecting to your power source. Please check the Pinout description of your product if you have to set a Jumper

      • If your Jetson has an already running image, you can use sudo reboot --force forced-recovery to reboot in to force recovery mode

  3. Check that the connection is established with the “lsusb” command. You should find one entry with “Nvidia Corp.” as highlighted below

Device
Example

Your system is now connected properly and ready to be flashed

Flashing of system

  • Use the flashcmd script in the extracted bootloader folder to transfer the software into the Jetson compute module and flash it

Device
Example
  • Please connect a monitor to the system. After the flashing process has completed, the system will automatically boot and show the Ubuntu desktop or the first setup screen

Device
Example

You now have a functioning system ready for your needs.

Maintaining functionality

After successful flashing please be aware that if you use “sudo apt-get upgrade” some applied changes performed in this guide (Bootloader, Kernels, DTBs, …) will be overwritten by standard Nvidia packages. This will most probably brick some board functionality and some interfaces may not work correctly anymore.

When overriding the Auvidea configurations only basic functionality like 1080p HDMI, some USB ports, Ethernet could work

Without the correct configurations and packages 4k HDMI, PCIe ports, some USB ports, CSI, CAN, … will not work!

If you know what you are doing, you can exclude the Nvidia Debian packages from the Nvidia sources.list from being updated. This prevents overriding relevant files and changes.

If you are unsure, we recommend DO NOT UPGRADE YOUR SYSTEM.

In the case you accidental upgraded your system and some board functionality stopped working correctly, we recommend to reflash your system according to this guide.

using sudo apt-get upgrade will stop your carrier board from working correctly!

Installing additional NVIDIA SDK components

  • Now you can install additional NVIDIA SDK components. Please connect the system to the Internet. Open a terminal window on the system (CTRL ALT T). Use apt-get to install the components. If this fails, please check the Internet connection of the system

Device
Example

Overview

This guide is intended to help you flash your Auvidea carrier board system successfully for the first time and get everything up and running.

We offer different flashing guides depending on your system and needs. If you are unsure, the best place to start is the simple flashing guide. You can also check out the first paragraph of every guide to get further information and check if it is applicable to your case.

Document revisions and changes

Version
Changes

Disclaimer PDF export

Auvidea can take no responsibility for the accuracy or completeness of any information presented in an exported PDF document as the export feature is developed, managed and maintained by GitBook. Those export mechanisms are subject to change without interaction by Auvidea. Please note that Auvidea includes this version table to identify the document and reference changes.

2.1

Added Preliminary Orin nano & Orin NX flashing guide

2.2

Moved software setup guide from PDF version to Gitbook

2.3

Added Disclaimer to inform about PDF export problems on Gitbook

create partition
sudo parted <YOUR_STORAGE_DEVICE> mklabel gpt
resize partition
sudo parted <YOUR_STORAGE_DEVICE> mkpart APP 0GB <YOUR_ROOTFS_SIZE>
make filesystem
sudo mkfs.ext4 <YOUR_STORAGE_DEVICE>1
copy_rootfs.sh
sudo mount <YOUR_STORAGE_DEVICE> /mnt
sudo rsync -axHAWX --numeric-ids --info=progress2 --exclude={"/dev/","/proc/","/sys/","/tmp/","/run/","/mnt/","/media/*","/lost+found"} / /mnt/
sudo nano /boot/exlinux/exlinux.conf
extlinux entry
LABEL primary
      MENU LABEL primary kernel
      LINUX /boot/Image
      INITRD /boot/initrd
      APPEND ${cbootargs} quiet root=<YOUR_STORAGE_DEVICE>1 rw rootwait rootfstype=ext4 console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
df output
test@test-desktop:~$ df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/nvme0n1p1 122507912 14618752 102744904  13% /
Graphical user interface, application

Description automatically generated

Host PC

cd <path_to_downloadeded_tar>

Host PC

tar xvzf bootloader.tar.gz

Terminal host PC

Host PC

cd ./bootloader

Terminal host PC

Host PC

lsusb

Terminal host PC example

Host PC

sudo bash ./flashcmd.txt

Terminal host PC

HDMI monitor Jetson system after following the first setup

Jetson system

install_jetpack.sh
sudo apt-get update && sudo apt-get install nvidia-jetpack

Terminal Jetson system (example)

Text

Description automatically generated
Text

Description automatically generated
Graphical user interface, text

Description automatically generated
Text

Description automatically generated
A screenshot of a computer

Description automatically generated with low confidence
Text

Description automatically generated

Advanced flashing guide

The guide for experienced users

The alternative flashing guide is intended to be used if you encounter problems with the recommended guide. This guide is more general and should also work with boards from other vendors and requires a few more steps. In this guide, you will download the core operating system from NVIDIA with the SDK manager and only download the files that need to be changed for your carrier board from Auvidea.

Before you start

  • Please make sure to use a Linux host PC with Ubuntu 18.04 LTS or Ubuntu 20.04 LTS (other versions may work, but some caused issues in the past!) operating system. Please use a native setup (no virtual machine). This host PC should have a high bandwidth internet connection for the download of 2 GB+ installation file in the following steps.

  • You should make sure that Python 2.x is installed, as it is required for the NVIDIA SDK Manager. You can check your installation in the command line with: python --version example return: Python 2.7.17. If you do not get a return or error, you do not have Python 2.x installed. Please use: sudo apt install python to install Python 2.x to your system)

  • You will also need a high-quality standard USB 2.0 Type A to micro-USB 2.0 cable.

  • If you are using an AGX Orin please see the Flashing the AGX Orin section, as additional steps are required.

Install and configure NVIDIA SDK manager

  • Download and install the Nvidia SDK manager for Ubuntu

  • Install Jetpack 4.6 and up for your Jetson module (AGX Xavier)

Device
Example

Host PC

  • Skip the flashing process after installation. This step is necessary to set up your file system and contents of your Host PC. Do not flash with this configuration! Specific steps need to be performed to enable all functionality of your carrier board, as described in the following steps.

Device
Example

Host PC

Download installation files from Auvidea

The following steps are necessary to enable all features of the Auvidea carrier board.

It is possible to skip these steps and flash your system without them. But then you will only be able to use basic functionality like 1080p HDMI, some USB ports, Ethernet.

Without these steps 4k HDMI, PCIe ports, some USB ports, CSI, CAN, … will not work, we strongly recommend to follow it if possible.

  • Download our latest firmware for your carrier board

  • Extract the downloaded tar ball from our website

Device
Example

Host PC

  • Change directory into the extracted files and extract the "kernel_out.tar.bz2"

Device
Example

Host PC

  • Copy the extracted kernel_out folder into your jetpack 4.6 (or up) L4t (Linux for Tegra) folder. Usual File path: /home/<YOUR_USERNAME>/nvidia/nvidia_sdk/JetPack_<Jetpack_version>_Linux_<Jetson_module>/Linux_for_Tegra

Device
Example

Host PC

Flashing the AGX Orin

If you want to flash a AGX Orin the following steps should be followed additionally to the flashing guide from above. Other modules (like AGX Xavier, Nano, Nano NX, …) do not need those additional steps and you should continue with the next step.

Future installation packages from Auvidea should already include the following changes. In that case, you can use the following steps as a check or implement them yourself when skipping the Auvidea installation files.

AGX Orin Jetpack compatibility

When flashing an AGX Orin production module, the Jetpack version 5.0 GA must be used.

The Jetpack versions 5.0 DP and 5.0.1 DP do not work!

Necessary changes

Independent of the used AGX Orin version, you must make the following changes.

These changes must be done in the file system of the Host PC before flashing it to the AGX Orin module.

Usual File path:

/home/<YOUR_USERNAME>/nvidia/nvidia_sdk/JetPack_<Jetpack_version>_Linux_<Jetson_module>/Linux_for_Tegra/ bootloader/tegra234-mb2-bct-common.dtsi

Operation
In tegra234-mb2-bct-common.dtsi

Replace

cvb_eeprom_read_size = <0x100>

Replace with

cvb_eeprom_read_size = <0x0>

Also, the ODMDATA must be changed.

Usual File path:

/home/<YOUR_USERNAME>/nvidia/nvidia_sdk/JetPack_<Jetpack_version>_Linux_<Jetson_module>/Linux_for_Tegra/ p3701.conf.common

Operation
In p3701.conf.common

Set

ODMDATA="gbe-uphy-config-0,hsstp-lane-map-3,nvhs-uphy-config-0,hsio-uphy-config-16"

Flashing of system

  • Connect a USB 2 micro-USB cable to the Jetson bevor powering it up

  • After connecting to the host PC, power up your Jetson. This will put the system in to flashing mode (also called force recovery mode) with a connected Host PC. In some cases, you will have to manually press the force recovery mode button or short pins to enter force recovery mode. For example, with the JN30D you will need to short Pins 7 & 8 of J32 to enter force recovery. A simple way is to use tweezers or jumpers. Please see the Technical Reference Manual for a detailed pin description.

  • Check that the connection is established with the lsusb command. You should find one entry with Nvidia Corp. as highlighted below.

Device
Example

Host PC

lsusb

Terminal host PC (example)

  • Open your terminal in the <Jetpakc_L4T_folder> folder, if you are not already in it.

  • You can now flash your system using the following command

Device
Example

Host PC

sudo ./flash <your_module> mmcblk0p1

Module name
<your_module>

Jetson Nano

jetson-nano-emmc

Jetson AGX-Xavier

jetson-xavier

Jetson Xavier NX

jetson-xavier-nx-devkit-emmc

Jetson TX2 NX

jetson-xavier-nx-devkit-tx2-nx

…

…

(If you are following the native SSD boot flashing guide. The following command needs to be changed, as described in the chapter.)

  • Please connect a monitor to the system. After the flashing process has completed, the system should automatically boot and show the Ubuntu desktop.

Device
Example

HDMI monitor Jetson system

You now have a functioning system ready for your needs.

  • Please also see 2.5 Maintaining functionality

Installing additional NVIDIA SDK components

  • Now you can install additional NVIDIA SDK components. Please connect the system to the internet. Use apt-get to install the components. If this fails, please check the Internet connection of the system.

Device
Example

Jetson system

Terminal Jetson system example

Preliminary Orin nano & Orin NX flashing guide

This guide is intended to be used with the Orin modules Orin nano & Orin NX series. As the integration of the flashing capabilities are not yet integrated into the SDK manager from Nvidia. This guide is meant to bridge the time until the SDK manager can be used. Not that not all functionalities of your carrier board like the JNX42 or JNX45 are supported yet (like some USB ports may not work). This will be fixed in a future release following soon.

Before you start

  • Please make sure to use a Linux host PC with Ubuntu 18.04 LTS or Ubuntu 20.04 LTS (other versions may work, but some caused problems in the past!) operating system. Please use a native setup (no virtual machine). This Host PC should have a high bandwidth internet connection for the download of 3GByte+ installation file in the following steps.

  • You will also need a high-quality standard USB 2.0 Type A to micro-USB 2.0 cable.

  • If you are using an AGX Orin please use the Advanced flashing guide.

Download installation file from NVIDIA

  • Download the installation file for your selected JetPack from the NVIDIA archive into a working directory of your choice. The following table shows step by step where to download the appropriate files.

  • Open a terminal window (CTRL + ALT + T) on your Linux host PC and navigate to your download location.

Device
Example
  • Extract the tar.gz file you just downloaded.

Device
Example
  • Change directory to the extracted rootfs folder.

Device
Example
  • Extract the rootfs.

Device
Example
  • Change directory to the extracted Linux_for_Tegra folder.

Device
Example
  • Install the flashing prerequisites.

Device
Example
  • Apply the binaries.

Device
Example
  • On Auvidea carrier boards, you have to adjust the EEPROM size: change cvb_eeprom_read_size = <0x100>; in <working directory>/Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts to cvb_eeprom_read_size = <0x0>

Device
Example

Connect carrier board to host PC

  • Connect the system to the Linux host PC. Please use a USB 2.0 cable (micro-USB on the carrier board).

  • Connect your system to power (please see specifications to apply the right voltage for your system when using your own power supply). The system will start automatically and detect the host PC and enter the flashing state (also called force recovery mode). In some cases, you will have to manually press or short pins before connecting to your power source to enter force recovery mode. For example, with the JN30D you will need to short Pins 7 & 8 of J32 to enter force recovery. A simple way is to use tweezers. Please see the Technical Reference Manual for a detailed pin description. You can also see the FAQs in this document for further information.

  • Check that the connection is established with the “lsusb” command. You should find one entry with “Nvidia Corp.” as highlighted below.

Device
Example

Your system is now connected properly and ready to be flashed

Flashing of system

  • Use this flash command for your system.

Device
Example
  • Please connect a monitor to the system. After the flashing process has completed, the system should automatically boot and show the Ubuntu desktop.

Example

You now have a functioning system ready for your needs.

Maintaining functionality

Do NOT use sudo apt-get upgrade!

After successful flashing please be aware that if you use “sudo apt-get upgrade” some applied changes performed in this guide (Bootloader, Kernels, DTBs, …) will be overwritten by standard Nvidia packages. This will most probably brick some board functionality and some interfaces may not work correctly anymore.

When overriding the Auvidea configurations only basic functionality like 1080p HDMI, some USB ports, Ethernet may work.

Without the correct configurations and packages 4k HDMI, PCIe ports, some USB ports, CSI, CAN, … will not work.

If you know what you are doing, you can exclude the Nvidia Debian packages from the Nvidia sources.list from being updated. This prevents overriding relevant files and changes.

If you are unsure, we recommend NOT UPGRADE YOUR SYSTEM.

In the case you accidental upgraded your system and some board functionality stopped working correctly, we recommend to reflash your system according to this guide.

extract files
tar xvf <your_downloaded_tar>.tar.bz2
extract files
cd <your_extracted_downloaded_tar>
tar xvf kernel_out.tar.bz2#
copy image content
rsync -axHAWX --numeric-ids --info=progress2./kernel_out/<Jetpack_L4T_folder>
install_jetpack.sh
sudo apt-get update && sudo apt-get install nvidia-jetpack
Text

Description automatically generated
Graphical user interface, text

Description automatically generated
A screenshot of a computer

Description automatically generated with low confidence
Text

Description automatically generated

Host PC

cd <path_to_downloadeded_tar>

Host PC

tar xf Jetson_Linux_R35.2.1_aarch64.tbz2

Host PC

cd Linux_for_Tegra/rootfs/

Host PC

sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R35.2.1_aarch64.tbz2

Host PC

cd Linux_for_Tegra

Host PC

sudo ./tools/l4t_flash_prerequisites.sh

Host PC

sudo ./apply_binaries.sh

Before

After

Host PC

lsusb

Terminal host PC example

Host PC

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" --showlogs --network usb0 p3509-a02+p3767-0000 internal

HDMI monitor Jetson system

Graphical user interface, text

Description automatically generated
A screenshot of a computer

Description automatically generated with low confidence
Jetson Xavier NX - Run from SSD - JetsonHacksJetsonHacks
FirmwareAuvidea
Logo
Logo