1. Home
  2. Docs
  3. Jetson Cameras
  4. Multiple cameras on the Jetson Nano
  5. Camarray – Arducam 2MP*2 Stereo Camera MIPI Module

Camarray – Arducam 2MP*2 Stereo Camera MIPI Module

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

Introduction

This Arducam 2MP*2 Stereo Camera MIPI Module is a stereo camera module with two synchronized monochrome global shutter OV2311 image sensors (2×2MP). 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 ModelOV2311
Shutter TypeGlobal Shutter
Active Pixels1600*2×1300
Resolution2MP*2
Image Sensor FormatType 1/2.9″
Pixel Size3μm×3μm
Color Filter ArrayNone(Monochrome)
2311block diagam
OV2311 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)83° 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_POutputMIPI Data Lane 0 Positive
4GNDPowerGround
5CAM_D1_NOutputMIPI Data Lane 1 Negative
6CAM_D1_POutputMIPI Data Lane1 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]×1080
[email protected]×1300
[email protected]×720
[email protected]×1080
[email protected]×1300
[email protected]×720
RAW10(Y10P)[email protected]×1080
[email protected]×1300
[email protected]×720
[email protected]×1080
[email protected]×1300
[email protected]×720
Quick Start Guide for Arducam 2MP*2 Stereo Camera MIPI Module

NOTE

Same operation on Xavier NX. The only difference is the driver package.

Install the driver

1.Check system version

#Check the L4T version

cat /etc/nv_tegra_release
Check the L4T version
From the example above, its L4T vision is R32 4.3

#Check the kernel version

uname -a
Check the kernel version
From the example above, its kernel vision is 4.9.140

2.Download Arducam driver package

Open the link below:

https://github.com/ArduCAM/MIPI_Camera/tree/master/Jetson/Jetvariety/driver

Depending on the hardware platform and system version currently in use, find the corresponding driver.

Download the driver package1
Download the driver package2
Download the driver package3

Download it and put it under the root directory.

root library

3.Install Arducam driver package

Then type the following command to install the V4L-utils The driver package name (.deb) should be changed according to the actual download.

sudo dpkg -i arducam-nvidia-l4t-kernel_4.9.140-32.4.3-20200716095813_arm64.deb
install driver package

4.Install V4L-utils package

sudo apt-get install v4l-utils
install v4l driver

First Use

1.Install V4L2 python module

for Python3.x:

wget https://bootstrap.pypa.io/get-pip.py  
Install V4L2 python module1

After you type the following command and press【Enter】, it will take several minutes to finish downloading.

sudo python3 get-pip.py  
Install V4L2 python module2
Install V4L2 python module3
 sudo pip3 install v4l2 
Install V4L2 python module4

NOTE

The V4L2 of Python3.x has a known bug that requires a manual fix, and the following error occurs when you import the v4l2 module into Python3.x:

Install V4L2 python module5

You can refer to this link to fix this bug:

https://bugs.launchpad.net/python-v4l2/+bug/1664158

2.Download the demo code

git clone https://github.com/ArduCAM/MIPI_Camera.git  
Download the demo code1
Download the demo code2

3.Check whether the camera is detected

ls /dev/video0
Check whether the camera is detected1

4.Check the video format supported

v4l2-ctl --list-formats-ext

5.Display images in real time

If accessing Jetson via remote software (e.g., MobaXterm), the following command (executed only once) is required to display the image.

export DISPLAY=:0.0

Enter program directory: 

cd MIPI_Camera/Jetson/Jetvariety/example/

OV2311 currently supports the following commands:

#RAW8

python3 arducam_displayer.py -f GREY --width 3200 --height 1300 -d 0
python3 arducam_displayer.py -f GREY --width 3200 --height 1080 -d 0
python3 arducam_displayer.py -f GREY --width 2560 --height 720 -d 0

#RAW10

python3 arducam_displayer.py -f Y16 --width 3200 --height 1300 -d 0
python3 arducam_displayer.py -f Y16 --width 3200 --height 1080 -d 0
python3 arducam_displayer.py -f Y16 --width 2560 --height 720 -d 0

​GREY for RAW8 and Y16 for RAW10.

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

For example, execute the following command:

python3 arducam_displayer.py -f GREY --width 3200 --height 1300 -d 0

The command line will refresh the display of frames in real time.

display

NOTE

Display resolution settings may affect the frames displayed.

Press Ctrl+C to exit image display.

Dropped frame?

Select Arducam/arducam_displayer_ext2.py, right-click on “open with Text Editor“.

dropped frame1

The circled value below represents the number of column in the display resolution. Try making the value lower if the frame is dropped.

dropped frame2

Display the image via VLC media player

NOTE

The VLC can only play images exported in RAW8 format.

Open VLC media player

VLC media player

1.Display the image

Press Ctrl+C

display1

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

display2
play3

2.Adjust exposure and gain

Press Ctrl+E, drag the sliders at “Exposure” and “Gain” to make adjustments under the “v4l2 control” tab.

Adjust exposure and gain
Adjust exposure and gain ov2311

Display the image 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.

nano mplayer b0267

Or enter the following command to zoom the image. 

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

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

2311 mplayer dual 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 2MP*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

setup
Arducam 2MP 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