Line 119: |
Line 119: |
| 应当有类似下面的提示: | | 应当有类似下面的提示: |
| | | |
− | <code>mvcam 7-003b: camera is:MV-MIPI-IMX296M</code> | + | <code>mvcam 2-003b: camera is:MV-MIPI-IMX296M</code> |
| | | |
− | <code>mvcam 7-003b: firmware version: 0x1290133</code> | + | <code>mvcam 2-003b: firmware version: 0x1290133</code> |
| | | |
| 可以看到识别到当前的摄像机模组的型号,版本号。 | | 可以看到识别到当前的摄像机模组的型号,版本号。 |
| | | |
− | 在ROC-RK3588S-PC上,摄像机挂载在i2c-7, i2c地址是0x3b。
| + | 正确识别摄像头之后,MIPI-CSI2接口的摄像头识别为/dev/video0。对于Radxa zero 3W,相机挂载在i2c-2。 |
− | | |
− | 在ROC-RK3566-PC上,摄像机挂载在i2c-4。
| |
| | | |
| *执行如下命令检查video0设备节点 | | *执行如下命令检查video0设备节点 |
Line 149: |
Line 147: |
| 以MV-MIPI-IMX296M为例: | | 以MV-MIPI-IMX296M为例: |
| | | |
− | <code>- entity 63: m00_b_mvcam 7-003b (1 pad, 1 link)</code> | + | <code>- entity 63: m00_b_mvcam 2-003b (1 pad, 1 link)</code> |
| | | |
| <code> type V4L2 subdev subtype Sensor flags 0</code> | | <code> type V4L2 subdev subtype Sensor flags 0</code> |
Line 163: |
Line 161: |
| 可以看到: | | 可以看到: |
| | | |
− | *该Entity完整的名称是: <code>m00_b_mvcam 7-003b</code>。(在ROC-RK3566-PC上该Entity名称是<code>m00_b_mvcam 4-003b</code>) | + | *该Entity完整的名称是: <code>m00_b_mvcam 2-003b</code>。 |
| *它是一个 V4L2 subdev (Sub-Device) Sensor。 | | *它是一个 V4L2 subdev (Sub-Device) Sensor。 |
| *它对应的节点是 <code>/dev/v4l-subdev2</code> ,应用程序(如<code>v4l2-ctl</code>)可以打开它,并进行配置。 | | *它对应的节点是 <code>/dev/v4l-subdev2</code> ,应用程序(如<code>v4l2-ctl</code>)可以打开它,并进行配置。 |
Line 196: |
Line 194: |
| |} | | |} |
| ===raw图片格式说明=== | | ===raw图片格式说明=== |
− | RK3588的VICAP模块支持两种数据保存格式,Compact和Noncompact RAW。可以通过RKCIF的RKCIF_CMD_SET_CSI_MEMORY_MODE ioctl指令修改模式。默认情况下,输出的是Compact RAW格式。[[File:Compact raw and noncompact raw of rk3588 vicap.png|center|thumb|800x800px|Compact raw and noncompact raw of rk3588 VICAP|link=http://wiki.veye.cc/index.php/File:Compact_raw_and_noncompact_raw_of_rk3588_vicap.png]]<br />
| + | RK35xx的VICAP模块支持两种数据保存格式,Compact和Noncompact RAW。可以通过RKCIF的RKCIF_CMD_SET_CSI_MEMORY_MODE ioctl指令修改模式。默认情况下,输出的是Compact RAW格式。[[File:Compact raw and noncompact raw of rk3588 vicap.png|center|thumb|800x800px|Compact raw and noncompact raw of rk3588 VICAP|link=http://wiki.veye.cc/index.php/File:Compact_raw_and_noncompact_raw_of_rk3588_vicap.png]]<br /> |
| ====具有填充位的图片格式(Noncompact RAW)==== | | ====具有填充位的图片格式(Noncompact RAW)==== |
| 对于10bit深度、12bit深度的像素数据,总是使用两个字节来存储一个像素。这种存储方式方便软件处理,缺点是空间占用较大。根据数据有效数据保存在高位还是低位,又分为high align和low align两种。 | | 对于10bit深度、12bit深度的像素数据,总是使用两个字节来存储一个像素。这种存储方式方便软件处理,缺点是空间占用较大。根据数据有效数据保存在高位还是低位,又分为high align和low align两种。 |
Line 233: |
Line 231: |
| 根据主板型号,配置I2C_BUS全局变量。 | | 根据主板型号,配置I2C_BUS全局变量。 |
| | | |
− | *ROC-RK3588S-PC | + | *Radxa Zero 3W |
− | | |
− | <code>export I2C_BUS=7</code>
| |
− | | |
− | *ROC-RK3566-PC
| |
| | | |
− | <code>export I2C_BUS=4</code> | + | <code>export I2C_BUS=2</code> |
| | | |
| 为了后面描述方便,此处根据sensor尺寸,配置全局变量。 | | 为了后面描述方便,此处根据sensor尺寸,配置全局变量。 |
Line 373: |
Line 367: |
| <code>media-ctl -d /dev/media0 --set-v4l2 '"m00_b_mvcam '"$I2C_BUS"'-003b":0[fmt:Y8_1X8/'"$WIDTH"'x'"$HEIGHT"'@1/'"$FPS"']'</code> | | <code>media-ctl -d /dev/media0 --set-v4l2 '"m00_b_mvcam '"$I2C_BUS"'-003b":0[fmt:Y8_1X8/'"$WIDTH"'x'"$HEIGHT"'@1/'"$FPS"']'</code> |
| | | |
− | 其中:<code>"m00_b_mvcam 7-003b"</code>指的相机的<code>entity</code>完整名称,<code>Y8_1X8</code>为<code>mbus-code</code>,<code>'"$WIDTH"'x'"$HEIGHT"'</code>指明了分辨率,<code>1/'"$FPS"'</code>指明了帧率。 | + | 其中:<code>"m00_b_mvcam 2-003b"</code>指的相机的<code>entity</code>完整名称,<code>Y8_1X8</code>为<code>mbus-code</code>,<code>'"$WIDTH"'x'"$HEIGHT"'</code>指明了分辨率,<code>1/'"$FPS"'</code>指明了帧率。 |
| | | |
| 此处的width和height配合v4l2-ctl命令的<code>roi_x</code>和<code>roi_y</code>共同组成了ROI参数。 | | 此处的width和height配合v4l2-ctl命令的<code>roi_x</code>和<code>roi_y</code>共同组成了ROI参数。 |
Line 379: |
Line 373: |
| 比如,对于MV-MIPI-IMX296M,这个命令经过变量替换后的结果是: | | 比如,对于MV-MIPI-IMX296M,这个命令经过变量替换后的结果是: |
| | | |
− | <code>media-ctl -d /dev/media0 --set-v4l2 '"m00_b_mvcam 7-003b":0[fmt:Y8_1X8/1456x1088@1/60 field:none]'</code> | + | <code>media-ctl -d /dev/media0 --set-v4l2 '"m00_b_mvcam 2-003b":0[fmt:Y8_1X8/1456x1088@1/60 field:none]'</code> |
| | | |
| 不仅可以在一个命令中同时配置数据格式,分辨率,帧率,也可以单独修改某一项或某几项。 | | 不仅可以在一个命令中同时配置数据格式,分辨率,帧率,也可以单独修改某一项或某几项。 |
Line 422: |
Line 416: |
| <code>sudo apt install python3-opencv</code> | | <code>sudo apt install python3-opencv</code> |
| | | |
− | 详见github上的[https://github.com/veyeimaging/rk356x_firefly/tree/main/linux/samples samples]目录。 | + | 详见github上的[https://github.com/veyeimaging/rk356x_radxa/tree/main/linux/samples samples]目录。 |
| | | |
− | <code>python ./v4l2dev_2_opencv_show_grey.py --width 1456 --height 1088 --fps 60 --i2c 7</code> | + | <code>python ./v4l2dev_2_opencv_show_grey.py --width 1456 --height 1088 --fps 60 --i2c 2</code> |
| =====gstreamer应用范例===== | | =====gstreamer应用范例===== |
| 为了方便进行安装和调试,MV系列相机提供了UYVY模式。UYVY模式支持的最大宽度为2880,使用如下命令可以进行实时预览。 | | 为了方便进行安装和调试,MV系列相机提供了UYVY模式。UYVY模式支持的最大宽度为2880,使用如下命令可以进行实时预览。 |
Line 472: |
Line 466: |
| ===参考资料=== | | ===参考资料=== |
| | | |
− | *ROC-RK3588S-PC 手册 | + | * Radxa Zero 3W Manual |
| | | |
− | [https://wiki.t-firefly.com/zh_CN/ROC-RK3588S-PC/ https://wiki.t-Radxa.com/zh_CN/ROC-RK3588S-PC/]
| + | https://docs.radxa.com/zero/zero3 |
− | ===本文修改记录===
| |
| | | |
− | *2024-04-17 | + | *BSP toolkit |
| | | |
− | 支持 RK3566.
| + | https://radxa-repo.github.io/bsp/ |
− | | + | ===本文修改记录=== |
− | *2024-03-10
| |
− | | |
− | 增加新版本ADP-MV2的硬件连接的图片和说明。
| |
− | | |
− | *2023-08-30
| |
− | | |
− | 增加对RAW-MIPI-IMX462M和RAW-MIPI-AR0234M的支持。
| |
− | | |
− | *2023-07-31
| |
− | | |
− | 在ubuntu系统下,已经调通V-by-One连接的驱动。
| |
| | | |
− | *2023-04-12 | + | *2024-04-25 |
| | | |
− | 第一个版本。
| + | 发布第一个版本。 |
| + | <br /> |