Changes

Jump to navigation Jump to search
Line 77: Line 77:  
此外,在[https://github.com/veyeimaging/rk356x_firefly/releases releases]中,提供了编译好的linux系统镜像。
 
此外,在[https://github.com/veyeimaging/rk356x_firefly/releases releases]中,提供了编译好的linux系统镜像。
 
=== 更新ubuntu系统 ===
 
=== 更新ubuntu系统 ===
 +
对于ROC-RK3588S-PC,我们提供了发布系统的烧写镜像。
    +
下载[https://github.com/veyeimaging/rk356x_firefly/releases/ https://github.com/veyeimaging/rk35xx_firefly/releases/]中最新的支持MV和RAW系列的镜像。
 +
 +
参考Firefly[https://wiki.t-firefly.com/zh_CN/ROC-RK3588S-PC/upgrade_bootmode.html 文档],烧写系统。
 
=== 系统状态检测 ===
 
=== 系统状态检测 ===
 +
 +
==== 是否正确识别到了相机 ====
 +
完成系统安装后,系统上电。在Firefly板端执行以下命令来检测是否正确连接相机。
 +
 +
<code>dmesg | grep mvcam</code>
 +
 +
应当有类似下面的提示:
 +
 +
<code>mvcam 7-003b: camera is:MV-MIPI-IMX296M</code>
 +
 +
<code>mvcam 7-003b: firmware version: 0x1290133</code>
 +
 +
可以看到识别到当前的摄像机模组的型号,版本号。摄像机挂载在i2c-7, i2c地址是0x3b。
 +
 +
*执行如下命令检查video0设备节点
 +
 +
<code>ls /dev/video0</code>
 +
 +
可以看到
 +
 +
<code>video0</code>
 +
 +
正确识别摄像头之后,MIPI-CSI2接口的摄像头识别为/dev/video0。
 +
 +
==== 使用media-ctl查看拓扑结构 ====
 +
使用media-ctl指令,可以清晰的展现出当前的拓扑结构。
 +
 +
<code>media-ctl -p -d /dev/media0</code>
 +
 +
===== 链接关系 =====
 +
mv camera->rockchip-csi2-dphy0->rockchip-mipi-csi2->stream_cif_mipi_id0 - - ->DDR(/dev/video0)
 +
 +
应用程序可以通过/dev/video0节点获取图像。
 +
 +
===== mv camera entity信息 =====
 +
以MV-MIPI-IMX296M为例:
 +
 +
<code>- entity 63: m00_b_mvcam 7-003b (1 pad, 1 link)</code>
 +
 +
<code>             type V4L2 subdev subtype Sensor flags 0</code>
 +
 +
<code>             device node name /dev/v4l-subdev2</code>
 +
 +
<code>        pad0: Source</code>
 +
 +
<code>                [fmt:Y8_1X8/1456x1088@100/6000 field:none]</code>
 +
 +
<code>                -> "rockchip-csi2-dphy0":0 [ENABLED]</code>
 +
 +
可以看到:
 +
 +
* 该Entity完整的名称是: <code>m00_b_mvcam 7-003b</code>。
 +
* 它是一个 V4L2 subdev (Sub-Device) Sensor。
 +
* 它对应的节点是 <code>/dev/v4l-subdev2</code> ,应用程序(如<code>v4l2-ctl</code>)可以打开它,并进行配置。
 +
* 它的输出格式是 [<code>fmt:Y8_1X8/1456x1088@100/6000 field:none</code>] ,其中<code>Y8_1X8</code>是一种mbus-code的简写,下一小节会列出支持的mbus-code。
 +
* 当前分辨率是<code>1456x1088。</code>
 +
* 当前帧间隔是<code>100/6000</code>,即帧率是60。
 +
 +
摄像机输出的数据格式,可以通过media-ctl指令修改。
 +
 +
==== 相机支持的mbus-code ====
 +
MV系列和RAW系列相机具备不同的数据格式能力,具体请参考每个型号的相机的数据手册。
 +
{| class="wikitable"
 +
|+格式对应关系
 +
!Format on datasheet
 +
!mbus-code for media-ctl
 +
!FourCC pixelformat for v4l2-ctl
 +
|-
 +
|RAW8
 +
|Y8_1X8
 +
|GREY
 +
|-
 +
|RAW10
 +
|Y10_1X10
 +
|'Y10 '
 +
|-
 +
|RAW12
 +
|Y12_1X12
 +
|'Y12 '
 +
|-
 +
|UYVY
 +
|UYVY8_2X8
 +
|UYVY
 +
|}
    
=== 应用范例 ===
 
=== 应用范例 ===

Navigation menu