Difference between revisions of "VEYE MIPI 290/327 for Nano Pi/zh"
Line 12: | Line 12: | ||
===Ubuntu系统安装=== | ===Ubuntu系统安装=== | ||
− | * 下载系统镜像文件 | + | *下载系统镜像文件 |
我们在友善之臂20190308的发布版本基础上,编译好了镜像(包括resource.img和kernel.img)。点击[https://pan.baidu.com/s/1sWrcfEOivjuQ7T7P5bVcng#list/path=%2Fveye_mipi%E8%B5%84%E6%96%99%2Fnanopim4image 链接]下载镜像压缩文件。 | 我们在友善之臂20190308的发布版本基础上,编译好了镜像(包括resource.img和kernel.img)。点击[https://pan.baidu.com/s/1sWrcfEOivjuQ7T7P5bVcng#list/path=%2Fveye_mipi%E8%B5%84%E6%96%99%2Fnanopim4image 链接]下载镜像压缩文件。 | ||
[[File:Veye nanopi jingxiangjietu.png|center|thumb|473x473px|rk3399-sd-friendlydesktop-bionic-4.4-veye-arm64-20190423.img.7z为镜像压缩文件]] | [[File:Veye nanopi jingxiangjietu.png|center|thumb|473x473px|rk3399-sd-friendlydesktop-bionic-4.4-veye-arm64-20190423.img.7z为镜像压缩文件]] | ||
− | * 烧录镜像文件 | + | *烧录镜像文件 |
烧录镜像具体方法:利用SD Card Formatter软件将Micro SD卡格式化(格式化前有必要将需要的文件进行备份),将下载后的压缩文件解压,利用Win32 Disk Imager软件将解压后的镜像文件写入Micro SD卡。 | 烧录镜像具体方法:利用SD Card Formatter软件将Micro SD卡格式化(格式化前有必要将需要的文件进行备份),将下载后的压缩文件解压,利用Win32 Disk Imager软件将解压后的镜像文件写入Micro SD卡。 | ||
===视频流接口使用=== | ===视频流接口使用=== | ||
+ | 使用gstreamer | ||
+ | |||
+ | 可以实现抓拍、录像、预览等功能。视频流接口具体使用方法,详见:[http://wiki.friendlyarm.com/wiki/index.php/NanoPi_M4/zh#gst-camera.sh_.E5.8F.82.E6.95.B0.E8.AF.B4.E6.98.8E nanopi官方资料] | ||
===视频控制接口软件包使用=== | ===视频控制接口软件包使用=== | ||
− | ===参考资料=== | + | ==== 下载及传输软件包 ==== |
+ | |||
+ | * 执行命令行 | ||
+ | |||
+ | <code>git clone <nowiki>https://github.com/veyeimaging/nanopi4.git</nowiki></code> | ||
+ | |||
+ | 直接将文件复制到Ubuntu系统中。 | ||
+ | |||
+ | * 点击[https://github.com/veyeimaging/nanopi4 链接]下载视频控制接口软件包 | ||
+ | |||
+ | [[File:Veye nanopi i2cruanjianbaojietu.png|center|thumb|531x531px|i2c为视频控制接口软件包]] | ||
+ | 利用samba将软件包文件传输至Ubuntu系统中,也可用U盘将软件包文件拷贝至Ubuntu系统中。 | ||
+ | |||
+ | ==== 使用视频控制接口软件包 ==== | ||
+ | 首先检测硬件连接是否正常,Ubuntu系统用户登陆切换到root账户,执行命令行<code>i2cdetect [value]</code> | ||
+ | {| class="wikitable" | ||
+ | !value | ||
+ | !description | ||
+ | |- | ||
+ | |1 | ||
+ | |MIPI-CSI1 | ||
+ | |- | ||
+ | |2 | ||
+ | |MIPI-CSI2 | ||
+ | |} | ||
+ | 确定硬件连接正常后,视频控制接口软件包具体使用操作详见:[http://www.veye.cc/?p=288 I2C脚本使用说明]。 | ||
+ | |||
+ | === 源代码及使用 === | ||
+ | |||
+ | ==== kernel驱动源代码 ==== | ||
+ | |||
+ | # 共三个文件,包括:veye_camera_module.c veye_camera_module.h veye290_v4l2-i2c-subdev.c 放置到linux源码的drivers/media/i2c/soc_camera/rockchip目录下。 注:VEYE327的驱动源码与290完全一致。 | ||
+ | # Kconfig drivers/media/i2c/soc_camera/rockchip/Kconfig,增加veye产品类型——VIDEO_VEYE290。 在make menuconfig中选中VEYE290。 路径:> Device Drivers > Multimedia support > Sensors used on soc_camera driver 。 | ||
+ | # Makefile drivers/media/i2c/soc_camera/rockchip/Makefile obj-$(CONFIG_VIDEO_VEYE290) += veye_camera_module.o rk_camera_module.o veye290_v4l2-i2c-subdev.o | ||
+ | |||
+ | ==== DTS文件 ==== | ||
+ | 只需修改一个dit文件——rk3399-nanopi4-cifisp.dtsi。 | ||
+ | |||
+ | 路径:kernel/arch/arm64/boot/dts/rockchip | ||
+ | |||
+ | veye290.xml | ||
+ | |||
+ | 文件请放到/etc/cam_iq下。 | ||
+ | |||
+ | === 参考资料 === | ||
+ | <br /> | ||
+ | |||
+ | ==== RK3399介绍 ==== | ||
+ | RK3399是[http://www.rock-chips.com/ 瑞芯微]出品的一款高性价比的运算平台SoC。在业内拥有广泛的应用。 | ||
+ | |||
+ | RK3399的资料详细,开放度高,备受欢迎。 重点资料列举如下: | ||
+ | |||
+ | [http://opensource.rock-chips.com/wiki_Main_Page wiki] | ||
+ | |||
+ | [https://github.com/rockchip-linux/ github] | ||
+ | |||
+ | [https://github.com/rockchip-linux/docs docs] | ||
+ | |||
+ | 采用RK3399的主板也非常丰富,可供选择。各家软件均为基于瑞芯微资料制作,所以本文的内容也具有一定的普适性,不局限于NanoPi4系列。 | ||
+ | |||
+ | ==== NanoPi M4介绍 ==== | ||
+ | NanoPi M4是[https://www.friendlyarm.com/ 友善之臂]出品的基于RK3399的开发板。在爱好者和行业内拥趸极多。其资料开放,易于开发,[http://wiki.friendlyarm.com/wiki/index.php/NanoPi_M4/zh wiki]详细周到。 | ||
+ | |||
+ | 友善之臂也维护了自己[https://github.com/friendlyarm github]。 | ||
+ | |||
+ | 我们在开发的时候,采用的是友善之臂的[http://download.friendlyarm.com/NanoPiM4 官方定版版本],建议采用google drive云盘下载,速度更快。 | ||
+ | |||
+ | Nanopi的4系列均采用RK3399芯片,本文均可适用。 | ||
+ | |||
+ | ==== RK3399 ISP简介(Linux) ==== | ||
+ | Rk3399和RK3288采用同样的ISP硬件和驱动。由于linux和Android平台的软件框架差异很大,所以对接VEYE模组的过程也不同。'''Linux平台下,瑞芯微有两种ISP驱动,isp1为新版本,官方推荐使用;isp10为老版本。NanoPi选择isp10版本作为默认驱动。为了保持与原系统兼容性,我们也采用isp10版本进行开发。''' | ||
+ | |||
+ | ==== linux平台 ==== | ||
+ | 在linux平台下,isp10驱动和sensor的驱动均编译到kernel中,此外需要配置好DTS文件。下文将展开详述。 | ||
+ | |||
+ | ==== 主要参考文档: ==== | ||
+ | [http://opensource.rock-chips.com/wiki_Rockchip-isp1 瑞芯微官方ISP介绍]。 | ||
+ | |||
+ | 《RK_ISP10_Camera_User_Manual_v2.2.pdf》 |
Revision as of 15:26, 23 July 2019
VEYE-MIPI-290/327 摄像头模组接入RK3399平台使用说明
1 概述
本篇文章讲述VEYE-MIPI-290/327 摄像头模组接入RK3399平台的具体详细步骤及使用说明。以VEYE-MIPI-290/327 摄像头模组接入NanoPi M4为例来详细讲解接入的具体步骤及使用说明。
2 硬件准备及安装
原材料:NanoPi M4板,HDMI显示器,网线,Micro SD卡,FFC异面线,NanoPi M4电源线,镜头,摄像头主板,Nano Pi转接板(转接板包括树莓派转接板以及Nano Pi转接板,具体说明请见链接)
如图所示,摄像头主板加Nano Pi转接板构成摄像头模组,摄像头模组通过FFC异面线连接到NanoPi M4板上,Micro SD卡插入卡槽,HDMI显示器接入NanoPi M4板,网线插入网线接口,NanoPi M4电源线插入电源接口为NanoPi M4板提供电源。
3 Ubuntu系统安装
- 下载系统镜像文件
我们在友善之臂20190308的发布版本基础上,编译好了镜像(包括resource.img和kernel.img)。点击链接下载镜像压缩文件。
- 烧录镜像文件
烧录镜像具体方法:利用SD Card Formatter软件将Micro SD卡格式化(格式化前有必要将需要的文件进行备份),将下载后的压缩文件解压,利用Win32 Disk Imager软件将解压后的镜像文件写入Micro SD卡。
4 视频流接口使用
使用gstreamer
可以实现抓拍、录像、预览等功能。视频流接口具体使用方法,详见:nanopi官方资料
5 视频控制接口软件包使用
5.1 下载及传输软件包
- 执行命令行
git clone https://github.com/veyeimaging/nanopi4.git
直接将文件复制到Ubuntu系统中。
- 点击链接下载视频控制接口软件包
利用samba将软件包文件传输至Ubuntu系统中,也可用U盘将软件包文件拷贝至Ubuntu系统中。
5.2 使用视频控制接口软件包
首先检测硬件连接是否正常,Ubuntu系统用户登陆切换到root账户,执行命令行i2cdetect [value]
value | description |
---|---|
1 | MIPI-CSI1 |
2 | MIPI-CSI2 |
确定硬件连接正常后,视频控制接口软件包具体使用操作详见:I2C脚本使用说明。
6 源代码及使用
6.1 kernel驱动源代码
- 共三个文件,包括:veye_camera_module.c veye_camera_module.h veye290_v4l2-i2c-subdev.c 放置到linux源码的drivers/media/i2c/soc_camera/rockchip目录下。 注:VEYE327的驱动源码与290完全一致。
- Kconfig drivers/media/i2c/soc_camera/rockchip/Kconfig,增加veye产品类型——VIDEO_VEYE290。 在make menuconfig中选中VEYE290。 路径:> Device Drivers > Multimedia support > Sensors used on soc_camera driver 。
- Makefile drivers/media/i2c/soc_camera/rockchip/Makefile obj-$(CONFIG_VIDEO_VEYE290) += veye_camera_module.o rk_camera_module.o veye290_v4l2-i2c-subdev.o
6.2 DTS文件
只需修改一个dit文件——rk3399-nanopi4-cifisp.dtsi。
路径:kernel/arch/arm64/boot/dts/rockchip
veye290.xml
文件请放到/etc/cam_iq下。
7 参考资料
7.1 RK3399介绍
RK3399是瑞芯微出品的一款高性价比的运算平台SoC。在业内拥有广泛的应用。
RK3399的资料详细,开放度高,备受欢迎。 重点资料列举如下:
采用RK3399的主板也非常丰富,可供选择。各家软件均为基于瑞芯微资料制作,所以本文的内容也具有一定的普适性,不局限于NanoPi4系列。
7.2 NanoPi M4介绍
NanoPi M4是友善之臂出品的基于RK3399的开发板。在爱好者和行业内拥趸极多。其资料开放,易于开发,wiki详细周到。
友善之臂也维护了自己github。
我们在开发的时候,采用的是友善之臂的官方定版版本,建议采用google drive云盘下载,速度更快。
Nanopi的4系列均采用RK3399芯片,本文均可适用。
7.3 RK3399 ISP简介(Linux)
Rk3399和RK3288采用同样的ISP硬件和驱动。由于linux和Android平台的软件框架差异很大,所以对接VEYE模组的过程也不同。Linux平台下,瑞芯微有两种ISP驱动,isp1为新版本,官方推荐使用;isp10为老版本。NanoPi选择isp10版本作为默认驱动。为了保持与原系统兼容性,我们也采用isp10版本进行开发。
7.4 linux平台
在linux平台下,isp10驱动和sensor的驱动均编译到kernel中,此外需要配置好DTS文件。下文将展开详述。
7.5 主要参考文档:
《RK_ISP10_Camera_User_Manual_v2.2.pdf》