关于RDK X5使用sc132gs双目相机中的一些问题

目前我使用sc132gs双目相机发现,无法配置成120fps来使用,似乎是官方驱动只支持60fps,想问一下有什么比较方便修改的操作,能够让我更高帧率的使用这个相机?
并且我逛了淘宝,发现只有GS130W的版本可以购买,GS130WI包含IMU的版本一直没有货,请问什么时候才能买到?

还有一个建议:目前购买GS130W,标配了新的排线,有方向的区分,但这个说明仅在双目深度算法内有说明,一开始的摄像头数据采集示例是没有更新说明的,对于新手来说是不友好的,我就接反了,还好没有烧,欲哭无泪。

而且一开始的摄像头数据示例似乎没有兼容这个相机模组,例如vio2display这个,我在运行这个脚本之前,通过i2c能正常检测到两颗相机的地址,运行vio2display这个会报错,然后再次通过i2c检测,发现第二颗摄像头的地址已经检测不到,第一颗仍能检测到,重启板子后能恢复。我也看了论坛,有人也遇到这个脚本无法运行的问题,但他通过修改传入的分辨率参数解决了,我尝试了后也不行。

但目前我已经通过sp_vio的SDK能够正常使用这个相机模组了,以上是我的疑惑和反馈建议,希望能解答一下,再次感谢!

# cat /etc/version
3.4.1

root@ubuntu:~# dpkg --status hobot-spdev
Package: hobot-spdev
Status: install ok installed
Installed-Size: 1057
Maintainer: developer@d-robotics.cc
Architecture: arm64
Version: 3.0.8-20251208164547
Depends: hobot-multimedia, hobot-camera, hobot-dnn
Description: Python and C/C++ Development Interface
Git Commit: 19e6f00fe0c792be14fdda6bef9360cde113ff3d

你好,@xmmx!感谢你详细的反馈和问题描述。你遇到的几个问题在社区中确实有类似案例,我来逐一解答并提供排查建议:


1. SC132GS 无法配置 120fps 的问题

结论:目前官方驱动对 SC132GS 在 RDK X5 上默认只支持 60fps,120fps 需要修改 sensor 配置或等待官方更新。

排查与解决路径:

  1. 确认 sensor 配置

    # 查看当前 camera 配置
    cat /etc/hobot_camera/sc132gs_config.json
    

    检查 fps 字段是否被硬编码为 60。

  2. 尝试修改 sensor 寄存器(需参考 SC132GS datasheet):

    • 找到驱动中配置帧率的寄存器(通常是 0x3032 或类似)
    • 修改为支持 120fps 的值(需确认 sensor 是否支持)
  3. 参考社区案例

  4. 临时方案

    • 如果只需更高帧率用于特定算法,可考虑降低分辨率(如 640x480)来换取更高 fps

2. GS130WI(带 IMU 版本)缺货问题

结论:这是供应链问题,建议:

  • 关注 地平线官方淘宝店 或联系官方销售
  • 社区有用户反馈 GS130WI 预计 2026 Q2 恢复供货(非官方消息,仅供参考)
  • 如果 IMU 非必需,可先用 GS130W + 外置 IMU 方案

3. 排线方向说明不清晰导致接反

感谢反馈! 这确实对新手不友好。

当前解决方案:

  1. 排线方向识别

    • 新版排线有 箭头标记,箭头朝向 板载连接器锁扣方向
    • 双目深度算法文档中有说明,但数据采集示例确实未同步更新
  2. 建议

    • 你已在论坛反馈,建议同时提交 GitHub Issue 或联系官方文档团队
    • 社区可贡献 PR 更新示例文档

4. vio2display 脚本运行后 I2C 地址丢失问题

这是关键问题! 你描述的现象(运行后第二颗相机 I2C 地址消失)表明 脚本可能错误释放了 I2C 总线或导致 sensor 进入异常状态

排查步骤:

  1. 确认脚本参数

    # 查看 vio2display 支持的分辨率
    vio2display --help
    
    # 尝试不同分辨率组合
    vio2display -w 1280 -h 720  # 或其他 SC132GS 支持的分辨率
    
  2. 检查脚本源码

    • 定位到 /app/pydev_demo/03_mipi_camera_sample/vio2display.py
    • 查看是否有 i2c_close() 或 sensor reset 操作
  3. 对比 sp_vio SDK

    • 你提到 sp_vio 能正常工作,对比两者的初始化流程
    • 重点检查 sp_open_camera 与 vio2display 的 camera init 差异
  4. 临时规避

    • 运行 vio2display 前备份 I2C 状态
    • 运行失败后通过 i2cset 尝试恢复 sensor:
      i2cset -y 1 0x30 0x01 0x01  # 软复位示例(需查 datasheet)
      
  5. 参考类似案例

    • 论坛有用户遇到 类似问题,通过修改分辨率参数解决
    • 如果仍不行,建议提供完整报错日志到论坛

5. 建议与后续行动

你可以立即做的:

  1. 提交详细日志

    • 将 vio2display 的完整报错输出(含 dmesg 日志)发到论坛
    • 标注系统版本:3.4.1 + hobot-spdev 3.0.8
  2. 检查官方文档更新

  3. 使用 sp_vio 作为临时方案

    • 既然 sp_vio 能正常工作,可先基于它开发,等待官方修复 vio2display

官方可能需要的反馈:

  • vio2display 不兼容 SC132GS 的 bug 报告
  • 排线方向说明需同步到所有示例文档
  • 120fps 支持需求(可发起 Feature Request)

总结

问题 当前状态 建议行动
120fps 支持 驱动限制 修改 sensor 配置或等官方更新
GS130WI 缺货 供应链问题 关注官方店铺或联系销售
排线说明不清 文档缺失 已反馈,建议提交 GitHub Issue
vio2display 报错 疑似 bug 提供日志到论坛,临时用 sp_vio

你已经在正确使用 sp_vio,这是目前最稳定的方案。如果需要进一步协助排查 vio2display 问题,请提供:

  • 完整的报错输出
  • dmesg | grep -i camera 日志
  • 你尝试过的分辨率参数组合

再次感谢你的详细反馈,这对社区改进非常重要!:folded_hands:

这个 60fps 是目前驱动的限制了,要使用高帧率需要适配,这个工作量排期就比较大了

GS130WI 目前还在优化中,争取在H1上线

手册问题建议收到

摄像头数据示例目前是只有单目数据获取的内容

目前最新系统镜像为 3.5.0 可以更新RDK X系列历史发布 | RDK DOC

官方近期有更新的计划吗。因为我也在配置120FPS的过程中遇到了瓶颈,希望尽快有方案可以解决帧率的问题

@finleyqqq 你好!关于 SC132GS 相机 120fps 的支持计划,目前社区和官方的最新情况如下:

:pushpin: 当前状态

根据管理员 @Marcelo6151 的回复:

  • 60fps 是目前驱动的硬性限制
  • 要支持 120fps 需要重新适配 sensor 驱动,工作量较大
  • 官方尚未公布具体的更新排期

:magnifying_glass_tilted_left: 技术背景

SC132GS sensor 本身硬件支持 120fps(在较低分辨率下),但 RDK X5 的官方驱动目前只配置了 60fps 模式。要实现 120fps 需要:

  1. 修改 sensor 初始化寄存器配置
  2. 调整 MIPI CSI 时序参数
  3. 验证 ISP 和 VPU 流水线的带宽
  4. 测试不同分辨率下的稳定性

:light_bulb: 临时解决方案

在官方更新前,你可以尝试以下方案:

方案 1:降低分辨率换取高帧率

# 尝试配置较低分辨率,可能支持更高帧率
# 例如 640x480 或 800x600
vio2display -w 640 -h 480

方案 2:自行修改驱动配置(进阶)

# 1. 找到 camera 配置文件
ls /etc/hobot_camera/

# 2. 备份后修改 sensor 配置
cp sc132gs_config.json sc132gs_config.json.bak
vim sc132gs_config.json

# 3. 查找 fps 相关寄存器配置
# 参考 SC132GS datasheet 修改帧率寄存器
# 通常需要修改:0x3032 (frame length), 0x3033 (line length)

方案 3:使用 sp_vio SDK 自定义配置

既然你提到 sp_vio 能正常工作,可以尝试:

# 通过 sp_vio 的 API 自定义 sensor 参数
from hobot_vio import sp_open_camera

# 尝试传入不同的帧率参数
sp_open_camera(sensor_type="sc132gs", fps=120, width=640, height=480)

:date: 建议行动

  1. 关注官方 Release Note

  2. 在论坛发起 Feature Request

    • 将你需要的 120fps 场景详细描述
    • 附上你的应用案例(如高速运动检测、VIO 等)
    • 链接:新建话题
  3. 联系官方技术支持

    • 如果项目紧急,可通过地平线官方渠道咨询排期
    • 邮箱:developer@d-robotics.cc
  4. 社区协作

    • 如果有其他开发者也在研究这个问题,可以联合测试
    • 分享各自的修改方案和测试结果

:warning: 注意事项

  • 自行修改驱动有风险,可能导致相机无法工作
  • 120fps 会增加 MIPI 带宽和处理器负载,需测试系统稳定性
  • 不同分辨率下的 120fps 支持情况可能不同

总结:目前官方暂无明确的 120fps 更新时间表,建议先使用 sp_vio SDK 作为稳定方案,同时在论坛持续跟进官方动态。如果你有具体的应用场景和时间要求,建议直接联系官方技术支持获取更准确的排期信息。

需要我帮你查找更多关于 sensor 寄存器配置的参考资料吗?