1. Home
  2. Docs
  3. Cameras for Raspberry Pi
  4. RPi Multi-Camera & Stereo Camera Solutions
  5. Camarray – Arducam 1MP*2 Stereo Camera MIPI Module

Camarray – Arducam 1MP*2 Stereo Camera MIPI Module

Specs and Selection Guide for Arducam 1MP*2 Stereo Camera MIPI Module

Introduction

This Arducam 1MP*2 Stereo Camera MIPI Module is a stereo camera module with two synchronized monochrome global shutter OV9281 image sensors (2×1MP). It directly connects to the MIPI CSI-2 connectors of Raspberry Pi and Jetson Nano, and runs with a V4L2 camera driver on those platforms. It offers better flexibility to be integrated into your own hardware design or run with your own algorithm on embedded systems for applications like depth sensing, 3d mapping, SLAM, etc.

What is Camarray

Camarray is a series of embedded stereo cameras and multiple camera solutions from Arducam. Upgraded from Arducam Sync Stereo Camera HAT, the Camarry can disguise up to 4 synched camera modules as a single camera slot connection to embedded systems like the Raspberry Pi, Jetson nano, and Xavier NX. With Arducam camarray, your camera connectivities are no longer limited to the camera connectors on the motherboard or the carrier board. Along with Arducam-provided camera drivers, more flexibility is added to your multi-camera applications.

Common Specs

Image sensor

Sensor ModelOV9281
Shutter TypeGlobal Shutter
Active Pixels1280*2×800
Resolution1MP*2
Image Sensor FormatType 1/4″
Pixel Size3μm×3μm
Color Filter ArrayNone(Monochrome)
9281block diagam
OV9281 Block Diagram

Lens Assembly

InterchangeabilityYES
F/NO2.8
Focus TypeManual Focus
Focusing Range30cm to infinity (when focused to infinity)
Effective Focal Length(EFL)2.8 mm
Field of View(FoV)70° Horizontal
Lens MountM12 Lens
IR SensitivityNo IR filter (sensitive to IR light)
2311stero camera lens 3d

Camera Board

Camera Board Size105×24 mm
2311stereo camera board
Mechanical Drawing
Pin No.Pin NameTypeDescription
13V3Power3.3V power supply
2FSINInputFrame Sync Input
3STBOutputLED Strobe Output
4GNDGroundGround
53V3Power3.3V power supply
6SDAI/OSCCB serial interface data I/O
7SCLInputSCCB serial interface clock input
8GNDGroundGround

Connector & Cable

Connector InterfaceMIPI CSI-2 15-pin 2-lane
Ribbon Cable Length150mm (15-pin), 150mm(15-22pin)
Mating connector typeSFW15R-2STE1LF
Pin No.Pin NameTypeDescription
1GNDPowerGround
2CAM_D0_NOutputMIPI Data Lane 0 Negative
3CAM_D0_POutputPixel Data Lane0 Positive
4GNDPowerGround
5CAM_D1_NOutputMIPI Data Lane 1 Negative
6CAM_D1_POutputMIPI Data Lane 1 Positive
7GNDPowerGround
8CAM_CK_NOutputMIPI Clock Lane Negative
9CAM_CK_POutputMIPI Clock Lane Positive
10GNDPowerGround
11CAM_IO0InputPower Enable
12CAM_IO1InputLED Indicator
13CAM_SCLBidirectionI2C SCL
14CAM_SDABidirectionI2C SDA
15CAM_3V3Power3.3V Power Input

Driver Performance (With Official V4L2 Driver)

Video FormatGERY(8-bit)/Y10P(10-bit)
Output Interface2-lane MIPI serial output
Output Formats8/10-bit BW RAW

Frame rates

Raspberry PiJetson Nano
RAW8(GREY)[email protected]×800
[email protected]×720
[email protected]×400
[email protected]×200
[email protected]×800
[email protected]×720
[email protected]×400
[email protected]×200
RAW10(Y10P)[email protected]×800
[email protected]×720
[email protected]×400
[email protected]×200
[email protected]×800
[email protected]×720
[email protected]×400
[email protected]×200
Quick Start Guidefor Arducam 1MP*2 Stereo Camera MIPI Module

Driver Installation

1.Driver note

There are 3 drivers for Raspberry Pi:

  • Official driver
  • Arducam MIPI camera driver
  • Arducam V4L2 driver

1)Arducam MIPI camera driver is not in conflict with the official driver.

2)Arducam V4L2 driver is in conflict with the official driver. If you want to use the official driver, you need to uninstall the Arducam V4L2 driver first.

3)Arducam V4L2 driver is in conflict with Arducam MIPI camera driver. If you want to use the Arducam MIPI camera driver, you need to uninstall the Arducam V4L2 driver first.

4)Arducam V4L2 driver automatically overwrites the other two drivers. After uninstalling the Arducam V4L2 driver, it automatically reverts to the official driver.

The product is driven by the Arducam V4L2.

2.Check the driver

Determine if the system is installed with the Arducam V4L2 driver.

sudo nano /boot/config.txt

Press【PageDown】several times or scroll your mouse wheel down to check if there is “dtoverlay=arducam”.

dtoverlayarducam”

1)If you see “dtoverlay=arducam”, the Arducam V4L2 driver has been previously installed and is in a valid state.

2)If you see “#dtoverlay=arducam”, it means you have installed Arducam V4L2 driver before, but it is uninstalled now, remove the “#” to restore the V4L2 driver. Then reboot Pi to take effect.

3)If you don’t see “dtoverlay=arducam” or “#dtoverlay=arducam”, it means that Arducam’s V4L2 driver has never been installed before, so you need to follow the instructions below for a complete installation.

3. Install the driver

#Download driver package

wget https://github.com/ArduCAM/Arducam_OBISP_MIPI_Camera_Module/releases/download/v1.0/Release.tar.gz
Download driver package1

#Extract the archive files

tar zxvf Release.tar.gz
Extract the archive files1

#Enter the extracted folder

cd Release/

#Install the driver

./install_driver.sh
Install the driver1

#Reboot the device

Press y, and then hit Enter to reboot.

Uninstall the driver

Note that the driver will occupy CSI hardware resources. After installation, you will not be able to use the raspistill tool. There are two ways to uninstall Arducam V4L2 driver:

1.Execute the uninstall command

cd Release/
./uninstall_driver.sh

NOTE

You have to reboot your Pi to make it effect.

2.Modify configuration files

1)Type the following command:

sudo nano /boot/config.txt

2.Press【PageDown】several times or scroll your mouse wheel down to check if there is “dtoverlay=arducam”.

dtoverlayarducam”

Modify “dtoverlay=arducam” as “#dtoverlay=arducam” to uninstall the V4L2 driver. Press 【Ctrl+X】【Y】,【Enter】to save the change and exit.

NOTE

You have to reboot your Pi to make it effect.

First Use

1.Check whether the camera is detected

ls /dev/video0

2.Check the video format supported

v4l2-ctl --list-formats-ext
9281 list

At present, only “GREY” and “Y10P” formats are supported, and “Y10” format is not supported.

Run the command without results?

You might have to check the ribbon connection or install the drivers correctly, then reboot the Raspberry Pi.

3.Preview the camera feed in real time

#RAW8

arducamstill -t 0 -pixfmt GREY -w 2560 -h 800
arducamstill -t 0 -pixfmt GREY -w 2560 -h 720
arducamstill -t 0 -pixfmt GREY -w 1280 -h 400
arducamstill -t 0 -pixfmt GREY -w 640 -h 200

#RAW10

arducamstill -t 0 -pixfmt Y10P -w 2560 -h 800
arducamstill -t 0 -pixfmt Y10P -w 2560 -h 720
arducamstill -t 0 -pixfmt Y10P -w 1280 -h 400
arducamstill -t 0 -pixfmt Y10P -w 640 -h 200
image 2

The last line shows frame in real time.

​GREY for RAW8 and Y10P for RAW10.

​-w and -h indicate the width and height of the input image.

9281 pic

Press Ctrl+C to exit the preview.

4.Save an image

Take a picture after a two-second (time in milliseconds) delay and save it as image.jpg.

arducamstill -t 1000 -o image.jpg -pixfmt GREY -w 2560 -h 800 -p 800,100,1024,768
save image
pi doc
image see

5.Store a video

Record 10 seconds (time in milliseconds) of h264 video and save it as image.h264.

arducamstill -t 10000 -e h264 -o image.h264 -pixfmt GREY -w 1280 -h 400
video
video doc
video play
Play on VLC media player

Raspberry Pi can only record video (h264 format) up to 1080p (1920×1080) due to hardware encoder limitations.
(Large resolutions such as 2560×800 cannot be recorded.)

Display images via VLC player

You can display images in real time via the VLC player.
(The VLC player can only play images that are output in RAW8 format.)

Open VLC media player.

1 3

Select 【Media】→【Open Capture Device…

vlc

Video device name】→ select “/dev/video0“→ click 【Play】.

3 1
4 1

The image screen may be too large for the display to be complete.
Right-click on the VLC title bar and select 【Maximize】.

5 2
6 1

Display images via mplayer

1.Install mplayer

sudo apt-get install mplayer

2.Display images

mplayer tv:// -tv driver=v4l2:device=/dev/video0

Do not enter this command remotely, otherwise it will be stuck.

ov2311 mplayer
 mplayer pic

The image screen may be too large for the display to be complete.You need to drag the title bar to move the window to see the full image.

Right-click on the mplayer title bar and select 【Maximize】. Then you can see see the full image. (The image is pretty smooth.)

Right click on the mplyer title bar and select 【Maximize】.
 pic dual

Or enter the following command to zoom the image. The image will appear full, but it will become stuck.

mplayer tv:// -tv driver=v4l2:device=/dev/video0 -zoom -x 1280 -y 400

“-x” “- y” denotes the width and height of the scaled image, and it is recommended to modify them in equal proportion.

zoom pic

What’s Next

Here are the things you can do after this quick start:

  • Check the Application Note for applications like using Arducam userland MIPI camera drivers.
  • Join the discussion in our forum.
Application Note for Arducam 1MP*2 Stereo Camera MIPI Module

Depth Mapping on Raspberry Pi

1.Install Driver

Please refer to this page for a driver demonstration.

2.Hardware Setup

9281 connect

Arducam 1MP Stereo Camera MIPI Module and Raspberry Pi 4B are used.

3.Reboot RPi

After rebooting RPi, use ls /dev/video* command to see the video device.

4.Software Setup

4.1Download the demo code

git clone https://github.com/ArduCAM/3d-camera.git
cd 3d-camera/stereo-camera/RaspberryPi/stereo_depth_demo/

4.2 Install Dependency for Python3.X

Latest Raspbian version is recommended.

sudo apt-get update && sudo apt-get install -y libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test && sudo pip3 install opencv-python==3.4.6.27
sudo pip3 install stereovision
sudo pip3 install matplotlib

5.Run the Programs

5.1Capture Images

python 1_test.py

Help message:

Help message

Example:

Example

5.2Collect Images for Calibration

python 2_chess_cycle.py

5.3Separate Captured Images

python 3_pairs_cut.py

5.4Calibration

python 4_calibration.py

5.5Depth Map Tuning

python 5_dm_tune.py

5.6Real-Time Depth Map Using Video

python 6_dm_video.py
Real-Time-Depth-Map-Using-Video-Result

Was this article helpful to you? Yes No