Sitemap

Getting Started with NVIDIA Jetson Nano Eagle 101 Carrier Board

7 min readJun 26, 2024

--

Product descriptions:

Tanna TechBiz has developed the EAGLE -101 carrier board, a Make in India initiative. This board has been designed for the NVIDIA® Jetson NanoTM Module.

Press enter or click to view image in full size
Jetson Nano EAGLE-101

The entire system constituting the carrier board and module can be used for various use cases ranging from computer vision, robotics, factory automation, Traffic management solutions (ITMS), Smart Cities, and so on.
The board features rich I/O ports that include 4 USB 3.0, 1 GB Ethernet, Micro SD card slot, etc.., a wide range of temperature specifications, and at the same time, packaged together in a compact size

Product descriptions and technical specifications you can get from TannTecBiz. Or from here.

Why TannaTechBiz has developed this board?

The NVIDIA Jetson Nano dev kit is not made to be deployed at the production level or as an end smart system, the developer kit is used to develop and test software in a pre-production environment. The dev kit is just like a reference board that other vendors may use as a template to make their board. There are also some flexibilities in the I/O that other vendors may enable them on their board but those things do not exist on devkit. As a vendor, TannaTechBiz has developed the carrier board EAGLE 101 for Jetson Nano. The dev kit does not have an SD card slot (It has internal eMMC)but the EAGLE 101 does have both eMMC and an external SD card slot. Many of our customers are already using this board in their AI application at production.

Downloading the BSP(Board Support Package):

Since NVIDIA develops the SoC (System on Chip) of Jetson Nano, they also provide a BSP (Board Support Package) for the SoC.

NVIDIA BSP (Board Support Package) is a set of software components and tools provided by NVIDIA to support the development and deployment of applications on NVIDIA hardware platforms.

You can get the BSP for Jetson Nano from here under the Drivers Details under Jetson Nano, Nano 2GB, and TX1 and row DRIVERS. Download the following two files as pointed out by arrows in the photo.

Note: Other versions of BSP can be found here.

  1. L4T Driver Package (BSP) (Jetson-210_Linux_R32.7.2_aarch64.tbz2)
  2. Sample Root Filesystem (Tegra_Linux_Sample-Root-Filesystem_R32.7.2_aarch64.tbz2)
Press enter or click to view image in full size
DRIVERS

NOTE: Before proceeding, make sure you have a system with OS Ubuntu 18.04 with a minimum of 100GB of space as a host computer.

NOTE: Use Ethernet or an external Wifi module with your system, as Ubuntu 18.04 has Wifi driver issues.

Flashing the BSP:

Once you have downloaded the above two files, follow the steps below.

  1. Extract the files:
tar xf jetson-210_Linux_R32.7.2_aarch64.tbz2gnome-disks

cd Linux_for_Tegra/rootfs/

sudo tar xpf /(path of downloaded sample-root-
file)/Tegra_Linux_Sample-Root-Filesystem_R32.7.2_aarch64.tbz2

cd..

sudo ./apply_binaries.sh

2. copy tegra210-p3448–0002-p3449–0000-b00.dtb to folder generate
by step1

cp tegra210-p3448–0002-p3449–0000-b00.dtb
Linux_for_Tegra/kernel/dtb/

You can get the DTB file from here.

3. Put the board in Recovery Mode.

  1. Use a jumper to short pin 3(FC REC) and pin 4(GND) as shown below image.
Enter Recovery Mode

2. Connect the DC power supply to the circular power port and wait a moment.

3. Now connect the Micro USB port of the Jetson Nano to the Ubuntu Host Machine with a USB cable (Make sure it is a data cable).

4. Use the following command to flash the BSP.

cd Linux_for_Tegra

sudo ./flash.sh jetson-nano-emmc mmcblk0p1

Note: Wait for a while to complete the flashing of the image. You will see the success message.

Note: In between the flashing process, the host system may prompt you to install specific Ubuntu packages; please install those and restart the flashing process with the above command 2.

Once the flashing process is complete, disconnect the power supply, and remove the jumper used to short pin 3 and pin 4.

Now connect the Display through either HDMI or DP port, and connect the Mouse and Keyboard. connect the DC power supply to the circular power port and wait a moment to boot the Jetson Nano.

Once Jetson Nano has successfully booted, follow the general Ubuntu Linux setup and get the IP through the Internet(Wi-Fi) connection setting. Your Display screen should look like the one below.

Press enter or click to view image in full size
Jetson Nano Display

Note: If you do not have a display, you can simply proceed ahead with the serial connection (Micro USB) between your host machine and Jetosn Device to complete the boot setup. You can use the following link for the headless setup.

Change Root File System to SD Card Directly:

Now Your Jetson Nano is ready to use for the AI application but wait there is a catch; the BSP is flashed in internal eMMC and we have an SD card slot with an SD card inserted.

Now we can see how to move the root file system on eMMC flash to SD card storage directly and boot from the SD card.

In your Jetson Nano Display screen Open the terminal and type down the following command.

sudo jetson_clocks
gnome-disks
Press enter or click to view image in full size
Set the system clock

The first command allows the Jetson module’s whole sources to be used. The next command opens the GNOME Disks application below.

Press enter or click to view image in full size
GUI for Storage

Format the whole disk before creating the storage.

Press enter or click to view image in full size
Format Disk
Press enter or click to view image in full size
Format Disk
Press enter or click to view image in full size
Warning Message

Then, create a new partition from SD card storage.

Press enter or click to view image in full size
Create a New Partition.

Partition size is up to you but must be min current file system’s size

Press enter or click to view image in full size
Create a New Partition Size.

Choose the type in ext4 format and name the volume.

Press enter or click to view image in full size
Type: Ext4

After creating the partition, check it’s name (/dev/mmcblk1p1).

Press enter or click to view image in full size
/dev/mmcblk1p1

Download the script file from here or at Git Hub and extract it. You can directly download it on the Jetson Device or download it on the host machine and transfer it to the Jetson Device using SSH(File Zila).

Note: The .sh file needs the permission to execute. Use the following command to make it executable.

chmod +x change_rootfs_storage_direct-emmc_to_sdmmc.sh

Then, run it with this command below:

sudo ./change_rootfs_storage_direct-emmc_to_sdmmc.sh {EXTERNAL_STORAGE}

In our setup, we typed this command below:

sudo ./change_rootfs_storage_direct-emmc_to_sdmmc.sh /dev/mmcblk1p1

Wait for a while until the whole file system is copied, and the root path changes.

Press enter or click to view image in full size
The root file system is changed

Now use the following command to see the disk space usage. It is still booting from the eMMC.

df -h

It’s time to reboot the Jetson module. Reboot it and check the Root File System copied successfully.

Open a terminal and type this command to check the root mounted from the SD card below which was on eMMC before reboot.

df -h

After rebooting you can see that the new storage is assigned as the root file system.

Press enter or click to view image in full size
root files inside the SD card

NVIDIA SDK- Manager :

Now Jetson Nano is ready to install further NVIDIA SDK components. Download the SDK manager for host Ubuntu 18.04 and install it on host Ubuntu.

Connect the Jetson Device to the host machine using Micro USB. From a terminal window, launch SDK Manager with the command:

sdkmanager

Log in to your account, if the Jetson Nano is recognized normally, SDK Manager will detect it correctly.

Press enter or click to view image in full size
SDK-Manager

Check your Jetpack version. If your Jetpack version doesn't appear use the following command to launch the SDK manager with archived Jetpack versions.

sdkmanager --archived-version

Note: You can also check the Jetpack Version from the display of the Jetson Device. Just type down the following command in the display terminal.

sudo apt-cache show nvidia-jetpack

Now you can proceed ahead by clicking on CONTINUE. Before that, you can tick on the DeepStram app if you wish to install it.

Next, uncheck Jetson OS (Because we have already flashed it using BSP), and check Jetson SDK Components(CUDA, Tensorrt, etc.). Check the terms & conditions and click CONTINUE.

Press enter or click to view image in full size
SDK-Manager Jetpack & SDK Components

Note: If you want to learn more about how to use NVIDIA SDK-manager, you can use the official guide from NVIDIA from here.

Once all the required NVIDIA SDK components are successfully installed you can proceed ahead to install PyTorch and torchvision from here.

You can check the compatible CUDA versions and tensorrt versions using the following commands.

nvcc --version
pip3 show tensorrt 
Press enter or click to view image in full size
CUDA and Tensorrt Versions

Special thanks to my fellow Engineer and Colleague -Kishan

You can follow me on Linkedin

--

--

Anil Sarode
Anil Sarode

Written by Anil Sarode

As an Embedded Engineer with expertise in Machine Learning and Deep Learning, I collaborate closely with NVIDIA to implement AI solutions on Jetson devices.

No responses yet