rdkx5 插入mipi摄像头,识别不到i2c啊

:bullseye: 核心结论

MIPI 摄像头的 I2C 检测不到是正常现象! RDK X5 的 MIPI CSI 接口不走标准 V4L2/I2C 路径i2cdetect 检测不到设备地址不代表硬件有问题。

根据社区案例(如 官方双目摄像头 i2cdetect 无法探测到),这是 RDK X5 的架构特性:

  • USB 摄像头:走 V4L2 驱动,/dev/video* 可见,i2cdetect 可检测
  • MIPI CSI 摄像头:走地平线专用 ISP 管道,不暴露为标准 I2C 设备

:clipboard: 正确排查步骤

第一步:确认摄像头型号和连接

# 1. 检查 MIPI 接口物理连接
# - 确认排线方向正确(金属面朝内/外参考手册)
# - 确认接口插紧无松动
# - 如使用转接线,确认兼容性(15pin↔22pin)

# 2. 查看系统识别的 MIPI 设备
dmesg | grep -i mipi
dmesg | grep -i camera
dmesg | grep -i isp

第二步:使用官方 MIPI 样例测试

# 进入 MIPI 摄像头样例目录
cd /app/pydev_demo/03_mipi_camera_sample/

# 运行样例(根据你连接的 CSI 接口选择 pipeId)
sudo python3 ./mipi_camera.py

关键参数说明

  • pipeId=0 → 对应 CSI-1 接口
  • pipeId=1 → 对应 CSI-2 接口
  • 需要根据你的摄像头型号修改传感器配置

第三步:检查设备树和驱动加载

# 查看内核日志中摄像头相关报错
dmesg | tail -100 | grep -E "camera|mipi|isp|sensor"

# 检查是否有 ISP 节点创建失败
dmesg | grep "creat_isp_node"

第四步:确认系统版本和摄像头兼容性

# 检查系统版本
cat /etc/issue

# 确认摄像头型号是否在官方支持列表中
# 参考:https://developer.d-robotics.cc/rdk_doc/Quick_start/hardware_introduction/rdk_x5#mipi_port

:warning: 常见原因

问题 现象 解决方案
摄像头型号不兼容 样例运行报错 creat_isp_node failed 使用官方支持型号(如 SC130AI、SC230AI、GS130W 等)
系统版本过旧 驱动加载失败 升级到 3.1.0+ 版本
硬件连接错误 无任何输出 检查排线方向、接口松动
转接线不兼容 间歇性识别失败 使用官方转接线或直接连接
设备树未配置 检测不到传感器 参考手册配置对应传感器节点

:wrench: 下一步行动

请提供以下信息,我可以帮你进一步定位:

  1. 摄像头具体型号(如 SC130AI、OV5647、IMX219 等)
  2. 连接的 MIPI 接口(CSI-1 还是 CSI-2)
  3. 运行官方样例的报错信息
  4. dmesg | grep -i mipi 的输出

:books: 相关资源

建议:先运行官方样例确认硬件是否正常,不要依赖 i2cdetect 判断 MIPI 摄像头状态。