Nvidia Jetson Orin NX with CTI Boson carrier board setup
Keywords: Orin NX/Nano, CTI Boson NGX007, FRAMOS IMX464, JetPack
Description
This wiki pages shows how to get JetPack 6.2.1 (L4T R36.4.4) for an NVIDIA Jetson Orin NX SoM, download board support package (BSP) for CTI Boson Carrier board NGX007 and how to flash the board to enable 2 FRAMOS IMX464 cameras.
Set up
- x86/x64 based host machine running Ubuntu 20.04 or higher
- Jetson Orin NX SoM
- CTI Boson NGX007 carrier board
- USB Cable for flashing
- Two FRAMOS IMX464 cameras
- Keyboard
- Mouse
- Monitor
Getting the sources
JetPack 6.2.1
1. Go to JetPack 6.2.1 release Page: NVIDIA Jetson Linux 36.4.4 and download “L4T Driver Package (BSP)” and “Sample Root filesystem”.
2. You should see this two files:
- Jetson_Linux_R36.4.4_aarch64.tbz2
- Tegra_Linux_Sample-Root-Filesystem_R36.4.4_aarch64.tbz2
3. Create a directory for installing JetPack. Referred to as <INSTALL_DIR>. For example:
INSTALL_DIR = build
mkdir $INSTALL_DIR
cd $INSTALL_DIR
4. Copy both files to <INSTALL_DIR>
cp $HOME/Downloads/Jetson_Linux_R36.4.4_aarch64.tbz2 .
cp $HOME/Downloads/Tegra_Linux_Sample-Root-Filesystem_R36.4.4_aarch64.tbz2 .
5. Extract "L4T Driver Package" tarball:
sudo tar -vjxf Jetson_Linux_R36.4.4_aarch64.tbz2
You should see a new directory called Linux_for_tegra in <INSTALL_DIR> directory.
6. Extract "Sample Root Filesystem" into Linux_for_tegra/rootfs
sudo tar -C Linux_for_Tegra/rootfs/ -vxjf Tegra_Linux_Sample-Root-Filesystem_R36.4.4_aarch64.tbz2
CTI BSP
Go to <INSTALL_DIR> directory
cd <INSTALL_DIR>
1. Download BSP for Jeton Orin NX/Nano from CTI official page: CTI Boson BSP and download: Orin Nx / Nano L4T r36.4.4 BSP. Downloaded file named: CTI-L4T-ORIN-NX-NANO-36.4.4-V001.tgz.
2. Copy file to <INSTALL_DIR>/Linux_for_Tegra
cp $HOME/Downloads/CTI-L4T-ORIN-NX-NANO-36.4.4-V001.tgz Linux_for_Tegra
3. Extract the BSP
cd <INSTALL_DIR>/Linux_for_Tegra
sudo tar -vxzf CTI-L4T-ORIN-NX-NANO-36.4.4-V001.tgz
4. Run install script to install BSP files.
cd CTI-L4T
sudo ./install.sh
6. Return to Linux_for_Tegra directory: cd ..
7. Inside Linux_for_Tegra directory, create default user with:
sudo ./tools/l4t_create_default_user.sh -u <username> -p <password> -n <hostname>
for example:
sudo ./tools/l4t_create_default_user.sh -u nvidia -p nvidia -n nvidia
Flashing the board
This section will specify how to flash the board to enable 2 FRAMOS IMX464 cameras. 1. Connect NVMe m.2 card on one of the m.2 slots. Put the board in recovery mode. You can check if the board is in recovery mode with lsusb. Should see something like:
Bus 001 Device 016: ID 0955:7323 NVIDIA Corp. APX
2. Flash with CTI's automated script inside Linux_for_Tegra directory:
sudo ./cti-flash
3. After executing the command, select the board. Choose 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~
CTI FLASH
~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Photon (NGX002/NGX003)
2. Boson (NGX007)
3. Boson for Orin (NGX020)
4. Boson22 for Orin (NGX021)
5. Hadron (NGX012)
6. Rudi NX (NGX006/NGX010)
7. Polaris (NGX015)
8. Hadron-GMSL (NGX018)
9. Lepton (NGX022)
10. Hadron Dual MIPI (NGX024/NGX027)
11. Essential EdgeAI (NGX026)
12. Uses (NGX926)
x. Exit
Enter choice: 2
4. Select configuration. Choose 4.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
============ Boson (NGX007) =============
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Base
2. Base + FSM IMX296 (3cam)
3. Base + FSM IMX464 (3cam)
4. Base + FSM IMX464 (2cam)
5. Base + FSM IMX565 (3cam)
6. Base + FSM IMX565 (2cam)
7. Base + FSM IMX568 (2cam)
8. Base + FSM IMX568 (3cam)
9. Base + FSM IMX585 (3cam)
10. Base + FSM IMX585 (2cam)
11. Base + FSM IMX662 (3cam)
12. Base + FSM IMX662 (2cam)
13. Base + FSM IMX676 (3cam)
14. Base + FSM IMX676 (2cam)
15. Base + FSM IMX678 (3cam)
16. Base + FSM IMX678 (2cam)
17. Cancel (back to main menu)
Enter choice: 4
5. Select module. Choose 1.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
============= Module Type ==============
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. orin-nx
2. orin-nano
3. Cancel (back to main)
Enter choice: 1
6. Select module mode. In this case, choose 1.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
============= Module Mode ==============
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. default
2. super-mode
3. Cancel (back to main)
Enter choice: 1
7. Wait for flashing to be complete. 8. Connect a mouse and keyboard with USB to the board, connect HDMI monitor. Reboot the board. You should see in your monitor Ubuntu login. 9. Log in into the nvidia user created in the steps before.
Capturing with FRAMOS IMX464 cameras
1. Open a terminal. Verify cameras were bound correctly with:
sudo dmesg | grep imx464
Should see something like:
[ 11.756067] imx464 9-001a: probing v4l2 sensor
[ 11.756129] imx464 9-001a: initializing mipi...
[ 11.756418] imx464 9-001a: tegracam sensor driver:imx464_v2.0.6
[ 11.790754] tegra-camrtc-capture-vi tegra-capture-vi: subdev imx464 9-001a bound
[ 11.830176] imx464 9-001a: Detected imx464 sensor
[ 11.833758] imx464 10-001a: probing v4l2 sensor
[ 11.833832] imx464 10-001a: initializing mipi...
[ 11.834253] imx464 10-001a: tegracam sensor driver:imx464_v2.0.6
[ 11.867769] tegra-camrtc-capture-vi tegra-capture-vi: subdev imx464 10-001a bound
[ 11.884400] imx464 10-001a: Detected imx464 sensor
2. Check for devices in /dev/.
ls /dev/video*
Should see something like:
/dev/video0 /dev/video1
2. Run the following pipeline to get a stream preview:
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! nvvidconv ! autovideosink
Switch between 0 and 1 in sensor-id to choose the camera to capture.
Need Further Support?
📞 Book Consultation Call: Show Calendar!
📩 Contact Via Email: support@proventusnova.com
🌐 Visit Our Website: ProventusNova.com