- 01 Oct 2024
- 3 Minutes to read
- Print
- DarkLight
- PDF
TI Starter Kit EVM Board TEVS Camera Usage Guide
- Updated on 01 Oct 2024
- 3 Minutes to read
- Print
- DarkLight
- PDF
Introduction
This article guides you how to get started using TechNexion camera modules on Ti starter kit.
Supported Camera Modules
Camera Series | Products |
---|---|
TEVS | TEVS-AR0144-C TEVS-AR0145-M TEVS-AR0234-C TEVS-AR0521-C TEVS-AR0522-C TEVS-AR0522-M TEVS-AR0821-C TEVS-AR0822-C TEVS-AR1335-C |
Check here : TechNexion Embedded Vision Solutions ! Find out the solution which can accelerate your time to market for embedded vision projects.
TechNexion is using ti-processor-sdk-linux with 09.01.00.0X (Dec 2023), if you need to support other versions, you can grab the source codes from Github and build it yourself.
Overview
- Supported Ti Developer Kit
- Prepare for TechNexion cameras
- Using TechNexion Pre-built Image
- Instructions for Testing Camera
- Troubleshooting
Supported Ti Developer Kit
Prepare adapter board and cable for TechNexion cameras
With different board you need prepare match adapter board and cable for the connect pins.
Here is the table for you can easily to confirm what you need for your solution.
Developer Kit | Adapter board | Camera Kit |
---|---|---|
Ti SK-AM62 | TEV-RPI15 Adaptor | TechNexion EVK RPI15 |
Ti SK-AM62A-LP | TEV-RPI22 Adaptor | TechNexion EVK RPI22 |
Ti SK-TDA4VM | TEV-RPI15 Adaptor | TechNexion EVK RPI15 |
Follow this demo video to connect adapter and cable to the CSI connector on board.
For speed up product development, we suggest you to choose Technexion ROVY-4VM solution. It benefits for more extensions for different use cases.
ROVY-4VM, (cameras support list)
Using TechNexion Pre-built Image
The Pre-built image contains the required device tree blobs and camera drivers to enable TechNexion TEVS Series cameras. It can be available for download via TechNexion's server.
Instructions for Testing Camera
Specify Camera DTB in uEnv.txt
- Find 'uEnv.txt' file in SD card which you flash the image.
# Open on SK-TDA4VM, the directory should be here:
$ /run/media/BOOT-mmcblk1p1/uEnv.txt
# Open on HOST-PC, the directory should be here:
$ /media/username/BOOT/uEnv.txt
- Add camera dtb specifies the 'name_overlays' variable in uEnv.txt.
#SK-AM62X
name_overlays= k3-am625-sk-csi2-tevs.dtbo
#SK-AM62A
name_overlays= k3-am62a7-sk-csi2-tevs.dtbo
#SK-TDA4VM
name_overlays= k3-j721e-sk-tevs.dtbo
Start Camera Video Stream via Gstreamer
We can check whether camera have been link via v4l2 control command :
$ v4l2-ctl --list-device
Get the device number of camera capture device.
# CSI 0 (cam1)
j721e-csi2rx (platform:4504000.ticsi2rx):
/dev/video{X}
# CSI 1 (cam2)
j721e-csi2rx (platform:4510000.ticsi2rx):
/dev/video{X}
The following is example.
Specify the capture device you just get (/dev/video2) and start gstreamer to get video stream with 640x480 on the display :
$ gst-launch-1.0 v4l2src device=/dev/video2 ! video/x-raw,width=640,height=480 ! waylandsink sync=false
Troubleshooting
Take TEVS-AR0234 on SK-TDA4VM CAM2 connector for example:
Cannot Run Edge AI Demo Application
The Pre-built image build on Ti, so the initial demo application doesn't include TechNexion's cameras. you can disable this system service and call the Weston desktop again.
$ systemctl disable edgeai-init.service
$ systemctl restart weston
$ reboot
Find out the Camera
Boot up SK-TDA4VM and check initialization of camera driver.
it shows below messages, the driver is initialized correctly. If the drivers haven't been probed, please check the connector plugin correct.
$ dmesg -t | grep tevs
root@tda4vm-sk:/opt/edgeai-gst-apps# dmesg|grep tevs
tevs 7-0048: tevs_probe() device node: tevs@48
tevs 7-0048: Version:24.8.0.1
tevs 7-0048: Product:TEVS-AR0234, HeaderVer:3, MIPI_Rate:800
tevs 7-0048: probe success
And then try to using media-ctl
framework to print the device topology from camera to CSI and the end to video device node.
$ media-ctl -d /dev/media1 -p
We can get which v4l2-subdev is camera in this print message and then we can use v4l2-ctl
by it.
Change Resolution
For kernel 6.1 architecture you cannot easily change resolution in gsteamer pipeline. You must need to using v4l2-ctl
to do this.
1. Check camera supported resolutions via v4l2-ctl
v4l2-ctl -d /dev/v4l-subdev2 --list-subdev-framesize pad=0
root@tda4vm-sk:/opt/edgeai-gst-apps# v4l2-ctl -d /dev/v4l-subdev2 --list-subdev-framesize pad=0
ioctl: VIDIOC_SUBDEV_ENUM_FRAME_SIZE (pad=0,stream=0)
Size Range: 640x480 - 640x480
Size Range: 1280x720 - 1280x720
Size Range: 1920x1080 - 1920x1080
Size Range: 1920x1200 - 1920x1200
2.Set Format
media-ctl --set-v4l2 "'tevs 7-0048':0 [fmt:UYVY8_2X8/1280X720@1/30 field:none]"