Use Almost Any MIPI Camera Module on Raspberry Pi’s CSI Connector (Global Shutter and 4K Camera Module Up to 18MP )

Best Camera for Raspberry Pi

A lot of Raspberry Pi related projects are associated with camera applications, and the first issue that arises is how to add a camera to the Raspberry Pi board. Technically, there are at least three methods to use a camera on a RasPi, and they are SPI Cameras, USB cameras, and MIPI cameras.

The SPI camera is a general-purpose solution from Arducam that allows you to use a camera on any platform as long as that platform comes with SPI and I2C interface. The USB cameras are connected to the USB ports to serve as a Raspberry Pi webcam, just like on any other platform. The MIPI cameras bring a more robust and native experience on Raspberry Pi because the Pi comes with an onboard high-speed MIPI CSI-2 connector. MIPI stands for Mobile Industry Processor Interface, and MIPI CSI-2 is one of the most popular camera interfaces to support high-performance camera applications. It has great potential but does not get fully unleashed on the Raspberry Pi.

Raspberry Pi Camera Module V2 – What’s the problem?

On May 14, 2013, the Raspberry Pi foundation announced the release of the first camera module board (5MP OV5647) for Raspberry Pi. Three years later, the V2 camera (8MP IMX219) was out with upgrades in resolution and image quality. Together with their RPi NoIR camera siblings, we only have four official camera modules in total.

For years, the Raspberry Pi foundation has lacked broad camera connectivity and camera driver support, and we are all stuck with two image sensors: 5MP OV5647 and 8MP IMX219. Admittedly, those two have decent image signal processing together with JPEG/H.264 encoding and cover most of the low-end applications which only require a reasonably good picture or video streaming, but clearly the restriction of official standard camera modules has limited Raspberry Pi imaging projects to a narrow range of performance and features.

Global Shutter Camera and Night Vision for Pi

Machine vision applications, such as robots and self-driving cars, may require cameras with a global shutter. The global shutter avoids the rolling artifacts when the object is moving at high speed, so it is crucial for image processing such as object recognition, detection, and tracking. On the other side, rolling shutters on official Raspberry Pi camera modules produce images that are blurry enough to lose this competition.

For scientific applications, sensors with high sensitivity outside the visual spectrum, such as in the IR or UV frequency bands, are required, and many times only need RAW data acquisition.

For a multi-camera system, like a 3D scanner application, all the cameras have to be synchronized to each other, usually by means of a hardware trigger. Other users simply need higher resolutions than the current 8MP camera for still image capture.

The current 5MP OV5647 and 8MP IMX219 camera modules have become a handicap for the whole Raspberry Pi ecosystem and a barrier around its possibilities.

Arducam MIPI Cameras: Up to 18 Megapixels, 4K Resolution – PROBLEM SOLVED!

While the Raspberry Pi foundation is satisfied with the current situation, Arducam steps forward to enable advanced applications.

The Arducam team has worked hard in the past few years to solve the technical issues, and now we just released a low cost, high-performance camera board for the Raspberry Pi platform, enabling users to connect most MIPI camera modules directly to Raspberry Pi’s native CSI camera port.

These Arducam MIPI Camera Modules adopts the Raspberry Pi Zero like 22-pin CSI connector, and you can easily use them on Raspberry Pi 4, Pi 3/3B+, Pi Zero, and Raspberry Pi Compute Module with Arducam SDK and examples. You can now use a better camera module for applications like wildlife camera, surveillance camera, Raspberry Pi video streaming, AR/VR, QR code scanning, and so on.

The userland drivers support basic video mirror/flip and manual exposure/gain settings. In short, this offering from Arducam enables industrial quality cameras to be paired with low-cost processors and will bring many new machine vision applications to life. You can read more about Arducam MIPI Camera specs and features in our documentation.

The following is a non-exhaustive list of newly added camera modules for Raspberry Pi.

Image SensorOV7251OV9281IMX135IMX298AR1820
Resolution0.3MP
640×480
1MP
1280×800
13MP
4208×3120
16MP
4656×3499
18MP
4912×3684
Full Resolution
Frame Rate
100fps60fps
(@1-lane MIPI)
10fps10fps6.5fps
Color TypeMonochromeMonochromeColor Bayer FilterColor Bayer FilterColor Bayer Filter
Shutter
Type
GlobalGlobalRollingRolling Rolling
Output
Format
8bit Gray8bit GrayRAW/
YUV 4:2:0
RAW/
YUV 4:2:0
RAW/
YUV 4:2:0
V4L2
Support
RFS*RFS*RFS*RFS*RFS*
Exposure
Control
Manual/
Software auto
Manual/
Software auto
Manual/
Software auto
Manual/
Software auto
Manual/
Software auto
Gain
Control
ManualManualManualManualManual
Focus
Control
FixedFixedProgrammableProgrammableFixed
Mirror/Flip
Control
SupportSupportSupportSupportSupport
JPEGSupport Support Support SupportSupport
H.264
Encoding
SupportSupportSupportSupportSupport

Note: Now the camera drivers are moved to the userland SDK (github link), V4L2 kernel driver will not be updated or supported unless explicitly required (customized work might be required. RFS = Request For Support. ). All camera drivers are designed and maintained by Arducam team.

Video Demo

Please check the following new userland camera driver demo:

Go with Arducam to go with the future of Pi camera applications. You can contact us for more information: info@arducam.com

2 thoughts on “Use Almost Any MIPI Camera Module on Raspberry Pi’s CSI Connector (Global Shutter and 4K Camera Module Up to 18MP )

    • I don’t think you can do that, you can only use MIPI cameras with our SDK and Libraries. Stereo captures are only available when using our SDC board.

Leave a Reply

Your email address will not be published. Required fields are marked *