Jetson AGX Orin Developer Kit with JetPack 7.2.x
Instruction
TechNexion Embedded Vision Solutions provide embedded system developers access to high-performance, industrial-grade camera solutions to accelerate their time to market for embedded vision projects.
Supported Platforms
| Platform | Supported JetPack | GMSL2 Adaptor |
|---|---|---|
| Jetson AGX Orin Developer Kit | JetPack 7.2, 7.2.1 | VL-GM2-AGX-8CAM |
Supported Camera Modules
| Camera Series | Products |
|---|---|
| VLS-GM2 | VLS-GM2-AR0144 VLS-GM2-AR0145 VLS-GM2-AR0234 VLS-GM2-AR0235 VLS-GM2-AR0246 VLS-GM2-AR0521 VLS-GM2-AR0522 VLS-GM2-AR0544 VLS-GM2-AR0821 VLS-GM2-AR0822 VLS-GM2-AR0830 VLS-GM2-AR1335 VLS-GM2-AR2020 |

More Camera Products Details...
This guide has been validated on Jetson AGX Orin Developer Kit with JetPack 7.2 and 7.2.1. JetPack 7.2 uses Linux for Tegra 39.2.0 and the JP72 package; JetPack 7.2.1 uses Linux for Tegra 39.2.1 and the JP721 package. Both versions use kernel 6.8.12-1021-tegra.
Install TN Camera on Jetson AGX Orin Developer Kit
Adaptor for NVIDIA Jetson AGX Orin Developer Kit
Use the VL-GM2-AGX-8CAM adaptor for VLS-GM2 cameras on Jetson AGX Orin Developer Kit. For adaptor pinout and power details, see VL-GM2-AGX-8CAM.
Using TechNexion pre-built modules
We recommend setting up the Jetson AGX Orin Developer Kit with a matching NVIDIA JetPack 7.2.x image first. After that, select the same JetPack version in each tab below to install the matching TechNexion camera driver package.
- Download pre-built modules.
- JetPack 7.2
- JetPack 7.2.1
wget https://download.technexion.com/demo_software/EVK/NVIDIA/AGXOrin/pre-built-modules/latest/JP72/tn_camera_modules_jp72.tar.gz
wget https://download.technexion.com/demo_software/EVK/NVIDIA/AGXOrin/pre-built-modules/latest/JP721/tn_camera_modules_jp721.tar.gz
- Uncompress the modules.
- JetPack 7.2
- JetPack 7.2.1
tar -xf tn_camera_modules_jp72.tar.gz
tar -xf tn_camera_modules_jp721.tar.gz
- Run the installation script.
- JetPack 7.2
- JetPack 7.2.1
cd tn_camera_modules_agx_orin_jp72_<release_time>/
sudo ./tn_install.sh
cd tn_camera_modules_agx_orin_jp721_<release_time>/
sudo ./tn_install.sh
- Run the AGX Orin installer. VLS-GM2 is selected automatically for this package.
- JetPack 7.2
- JetPack 7.2.1
$ sudo ./tn_install.sh
****** TechNexion Camera Driver Installation ******
This installer updates TechNexion camera drivers, camera DTBOs,
and boot entries for NVIDIA Jetson Development Kits.
Back up your image before continuing.
Continue? [Y/n] Y
Reboot after installation? [y/N] n
Installing AGX Orin JP72
Selected module: VLS-GM2
Installation summary:
Kernel: 6.8.12-1021-tegra
Modules installed: 4
Boot files installed: 5
Default boot entry: vls-gm2
Camera overlay: /boot/tegra234-p3737-camera-vls-gm2-overlay.dtbo
Camera boot entries: 5
Finish Camera Driver Installation.
Reboot the device when the user is ready.
$ sudo ./tn_install.sh
****** TechNexion Camera Driver Installation ******
This installer updates TechNexion camera drivers, camera DTBOs,
and boot entries for NVIDIA Jetson Development Kits.
Back up your image before continuing.
Continue? [Y/n] Y
Reboot after installation? [y/N] n
Installing AGX Orin JP721
Selected module: VLS-GM2
Installation summary:
Kernel: 6.8.12-1021-tegra
Modules installed: 4
Boot files installed: 5
Default boot entry: vls-gm2
Camera overlay: /boot/tegra234-p3737-camera-vls-gm2-overlay.dtbo
Camera boot entries: 5
Finish Camera Driver Installation.
Reboot the device when the user is ready.
Reboot the device after installation.
Bring up Camera
TechNexion VizionViewer
GStreamer
After the camera initializes successfully, use the following commands to inspect and test it.
-
Check the supported resolutions:
$ gst-device-monitor-1.0 Video/Source
Probing devices...
Device found:
name : vi-output, tevs 9-003d (V4L2)
class : Video/Source
caps : video/x-raw, format=UYVY, width=640, height=480, framerate=60/1
video/x-raw, format=UYVY, width=1280, height=720, framerate=60/1
video/x-raw, format=UYVY, width=1920, height=1080, framerate=60/1
video/x-raw, format=UYVY, width=2560, height=1440, framerate=30/1
video/x-raw, format=UYVY, width=3840, height=2160, framerate=15/1
video/x-raw, format=NV16, width=640, height=480, framerate=60/1
video/x-raw, format=NV16, width=1280, height=720, framerate=60/1
video/x-raw, format=NV16, width=1920, height=1080, framerate=60/1
video/x-raw, format=NV16, width=2560, height=1440, framerate=30/1
video/x-raw, format=NV16, width=3840, height=2160, framerate=15/1
properties:
object.path = v4l2:/dev/video0
device.api = v4l2
media.class = Video/Source
api.v4l2.path = /dev/video0
api.v4l2.cap.driver = tegra-video
api.v4l2.cap.card = vi-output, tevs 9-003d
api.v4l2.cap.bus_info = platform:tegra-capture-vi:0
api.v4l2.cap.version = 6.8.12
api.v4l2.cap.capabilities = 84200001
api.v4l2.cap.device-caps = 04200001
node.name = v4l2_input.platform-tegra-capture-vi
node.description = vi-output, tevs 9-003d (V4L2)
factory.name = api.v4l2.source
media.role = Camera
gst-launch-1.0 pipewiresrc target-object=49 ! ...
... -
Verify a 1280x720 camera (/dev/video0) through the NVIDIA capture path without opening a display window:
$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=30 ! \
"video/x-raw(memory:NVMM), format=UYVY, width=1280, height=720, framerate=60/1" ! \
nvvidconv ! "video/x-raw(memory:NVMM), format=NV12" ! fakesink sync=false -
Launch a 1280x720 camera (/dev/video0) via the GPU on the Jetson display:
$ DISPLAY=:0 gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 ! \
"video/x-raw(memory:NVMM), format=UYVY, width=1280, height=720, framerate=60/1" ! \
nvvidconv ! "video/x-raw(memory:NVMM), format=NV12" ! nv3dsink sync=false
Troubleshooting
Cannot Find Cameras
If you cannot bring up the cameras, check whether the video devices exist.
$ ls /dev/video* # List all video devices
/dev/video0 /dev/video1 /dev/video2 /dev/video3
/dev/video4 /dev/video5 /dev/video6 /dev/video7
Check whether the camera drivers have been probed.
$ lsmod | grep -E 'tevs|max96724|max96717'
max96717 32768 8
tevs 32768 0
You can also check whether the VLS-GM2 boot entry and the AGX Orin overlay are active after reboot.
$ grep -nE 'DEFAULT|LABEL|FDT|OVERLAYS' /boot/extlinux/extlinux.conf
DEFAULT tn-vls-gm2
LABEL tn-vls-gm2
FDT /boot/tegra234-p3737-0000+p3701-0005-nv.dtb
OVERLAYS /boot/tegra234-p3737-camera-vls-gm2-overlay.dtbo
Could not get EGL display connection or failed to start nv3dsink
If you encounter nvbufsurftransform: Could not get EGL display connection or nv3dsink: Failed to start when running the GStreamer command through SSH, run the command from the Jetson graphical session or set the display environment before launching the pipeline:
$ export DISPLAY=:0
$ export XDG_RUNTIME_DIR=/run/user/$(id -u)
$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 ! \
"video/x-raw(memory:NVMM), format=UYVY, width=1280, height=720, framerate=60/1" ! \
nvvidconv ! "video/x-raw(memory:NVMM), format=NV12" ! nv3dsink sync=false
If the display sink still cannot start from SSH, verify the camera capture path without opening a display window:
$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=30 ! \
"video/x-raw(memory:NVMM), format=UYVY, width=1280, height=720, framerate=60/1" ! \
nvvidconv ! "video/x-raw(memory:NVMM), format=NV12" ! fakesink sync=false