Matrix - CAM500B

From FriendlyARM WiKi
Jump to: navigation, search



  • The CAM500B module uses Omni Vision’s QSXGA CMOS OV5640 module. It has DVP parallel output interface and supports up to 2592 x 1944 photographing and 720P@30fps video recording. It has automatic image control functions: AFC, AWB and AEC etc.
  • The CAM500B uses a cell phone camera. This camera’s focal length is 2.7mm. Its aperture is 2.8. Its viewing angle is 66 degree.


  • 5MP (2592 x 1944) photographing, 720P@30fps video recording
  • Focal length: 2.7mm, Aperture: 2.8, Viewing angle: 66 degree
  • Automatic image control functions: AFC, AWB and AEC etc
  • 24 PIN FPC interface including DVC parallel output, 3.3V power, I2C and GPIO
  • 3.3V signal level

How to Connect

Connect CAM500B to NanoPi M2

  • NanoPi M2 works with CAM500B

CMOS camera-M2

Connect CAM500B to NanoPi 2

  • NanoPi 2 works with CAM500B.

CMOS camera

Connect CAM500B to NanoPi 2 Fire

  • NanoPi 2 Fire works with CAM500B.

CMOS camera01

Connect CAM500B to NanoPC-T2

  • NanoPC-T2 works with CAM500B

CMOS camera

Connect CAM500B to Smart4418

  • Smart4418 works with CAM500B

CMOS camera

Connect CAM500B to NanoPi M3

  • NanoPi M3 works with CAM500B

CMOS camera-M3

Connect CAM500B to NanoPC-T3

  • NanoPC-T3 works with CAM500B

CMOS camera

Connect CAM500B to NanoPi M1

  • NanoPi M1 works with CAM500B


Connect CAM500B to NanoPi M1 Plus

  • NanoPi M1 Plus works with CAM500B


Connect CAM500B to NanoPi NEO Air

  • NanoPi NEO Air works with CAM500B


Connect CAM500B to S5P4418/S5P6818 Boards

  • If your 4418/6818 based board runs Android5.1 and it is connected to FriendlyElec's LCD or an HDMI monitor after Android is fully loaded click on the "Camera" icon and the application will be started. You can take pictures or record videos.
  • Under Debian/Ubuntu a camera utility "nanocams" is available for previewing 40 frames and picture taking.You can try it by following the commands below:
sudo nanocams -p 1 -n 40 -c 4 -o IMG001.jpg

For more details about the usage of the nanocams run "nanocams -h". You can get its source code from our git hub:

git clone

Connect CAM500B to H3 Based Boards



$ cd /root/mjpg-streamer
$ make
$ ./

请自行修改, 确保使用正确的/dev/videoX节点, 下列命令可以用来确定摄像头的video节点:

$ apt-get install v4l-utils
$ v4l2-ctl -d /dev/video0 -D
Driver Info (not using libv4l2):
        Driver name   : sun6i-video
        Card type     : sun6i-csi
        Bus info      : platform:camera
        Driver version: 4.16.0


$ ./ 
 i: Using V4L2 device.: /dev/video0
 i: Desired Resolution: 1280 x 720
 i: Frames Per Second.: 30
 i: Format............: YUV
 i: JPEG Quality......: 90
 o: www-folder-path...: ./www/
 o: HTTP TCP port.....: 8080
 o: username:password.: disabled
 o: commands..........: enabled

假设开发板的IP地址为192.168.1.230,在PC的浏览器中输入 就能浏览摄像头采集的画面了,效果如下:
mjpg-streamer是用libjpeg对摄像头数据进行软编码,Linux-4.x内核的ROM目前并不支持视频硬编码, 但是如果使用Linux-3.x内核的ROM的话, 则可以使用ffmpeg对摄像头数据进行硬编码,这样能大大降低CPU的占用率并提高编码速度:

$ ffmpeg -t 30 -f v4l2 -channel 0 -video_size 1280x720 -i /dev/video0 -pix_fmt nv12 -r 30 -b:v 64k -c:v cedrus264 test.mp4



An open source APP developed by FriendlyElec for CAM500A/CAM500B (supports preview, picture-taking and video recording)

Update Log


  • Released English Version