微雪 IMX477 在 RDK X5 上的分辨率/帧率支持
官方 BSP 支持的模式
| 分辨率 | 帧率 | 状态 | 说明 |
|---|---|---|---|
| 1280×960 | 120fps | 推荐用于 60fps 需求 | |
| 1280×960 | 60fps | 完全满足你的需求 | |
| 1920×1080 | 50fps | 接近正方形,VSE 缩放匹配好 | |
| 2016×1520 | 21fps | 中等分辨率 | |
| 4000×3000 | 10fps | 实际可能只有 0.2fps |
微雪版本的特殊注意事项
微雪是第三方供应商,其 IMX477 模组可能与树莓派官方版有差异:
- I2C 地址可能不同:官方版是 0x1A,微雪可能不同
- 时序参数可能有差异:需要确认是否与 BSP 配置匹配
- FPC 排线方向:微雪有些模组排线方向与官方版相反
关键问题:你的板卡设备树问题依然存在
换微雪 IMX477 不能解决你当前的 ret(-10) 错误,因为:
根因:你的板卡 vcon 接口缺少 cam_mclk 配置
→ 任何摄像头(OV5647/IMX477/IMX219)接在这个接口上都会报同样错误
→ 换摄像头只是换传感器,设备树问题没解决
证据:社区帖子 topic/28668 中,树莓派官方版 IMX477 在 RDK X5 上也需要设备树补丁才能工作。
测试命令(如果你已有微雪 IMX477)
# 1. 先确认摄像头是否被识别
dmesg | grep -i "imx477\|Found sensor"
# 2. 测试 1280x960@60fps/120fps 模式
cd /app/cdev_demo/vio2display
sudo ./vio2display -w 1280 -h 960 2>&1 | grep -E "Found|ERROR|fps"
# 3. 测试 1920x1080@50fps 模式
sudo ./vio2display -w 1920 -h 1080 2>&1 | grep -E "Found|ERROR|fps"
预期结果判断:
| 结果 | 含义 |
|---|---|
| 能出图 | 恭喜!你的板卡 mclk 配置正常,IMX477 可用 |
报 hbn_vnode_set_attr failed, ret(-10) |
设备树问题未解决,需要官方 dtbo 补丁 |
最终建议
| 你的情况 | 建议 |
|---|---|
| 还没买 IMX477 | |
| 已有微雪 IMX477 | |
| 急需 60fps | 先联系官方解决板卡 mclk 问题(要 dtbo 补丁) |
核心结论:
- IMX477 本身支持 60fps(1280×960@120fps/60fps)
- 但你的板卡设备树问题不解决,换什么摄像头都报同样错误
- 30fps 对小车控制足够,建议先用 OV5647 30fps 模式调试应用层
下一步行动
- 如果已有 IMX477:插上测试,把日志贴到原帖
- 如果还没买:别买了,用 OV5647 30fps 直接调试小车
- 无论哪种情况:联系官方要 dtbo 补丁解决 mclk 问题
别在硬件上耗时间了,回去调试小车吧! ![]()