FG24-4CH 软件
节点映射
(单目RGB相机,双目如ZED X请参考ZED X页面)
Devkit接口 | FAKRA接口 | 设备节点 |
---|---|---|
CAM1 | GMSL0 | /dev/video0 |
CAM1 | GMSL1 | /dev/video1 |
CAM1 | GMSL2 | /dev/video2 |
CAM1 | GMSL3 | /dev/video3 |
### 配置MAX96724时必须配置如下两个寄存器 | ||
0x08a5 = 0x3F // PHY0~1 Polarity negative | ||
0x08a6 = 0x3F // PHY2~3 Polarity negative |
固件升级
请先在NVIDIA Jetson® Orin™ NX模块上安装了正确的软件,通过升级BSP固件可支持不同相机。 GMSL1和GMSL2 相机需要使用适当的软件和固件配置才可以正常使用(对应固件需联系销售人员获取)。
FG24-4CH 采集板固件升级方法:
确保所有外部系统电源已关闭(Orin™ NX套件电源和GMSL板电源)
将FG24-4CH GMSL扩展板J12/J13和 Orin™ NX 22Pin连接器进行连接
将GMSL相机通过FAKRA连接线 接到J2/3/4/5连接器
将J1接入12V直流电源(最高可支持24V),即通过外部为GMSL相机供电
打开电源,等待系统启动,并参考Readme 进行软件固件的升级操作(将Image和dtb更新的/boot)
固件升级完成后,Reboot重启或断电重启机器
重启后可通过如下方式查看软件的一些信息
nvidia@nvidia-desktop:~$ sudo dmesg | grep connected
serdes 9-0029: /dev/video0 is connected!
serdes 9-0029: /dev/video1 is connected!
serdes 9-0029: /dev/video2 is connected!
serdes 9-0029: /dev/video3 is connected!
FG24-4CH客户可自行进行Serdes参数调试,相关参数配置可联系业务人员获取,,软件开发可以参考BSP包自带的IMX390 Driver
DTSI 配置可参考如下
#include "tegra234-camera-gmsl-fzcam.dtsi"
#define CAM_I2C_MUX TEGRA234_AON_GPIO(CC, 3)
#define CAM0_SYNC TEGRA234_MAIN_GPIO(H, 6)
#define CAM1_SYNC TEGRA234_MAIN_GPIO(AC, 0)
/ {
cam_i2cmux {
compatible = "i2c-mux-gpio";
#address-cells = <1>;
#size-cells = <0>;
mux-gpios = <&tegra_aon_gpio CAM_I2C_MUX GPIO_ACTIVE_HIGH>;
i2c-parent = <&cam_i2c>;
i2c@0 {//CAM1接口
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
serdes@29 {
compatible = "nvidia,serdes";
reg = <0x29>;
};
fzcam_1a@1a {
channel = <0>;
};
fzcam_1b@1b {
channel = <0>;
};
fzcam_1c@1c {
channel = <0>;
};
fzcam_1d@1d {
channel = <0>;
};
};
i2c@1 {//CAM0接口
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
serdes@29 {
compatible = "nvidia,serdes";
reg = <0x29>;
};
fzcam_2a@2a {
channel = <1>;
};
fzcam_2b@2b {
channel = <1>;
};
fzcam_2c@2c {
channel = <1>;
};
fzcam_2d@2d {
channel = <1>;
};
};
};
};
GMSL快速验证
设备支持使用Gstreamer输出视频流,图像获取与显示使用方法如下:
#8M相机:(3840x2160)
gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw, format=(string)UYVY, width=(int)3840, height=(int)2160" ! videoconvert ! fpsdisplaysink video-sink=xvimagesink sync=false
#5M相机:(2880x1860)
gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw, format=(string)UYVY, width=(int)2880, height=(int)1860" ! videoconvert ! fpsdisplaysink video-sink=xvimagesink sync=false
#2M 相机:(1920x1080)
gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw, format=(string)UYVY, width=(int)1920, height=(int)1080" ! fpsdisplaysink video-sink=xvimagesink sync=false
#1M相机:(1280x720)
gst-launch-1.0 v4l2src device=/dev/video0 ! "video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720" ! fpsdisplaysink video-sink=xvimagesink sync=false
#其他分辨率相机根据具体相机参数进行设置即可
Camera应用代码参考
jetson_cam_app 包含两个C++ 应用案例如下:
camera_v4l2_cuda :CUDA SDK Demo通过CUDA运行效率高(需预装JetPack SDK)。
camera_v4l2_opencv:OpenCV SDK Demo 直接使用V4L2和OpenCV来获取摄像头图像。
V4L2常用命令
#查看Camera设备列表
nvidia@nvidia-desktop:~$ v4l2-ctl --list-devices -d /dev/video0
NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0
vi-output, fzcam 9-001a (platform:tegra-capture-vi:0):
/dev/video0
/dev/video1
/dev/video2
/dev/video3
#查看Camera输出格式
nvidia@nvidia-desktop:~/fz.wks$ v4l2-ctl --list-formats -d /dev/video0
ioctl: VIDIOC_ENUM_FMT
Type: Video Capture
[0]: 'UYVY' (UYVY 4:2:2)
[1]: 'NV16' (Y/CbCr 4:2:2)
[2]: 'UYVY' (UYVY 4:2:2)
#V4L2 捕获100帧以查看其输出是否可以正常
v4l2-ctl --set-fmt-video=width=3840,height=2160 --stream-mmap --stream-count=1000 -d /dev/videoX
nvidia@nvidia-desktop:~$ v4l2-ctl --set-fmt-video=width=3840,height=2160 --stream-mmap --stream-count=100 -d /dev/video0
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 30.00 fps
<<<<<<<<
#其他V4L2 命令可参考
v4l2-ctl -d /dev/video0 --all
v4l2-compliance -d /dev/video0
FG24-4CH已验证兼容过的相机包括但不限于森云、猎豹、艾睿红外、丽景、Intel D457、Stereolabs ZEDX等,相机分辨率也可支持到从640x514到3840x2160(8M).
已验证过的相机(以下指YUV相机)包括但不限于
品牌 | Sensor型号(YUV) | 备注 |
---|---|---|
舜宇Sunny | OX08B40 | |
Stereolabs | ZED X/mini | |
艾睿光电 | M6 | |
Pilot640 | ||
辉创Whetron | OSX019 | |
德赛 | OX01FC | |
OSX019 | ||
森云智能 | AR0147 | |
AR0231 | ||
OX03C | ||
IMX390 | ||
ISX031 | ||
OX05B | ||
IMX490 | ||
AR0820 | ||
OX08BC | ||
Leopard猎豹 | IMX490 | |
ISX021 | ||
ISX031 | ||
OX08BCX4000 | ||
广州晶华精密 | OX08BC | |
IMX390 | ||
OX01FC | ||
沈阳丽景科技 | IMX390 | |
ISX031 | ||
OX08B40 | ||
艾利光 | OSX019 | |
ISX031 | ||
ISX021 |