一、背景
背景:基于J5 DVB+MAX9296+MAX96712子板实现前视8M及环视2M摄像头接入
目标群体:客户研发,要求对Serdes、CMOS Sensor、MIPI有基本了解。
- 场景说明:
-- 完成OVX8B(SG8-OX08BC-GMSL2)调试出图
-- 四路ISX031(SG3-ISX031C-GMSL2)调试出图
-- 两组配置合入同一配置,实现5V同时接入
二、准备工作
2.1 硬件平台
硬件 | 型号 | 数量 |
|---|---|---|
J5 DVB开发套件 | / | 1 |
MAX96712子板 | / | 1 |
MAX9296子板 | / | 1 |
摄像头Fraka连接线四合一 | / | 1 |
摄像头Fraka连接线单路 | / | 1 |
OVX8B模组 | SG8-OX08BC-GMSL2 | 1 |
ISX031模组 | SG3-ISX031C-GMSL2 | 4 |
2.2 软件&工具
软件&工具 | 说明 |
|---|---|
J5 BSP开发包 | 地平线社区下载 |
hbplayer软件 | 实时显示模组图像 |
7yuv | 远程调试,dump图像后显示用 |
终端软件 | Putty等 |
三、操作步骤
3.1 确认模组硬件规格及驱动
该两款模组为Pilot 3J3硬件已适配模组,J5与J3 BSP框架基本相同,默认驱动已适配。

ISX031模组从MIPI RX2接入,I2C总线2:

模组默认上电,不需要控制POC输出使能。
修改启动脚本/userdata/app/init.sh,使能系统目录RW,配置网络:
./rwdir /system/etc /system/lib /app
ifconfig eth0 down
ifconfig eth1 192.168.1.10 netmask 255.255.255.0
ifconfig eth1 up
3.2 OVX8B点亮调试
1.vcs_test/run_tuning.sh


hbplayer从ISP输出取图,分辨率:3840*2160

2. vpm_gtest /vio_test_case.sh
基于现有sen_cim_isp0_pym0_4k_ovx8b配置修改,配置文件目录:/userdata/mount/app/bin/vps/vpm/vpm_config.json

修改vio_test_case.sh对应配置,脚本执行时间:-r 1000,hbplayer图像显示:-S 1

hbplayer从PYM第0层输出取图,分辨率:1920*1080

3.3 ISX031 四路点亮调试
基于现有quad_sen_cimdma_pym0_1536p_isx031配置,修改port_1--4参数:
参数 | 含义 |
|---|---|
bus_num | I2C总线num |
entry_num | Mipi rx num |
vc_index | 摄像头接入通道,多摄像头使用 |
rx_index | Mipi rx num |
buf_num | GDC模块buffer数量 |
hb_j5dev.json:
cim_config.json,vc_index从0开始按摄像头数量累加,修改port_1--4参数

vpm_config.json,修改port_1--4 buf_num配置,原文件为0,会报错

hbplayer会出现四路图像不停切换画面,J5多路图像需要点击screencfg检查效果:


3.4 五路摄像头集成点亮出图
为减小工作量,以四路ISX031配置为基础增加OVX8B配置,修改完成5v同时接入。
- 脚本文件增加
/userdata/mount/app/bin/vps/vpm/cfg目录下新建5V_sen_cimdma_pym0_1536p_isx031_cim_isp0_4K_ovx8b文件夹,将前面ISX031配置拷贝至目录下。 - hb_j5dev.json修改:
修改解串器数量,port数量,以及每路摄像头对应的deserial_index,一共修改5路

参数
含义
deserial_num
系统接入的解串器数量,本例程接入了MAX96712和MAX9296,参数设置 2
port_number
系统接入的摄像头数量,本例程接入了5路摄像头,参数设置 5
dev_port
接入的摄像头序号,5路摄像头,参数设置:从0-5
deserial_index
该摄像头接入的des器件num,如果从deserial_0接入,设置参数 0
deserial_port
该摄像头在其接入的des器件中的port num。ISX031 接入MAX96712 port_0-3,参数设置:从0-3。OVX8B接入MAX9296 port 0,参数设置 0
- cim_config.json修改:
增加pipeline4 x8b配置

- vpm_config.json修改:
增加pipeline4 x8b配置
- vio_test_case.sh修改

参数列表:参数
含义
-r 1000
修改测试运行时间
-e 0
pym显示图层,从第0层取图
-S 1
hbplayer显示enable
-M 31
本示例一共5路摄像头,按位enable,0x11111,取值31。需要与实际摄像头数量匹配,如果是6V,取值63,否则报错
5V同时出图:

3.5 调试手段
- 确认J5内部通道的配置,如果是配置cim接收数据,就查询cim的输入输出是否正常,cim_dma一样的操作
查询CIM 0 到 3
cat /sys/devices/platform/soc/47010000.cam_sys/47060000.cim/fps
查询cim_dma 0 到 3
cat /sys/devices/platform/soc/47010000.cam_sys/47180000.cim_dma/fps - 如果有ISP,确认ISP的输入输出帧率是否正常
ISP0:
cat /sys/devices/platform/soc/47010000.cam_sys/470c0000.isp/fps
ISP1:
cat /sys/devices/platform/soc/47010000.cam_sys/47110000.isp_hw1/fps - 使用PYM,确认PYM模块的输入输出帧率是否正常
PYM0:
cat /sys/devices/platform/soc/47010000.cam_sys/470e0000.pym/fps
PYM1:
cat /sys/devices/platform/soc/47010000.cam_sys/47130000.pym/fps
PYM2:
cat /sys/devices/platform/soc/47010000.cam_sys/47190000.pym/fps - 查询PYM的模块运行状态
PYM0:
cat /sys/devices/platform/soc/47010000.cam_sys/470e0000.pym/pym_stat
PYM1:
cat /sys/devices/platform/soc/47010000.cam_sys/47130000.pym/pym_stat
PYM2:
cat /sys/devices/platform/soc/47010000.cam_sys/47190000.pym/pym_stat
四、配置文件
相关配置文件请参考附件
