- What is Camarray
- Common Specs
- Quick Start Guide
This Arducam 8MP Synchronized Stereo Camera Bundle Kit is capable of running two 8MP IMX219 Camera Modules simultaneously through a single MIPI CSI-2 camera slot connection on Raspberry Pi. The stereo camera HAT is enabled by ArduChip to disguise the dual-camera connection as a single camera to be accepted by the single-board computers. You can use this bundle to build your stereo camera system for depth-related vision applications or advanced surveillance cameras.
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 can be added to your multi-camera applications.
1.The Camarray HAT does not support digital pan in half resolution combine and programmable pan speed control.
2.The Camarray HAT is not a crop and a half (halving the horizontal resolution of each camera and halving the field of view) but a compressed half (halving the horizontal resolution of each camera but leaving the field of view unchanged), so it does not need to support scan mode.
|Shutter Type||Rolling Shutter|
|Active Pixels||3280 (H) × 2464 (V)|
|Image Sensor Format||Type 1/4″|
|Color Filter Array||650nm|
|Focus Type||Fixed Focus|
|Field of View(FoV)||62°H×48°V|
|IR Sensitivity||Visible light|
|Camera Board Size||105×24 mm|
|HAT Size||65×56 mm|
|Pin No.||Pin Name||Type||Description|
|1||3V3||Power||3.3V power supply|
|2||FSIN||Input||Frame Sync Input|
|3||STB||Output||LED Strobe Output|
|5||3V3||Power||3.3V power supply|
|6||SDA||I/O||SCCB serial interface data I/O|
|7||SCL||Input||SCCB serial interface clock input|
Connector & Cable
|Connector Interface||MIPI CSI-2 15-pin 2-lane|
|Ribbon Cable Length||80mm(22-pin), 73mm(15-22pin)|
|2||CAM_D0_N||MIPI Data Lane 0 Negative|
|3||CAM_D0_P||MIPI Data Lane 0 Positive|
|5||CAM_D1_N||MIPI Data Lane 1 Negative|
|6||CAM_D1_P||MIPI Data Lane 1 Positive|
|8||CAM_CK_N||MIPI Clock Lane Negative|
|9||CAM_CK_P||MIPI Clock Lane Positive|
|15||CAM_3V3||3.3V Power Input|
|Output Interface||2-lane MIPI serial output|
|Output Formats||8/10-bit RAW|
|Frame Rates||[email protected]×2464, [email protected]×1080, [email protected]×720|
[email protected]×972(raspistill default configuration)
[email protected]×720(raspivid default configuration)
Quick Start Guide
1. Perform any hardware operations on the HAT only when the power is off.
2. Make sure the camera boards keep away from the GPIO pins of Raspberry Pi / Jetson boards to avoid any short issues.
How to use the camera(For Bullseye System)
If you are running the latest version of Raspberry Pi OS. (January 28th，2022 or later releases, Debian version:11(Bullseye)). You need to update the config file and use libcamera apps.
- For Raspberry Bullseye users running on Pi 4, please do the following:
sudo nano /boot/config.txt Find the line: camera_auto_detect=1, update it to: camera_auto_detect=0 dtoverlay=imx219 Save and reboot.
- For Bullseye users running on Pi 0 ~ 3, please also:
Open a terminal Run sudo raspi-config Navigate to Advanced Options Enable Glamor graphic acceleration Reboot your Pi
If you encounter the display issues, please also execute the following steps:
Open a terminal Run sudo raspi-config Navigate to Advanced Options Navigate to GL Driver Select GL (Full KMS) Reboot your Pi
- For Raspberry Pi Compute Module 3/4
The latest software only supports one camera at this time, CM4 uses CAM1 by default.
If you are running the previous system (Buster legacy and the system before it), you can refer to the following steps:
How to use the camera(For Legacy System)
There are 3 drivers for Raspberry Pi:
- Official driver
- Arducam MIPI camera driver
- Arducam V4L2 driver
1)The MIPI camera driver does not conflict with the official driver. But the V4L2 driver conflicts with the official driver and MIPI camera driver.
2)Installing the Arducam V4L2 driver will automatically overwrite the other two drivers. After uninstalling the Arducam V4L2 driver, it will automatically revert to the official driver.
3)If you want to use the official commands like raspistill and raspivid, you need to check if the V4L2 driver is installed first, if so, uninstall it.
Arducam 8MP Synchronized Stereo Camera uses the official driver or MIPI camera driver.
Check if the V4L2 driver is installed:
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”.
1)If you see “dtoverlay=arducam”, modify it as “#dtoverlay=arducam” to uninstall the V4L2 driver. Press 【Ctrl+X】, 【Y】,【Enter】to save the change and exit. Finally, type the following command to reboot.
2)If you don’t see “dtoverlay=arducam”, it means you haven’t installed the V4L2 driver. Please follow the below steps to continue.
3)If you see “#dtoverlay=arducam”, it means that Arducam’s V4L2 driver has been installed before, but it is uninstalled. Please follow the below steps to continue.
Check the Camera
1.Go to the main menu and open the Raspberry Pi Configuration tool.
2.Select the Interfaces tab and ensure that the camera is enabled:
3.Reboot your Pi
4.Check whether the camera is detected
- vcgencmd get_camera
- detected=1 means the camera is detected. (The camera is OV5647, IMX219, or IMX477.)
- detected=0 means the camera is not detected. You might have to check the ribbon connection correctly, then reboot the Raspberry Pi.
First Use with Official Driver
The images from two cameras are compressed to half of the original in the horizontal direction, but the field of view remains the same and the composite output image has the same resolution as the input. The Raspberry Pi does not know that it is a synthesized image and still receives it as a normal image to display.
1. Preview the camera feed in real time
Execute the official native command raspistill
raspistill -t 0
Press 【Ctrl】+【C】 to exit the preview.
Execute the official native command raspivid
raspivid -t 0
It can be zoomed into the display.
raspistill -t 0 -p 800,100,1024,768
raspivid -t 0 -p 800,100,1024,768
800,100 indicates the starting position of the window (top left corner).
1024,768 indicates the size of the image after scaling.
2. Save an image
Take a picture after a two-second (time in milliseconds) delay and save it as image.jpg.
raspistill -t 2000 -o image.jpg
Take a custom sized photo
raspistill -t 2000 -o image.jpg -w 1920 -h 1080
3. Save a video
Record 10 seconds (time in milliseconds) of h264 video and save it as video.h264.
raspivid -t 10000 -o video.h264
Double click “video.h264” file, it will call the VLC media player to play.
4. Advanced controls
The stereo camera HAT support channel selection and digital pan. It requires to write onboard ArduChip registers through the I2C bus on Raspberry Pi. So the user needs to active the I2C bus first(please refer to chapter 5.1 or the following methods).
Clone the GitHub repository from
https://github.com/ArduCAM/MIPI_Camera.git and run the script
./enable_i2c_vc.sh, a reboot is required.
For more information about the ArduChip registers, please refer to chapter 7.
Before issuing any control command, you have to launch preview or video using raspistill or raspivid command first, then launch another terminal window to run the following commands.
4.1 Switch to CAM0, Single Mode
i2cset -y 0 0x24 0x24 0x01 to switch from stereo mode to single mode CAM0 feed.
4.2 Switch to CAM1, Single Mode
i2cset -y 0 0x24 0x24 0x02 to switch from stereo mode to single mode CAM1 feed.
4.3 Swtich back to Stereo Mode, Resized Full-Combine
i2cset -y 0 0x24 0x24 0x00 to switch back to stereo mode.
First Use with Arducam MIPI Camera Diver
1.Download and Install the SDK
Download the SDK library:
git clone https://github.com/ArduCAM/MIPI_Camera.git
Enter the SDK directory:
chmod +x enable_i2c_vc.sh ./enable_i2c_vc.sh
Press 【y】, 【Enter】 to reboot Pi.
Enter the directory:
make clean && make
1.It doesn’t matter if opencv reports an error
2.The demo program needs to be recompiled after modification.
3.Run demo (through the “arducamstill” command)
This is a comprehensive application, user can use it to preview, get images in a different format and fine tuning the image quality.
3.1 Get help
Execute the following command to get a description of the parameters of the arducamstill command.
Be sure to run it in the MIPI_Camera/RPI directory.
3.2 Preview the camera feed in real time
Check the supported modes.
You can only run the modes that include “Used for Arducam Synchronized stereo camera HAT” in the mode description
Take mode12 for example:
./arducamstill -t 0 -m 12
Arducam MIPI Camera Driver does not conflict with the official driver.
● If you have compiled the Arducam MIPI Camera demo before, after running the official commands (raspistill and raspivid), you can enter the Arducam MIPI Camera demo directory and run the Arducam MIPI Camera commands directly (no need to compile and reboot the system again).
● When you want to run the official commands (raspistill and raspivid) again after running the Arducam MIPI Camera command, you need to restart the system first.
Here are the things you can do after this quick start:
- Check the Application Note for applications like Depth Mapping on Arducam Stereo Camera HAT with OpenCV.
- Join the discussion in our forum.