TechNexion Camera Modules for JetPack 6.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 Camera Modules
| Camera Series | Products |
|---|---|
| TEVS Series | TEVS-AR0144 TEVS-AR0145 TEVS-AR0234 TEVS-AR0521 TEVS-AR0522 TEVS-AR0821 TEVS-AR0822 TEVS-AR1335 |
More Camera Products Details...
If you want to use the VLS or VLS-GM2 camera, please refer to another guide.
Supported NVIDIA Jetson Developer Kit
Install TN Camera on Jetson Developer Kit
Adaptor for NVIDIA Jetson Orin Nano Development Kit
TEV-RPI22 Adaptor
Connect TEVS camera and TEV-RPI22 adaptor to Jetson Orin Nano Developer Kit directly.
Method 1 - Using TechNexion pre-built modules
Jetson Orin Nano
We recommend following the Getting Started Guide for Jetson Orin Nano Developer Kit. After that, you can follow the below method to install TechNexion Cameras Driver.
-
Download pre-built modules.
JetPack 6.1
wget https://download.technexion.com/demo_software/EVK/NVIDIA/OrinNano/pre-built-modules/latest/JP61/tn_camera_modules_jp61.tar.gzJetPack 6.2
wget https://download.technexion.com/demo_software/EVK/NVIDIA/OrinNano/pre-built-modules/latest/JP62/tn_camera_modules_jp62.tar.gzJetPack 6.2.1
wget https://download.technexion.com/demo_software/EVK/NVIDIA/OrinNano/pre-built-modules/latest/JP621/tn_camera_modules_jp621.tar.gz -
Uncompress the modules.
tar -xf tn_camera_modules_<jp_ver>.tar.gz -
Run installation script.
cd tn_camera_modules_<release_time>/
./tn_install.sh -
After you agree to continue the installation, select the pre-installed modules that you want. The default module is TEVS cameras.
JetPack 6.1
$ ./tn_install.sh
****** TechNexion Camera Driver Installation ******
This installation is easy to install TechnNexion Camera Drivers for Nvidia
Jetson Development Kits. Before start to install camera driver,
You should BACKUP your image to avoid any file you lost while installing process.
Do you want to continue?[Y/n]y
Continuing with the installation...
File does not exist in /boot/dtb/
Setting REF_DTB_FILE to existing file: kernel_tegra234-p3768-0000+p3767-0005-nv.dtb
Install TN-CAM modules: max96724.ko
Install TN-CAM modules: max96716a.ko
Install TN-CAM modules: max96717.ko
Install TN-CAM modules: vls3.ko
Install TN-CAM modules: tevs.ko
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-tevs-dual.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls3.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-fsync.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-tunnel.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-tunnel-fsync.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-fsync-external.dtbo
Installed TN-CAM DTB file Done.
Select modules:
[1]: TEVS: TEVS Series MIPI Cameras with TEV-RPI22 Adaptor
[2]: VLS3: VLS3 Series Cameras with VLS3-ORIN-EVK Adaptor
[3]: VLS-GM2: VLS-GM2 Series Cameras with VL-GM2-8CAM-RPI22 Adaptor
Which modules do you select?[default:1]1
Installing module: tevs
Add TN-CAM Configuration for modules: tevs
Set Default Configuration for modules: tevs
Install TN-CAM service...
Launch TN-CAM Service...
Finish Camera Driver Installation. Return Code:[0]
You should Reboot Device to enable tevs Cameras.
Do you want to reboot now?[Y/n]Y
Rebooting....JetPack 6.2.x
$ ./tn_install.sh
****** TechNexion Camera Driver Installation ******
This installation is easy to install TechnNexion Camera Drivers for Nvidia
Jetson Development Kits. Before start to install camera driver,
You should BACKUP your image to avoid any file you lost while installing process.
Do you want to continue?[Y/n]y
Continuing with the installation...
File does not exist in /boot/dtb/
Setting REF_DTB_FILE to existing file: kernel_tegra234-p3768-0000+p3767-0005-nv.dtb
Install TN-CAM modules: max96724.ko
Install TN-CAM modules: max96716a.ko
Install TN-CAM modules: max96717.ko
Install TN-CAM modules: vls3.ko
Install TN-CAM modules: tevs.ko
Select platform:
[1]: Jetson Orin Nano
[2]: Jetson AGX Orin (only support JP6.2.x)
Which platform do you select?[default:1]1
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-tevs-dual.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls3.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-fsync.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-tunnel.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-tunnel-fsync.dtbo
Installed TN-CAM DTB file Done.
Install TN-CAM DTBO file: tegra234-p3767-camera-p3768-vls-gm2-fsync-external.dtbo
Installed TN-CAM DTB file Done.
Select modules:
[1]: TEVS: TEVS Series MIPI Cameras with TEV-RPI22 Adaptor
[2]: VLS3: VLS3 Series Cameras with VLS3-ORIN-EVK Adaptor
[3]: VLS-GM2: VLS-GM2 Series Cameras with VL-GM2-8CAM-RPI22 Adaptor
Which modules do you select?[default:1]1
Installing module: tevs
Add TN-CAM Configuration for modules: tevs
Set Default Configuration for modules: tevs
Install TN-CAM service...
Launch TN-CAM Service...
Finish Camera Driver Installation. Return Code:[0]
You should Reboot Device to enable tevs Cameras.
Do you want to reboot now?[Y/n]Y
Rebooting....
You should reboot the device after installation.
Method 2 - Build drivers from source code
Please follow the guide to build camera driver modules.
Bring up Camera
TechNexion VizionViewer
Gstreamer
If you succeed in initialing the camera, you can follow the steps to open the camera.
-
Check the supported resolutions:
$ gst-device-monitor-1.0 Video/Source
Device found:
name : vi-output, tevs 10-0048
class : Video/Source
caps : video/x-raw, format=UYVY, width=640, height=480, framerate=120/1
video/x-raw, format=UYVY, width=1280, height=720, framerate=120/1
video/x-raw, format=UYVY, width=1920, height=1080, framerate=60/1
video/x-raw, format=UYVY, width=1920, height=1200, framerate=60/1
video/x-raw, format=NV16, width=640, height=480, framerate=120/1
video/x-raw, format=NV16, width=1280, height=720, framerate=120/1
video/x-raw, format=NV16, width=1920, height=1080, framerate=60/1
video/x-raw, format=NV16, width=1920, height=1200, framerate=60/1
video/x-raw, format=UYVY, width=640, height=480, framerate=120/1
video/x-raw, format=UYVY, width=1280, height=720, framerate=120/1
video/x-raw, format=UYVY, width=1920, height=1080, framerate=60/1
video/x-raw, format=UYVY, width=1920, height=1200, framerate=60/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\ 10-0048"
api.v4l2.cap.bus_info = platform:tegra-capture-vi:1
api.v4l2.cap.version = 5.15.148
api.v4l2.cap.capabilities = 84200001
api.v4l2.cap.device-caps = 04200001
device.id = 33
node.name = v4l2_input.platform-tegra-capture-vi
node.description = "vi-output\,\ tevs\ 10-0048"
factory.name = api.v4l2.source
node.pause-on-idle = false
factory.id = 10
client.id = 32
clock.quantum-limit = 8192
media.role = Camera
node.driver = true
object.id = 34
object.serial = 34
gst-launch-1.0 pipewiresrc path=34 ! ...
... -
Bring up the camera (/dev/video0) with 1280x720 by Gstreamer pipeline:
DISPLAY=:0 gst-launch-1.0 v4l2src device=/dev/video0 ! \
"video/x-raw, format=UYVY, width=1280, height=720" ! xvimagesink sync=false
Troubleshooting
-
Cannot Find Cameras
If you cannot bring up the cameras, you can check if the video device does exist.
$ ls /dev/video* # List all video devices
/dev/video0 /dev/video1If you cannot see the devices, you should check if the drivers have been probed.
-
Occur Error: Could not get EGL display connection
If you occurred the errors
nvbufsurftransform: Could not get EGL display connectionby rununing the Gstreamer command, you can modify the parameter 'DISPLAY' by the command:# Check and Set environment parameter for 'DISPLAY'
$ export DISPLAY=$(w| tr -s ' '| cut -d ' ' -f 3 | grep :)
# Run Gstreamer pipeline
$ gst-launch-1.0 v4l2src device=/dev/video0 ! \
"video/x-raw, format=UYVY, width=1280, height=720" ! xvimagesink sync=false