换了微雪的ov5647,怎么用上60fps

结论:IMX477 也不能"完美适配"

核心答案:不能。 IMX477 在 RDK X5 上会遇到和你当前 OV5647 完全相同的问题


关键证据

从社区已有案例来看:

1. 相同的错误模式

ov5647 怎么用不了 60 帧 帖子中,官方助手明确说明:

IMX477 也会有同样的问题

结论:如果你的 IMX477 也接在 mipi_host2 (vcon@2) 接口上,会遇到完全相同的 mclk ignore + hbn_vnode_set_attr failed, ret(-10) 错误。

2. IMX477 已有的问题记录

搜索结果显示多个 IMX477 相关帖子:

问题 帖子 状态
无法驱动树莓派 HQ Camera IMX477 topic/28668 需设备树补丁
IMX477 切换分辨率脚本报错 topic/31457 官方文档已更新
IMX477 无法获取原生分辨率 topic/32846 需正确 API 调用
IMX477 掉帧问题 topic/32373 需调整 VBlank 配置

问题本质

你遇到的 hbn_vnode_set_attr failed, ret(-10) 错误不是传感器型号问题,而是:

板级设备树配置缺失 (cam_mclk) → ISP/VSE 流水线初始化失败

这个问题与传感器型号无关,只要接在没有正确 mclk 配置的 MIPI 接口上,任何摄像头(OV5647、IMX477、IMX219 等)都会报同样的错误。


建议

:cross_mark: 不推荐:换 IMX477

  • 价格更贵(IMX477 是树莓派 HQ Camera,成本远高于 OV5647)
  • 会遇到完全相同的问题,还是需要官方 dtbo 补丁
  • 分辨率虽高(1200W vs 500W),但当前连 60fps 都用不了,高分辨率无意义

:white_check_mark: 推荐:解决当前问题

  1. 先测试 30fps 模式确认硬件连接正常:

    cd /app/cdev_demo/vio2display
    sudo ./vio2display -w 1280 -h 960
    
  2. 联系官方获取 dtbo 补丁(参考 topic/35411):

    • 提供板卡型号、系统版本、dmesg 日志
    • 官方会针对你的 MIPI 接口提供 cam_mclk 配置补丁
  3. 如果必须高帧率/高分辨率,等当前问题解决后再考虑:

    • OV5647 640x480@60fps 已足够大多数场景
    • 真需要 1200W 再考虑 IMX477,但同样需要官方补丁

下一步行动

在你的原帖 换了微雪的 ov5647,怎么用上 60fps 中补充:

# 1. 30fps 测试结果
sudo ./vio2display -w 1280 -h 960

# 2. 完整 dmesg 日志
dmesg | grep -E "csi|mipi|mclk|vin|isp|vse|ov5647" > ~/dmesg_full.log

# 3. 板卡型号
# RDK X5 V1.0 还是 V2.0?(查看 PCB 丝印)

然后@官方支持或地瓜小助手,请求提供针对你板卡的 dtbo 补丁。

不要换摄像头,先解决设备树配置问题。