Skip to content

5MP OV5647

Introduction

5MP OV5647 cameras, namely the V1 camera series, are used a lot on Raspberry Pi camera applications. Unlike the V2 cameras which are encrypted on the camera board with a chip, the 5MP OV5647 cameras can be easily modified and customized by third-party manufacturers, thus you will see a lot of variations of this series.

Image Sensor

Sensor Model OV5647
Shutter Type Rolling Shutter
Active Pixels 2592×1944
Resolution 5MP
Frame Rate 1080p30, 640x480p60, 640x480p67
Image Sensor Format Type 1/4″
Pixel Size 1.4μm×1.4μm

Release Time

OminiVision launched this sensor in late 2009, it became popular since RPi foundation’s release of the OV5647-powered camera module V1,in 2013.

Product Series

Since the release of OV5647, we have designed several versions with different features according to different needs: IR-CUT, Motorized Focus, PT & PTZ , M12/CS .

IR-CUT

Arducam 5MP OV5647 Motorized IR-CUT Camera Modules are designed for both daylight and night vision photography. The motorized IR cut filter can be switched ON/OFF automatically, and the infrared LEDs are automatically ON/OFF according to the light environment. The cameras in this serial are fully supported by all the Raspberry Pi board versions including Pi 4, Pi 3 and Pi Zero. They can be widely used in wildlife photography, agriculture NDVI applications and etc.

Motorized Focus

Arducam 5MP OV5647 Motorized Focus Camera Modules are designed for you to control the focus via software, so you can see closer and see where you want to see.

PT & PTZ

Arducam PT camera can move in two dimensions with 180 degrees horizontal and 145 degrees vertical movements. So it can be used to monitor places that should be covered by multiple ones commonly in the surveillance system.

Arducam PTZ cameras are the complete solution to turn your Raspberry Pi cameras into a fully functional surveillance camera that covers 360 degrees space. With the software autofocus function, you can clearly focus on your target when zooming. The IRCUT control also helps both the daylight and night vision.

Product List

Product Image SKU Pin/Connect Type Features Lens Type Field of View(H x V) Focus Type IR Sensitivity
B0033 15/Bottom Mini Size Stock Lens 54° (H) x 41° (V) Fixed Focus 650nm IR-cut filter
B003301 without IR-cut filter
B0033C Acrylic Case 650nm IR-cut filter
B0033PT Pan-Tilt Kit
B0033R 3D Printer
B0033+B0087 22/bottom For Pi Zero
B0176 15/Bottom Mini Size 54°(H)x44° (V) Auto Focus
B0176R 3D Printer
B0370 Wide Angle M12 155°(H) x 116°(V) Auto Focus
B0032 15/Bottom CS Mount CS 58°(H) x 44°(V) Manual Focus 650nm IR-cut filter
B0036 Night Vision without IR-cut filter
B0031 Repalceable Lens M12 56°(H) x 42°(V) 650nm IR-cut filter
B0035 Night Vision 110 ° (H) x 83°(V) without IR-cut filter
B0055 Wide Angle 194 ° (H) x 142°(V) 650nm IR-cut filter
B0404 M8 210° (H) x 154°(V)
Image B003504 Day and Night Vision M12 105° (H) x 78°(V) Motorized IR-CUT Filter
B003507 140° (H) x 105° (V)
B0151 100° (H)x75° (V)
B0167B5 Pan-Tilt-Zoom Kit varifocal lens 67°~18°(H) x 49°~13°(V) Motorized Focus
B01675MP
Image B006603 22/NA Miniature Camera M6 Lens 72.4°(H) x 54.3°(V) Fixed Focus 650nm IR-cut filter
B006604 120°(H) x 90°(V)
B006603N 64°(H) x 48°(V) without IR-cut filter
B006604N 96°(H) x 72°(V)
Image B006605 M7 Lens 128°(H) x 96°(V) Manual Focus 650nm IR-cut filter
Image B0066 15/NA Miniature Camera Stock Lens 62°(H) x 47°(V) Fixed Focus
B0066-02 without IR-cut filter
B0428 15/Bottom Wide Angle M12 220° (H) x 165°(V) Manual Focus 650nm IR-cut filter

Supported Platforms and OS

Note for Supported Platform and OS
Platform Bookworm(rpicam) Bullseye(libcamera/rpicam) Buster(raspistill)
Raspberry Pi 5    
Raspberry Pi 4B / 3B+ / 3A+ / Zero / Zero 2 W
Raspberry Pi CM3 / CM3+ / CM4 / CM5
(extra adapter board required)

Hardware Connection

Please refer to the following doc for common hardware connection method of RPI Camera:

Quick Start Guide - Hardware Connection

Software

Note

To maintain alignment with the official Raspberry Pi OS release cycle, this documentation exclusively covers setup and configuration for Bullseye (kernel 6.1.21+) and Bookworm.
Instructions for the older Raspberry Pi OS, Buster, have been omitted from this guide. We highly recommend all users migrate to a newer, supported operating system for the best performance and ongoing support.
However, if using Buster is a mandatory requirement for your project, please reach out to us for separate assistance.

This section guides you through the necessary software configuration to enable your OV5647 camera, followed by instructions on how to use it. The process is divided into three main parts:

  1. System Configuration: This is a required first step for the Raspberry Pi to recognize the camera. You need to reboot your Pi to take effect the changes.

  2. Using the Camera: Commands to preview and capture images.

  3. Troubleshooting: Solutions for common display issues.

1. System Configuration

Before you begin, please identify your Raspberry Pi Model and your OS Version (Bookworm or Bullseye), as the instructions vary.

Raspberry Pi 5 & CM 5

The Pi 5 currently supports Bookworm OS only. Its configuration file is located at /boot/firmware/config.txt.

  1. Open the configuration file for editing:

    sudo nano /boot/firmware/config.txt
    
  2. Find the line camera_auto_detect=1 and change it to:

    camera_auto_detect=0
    
  3. Locate the line [all] and add the following line below it:

    dtoverlay=ov5647
    
  4. Save the changes and exit the editor (in nano, press CTRL + X, then Y, and Enter).

  5. Reboot your Raspberry Pi to apply the changes:

    sudo reboot
    

Note

The Pi 5 has two camera ports. If you have connected the camera to the port labeled CAM0, you must modify step 3. The line you add should be:

dtoverlay=ov5647,cam0

Raspberry Pi 4

The Pi 4 supports both Bookworm and Bullseye OS. The configuration steps are the same, but the location of the config.txt file is different. Select your OS below to get the correct command.

On Bookworm, the file is at /boot/firmware/config.txt. Open it with:

sudo nano /boot/firmware/config.txt

On Bullseye, the file is at /boot/config.txt. Open it with:

sudo nano /boot/config.txt

Once the correct file is open, make these two edits:

  1. Find the line camera_auto_detect=1 and change it to 0.
  2. Find the [all] section and add dtoverlay=ov5647 below it.
  3. Save the changes and exit the editor (in nano, press CTRL + X, then Y, and Enter).
  4. Reboot your Raspberry Pi to apply the changes:

    sudo reboot
    

Raspberry Pi Zero to Pi 3

These models support both Bookworm and Bullseye OS. The setup process is significantly different for each, especially on Bullseye. Please select your OS below to get the correct instructions.

On Bookworm, the procedure is standard and straightforward. The configuration file is located at /boot/firmware/config.txt.

  1. Open the configuration file for editing:

    sudo nano /boot/firmware/config.txt
    
  2. Inside the file, find the line camera_auto_detect=1 and change it to 0.

  3. Locate the [all] section and add dtoverlay=ov5647 on a new line directly underneath it.
  4. Save the file and reboot your Raspberry Pi.

On Bullseye, the setup is a two-part process. You must first edit the config.txt file and then enable a special graphics setting in raspi-config. Both parts are required for the camera to work correctly.

Step 1: Edit config.txt

The configuration file is located at /boot/config.txt.

  1. Open the file for editing:

    sudo nano /boot/config.txt
    
  2. Find camera_auto_detect=1 and change it to 0.

  3. Add dtoverlay=ov5647 under the [all] section.
  4. Save the file but do not reboot yet! Proceed directly to Step 2.

Step 2: Enable Glamor Graphic Acceleration

This setting is required for proper camera operation on these models with Bullseye OS.

  1. Open the Raspberry Pi Configuration tool in your terminal:

    sudo raspi-config
    
  2. Navigate to 6 Advanced Options.

  3. Select A3 Glamor.
  4. Choose <Yes> at the prompt to enable Glamor graphic acceleration.
  5. Select <Finish> in the main menu, and now choose <Yes> to reboot the Raspberry Pi.

Raspberry Pi Compute Module 3 & 4 (CM3/CM4)

The CM3 and CM4 support both operating systems and have two camera ports (cam0, cam1). Select your OS below to find the correct config.txt path.

The configuration file is at /boot/firmware/config.txt. Open it with:

sudo nano /boot/firmware/config.txt

The configuration file is at /boot/config.txt. Open it with:

sudo nano /boot/config.txt

After opening the correct file, apply the standard edits (camera_auto_detect=0 and dtoverlay=ov5647) and then save and reboot.

Note

If you wish to use the CAM0 interface, append ,cam0 to the overlay line, making it dtoverlay=ov5647,cam0. This applies to both Bookworm and Bullseye.

2. Camera Usage

After completing the system configuration and rebooting, your camera is ready to use. The command you need to execute depends on your operating system version. Please select your OS from the tabs below to view the correct instructions.

On Bookworm, the rpicam-apps suite is used, and the primary command is rpicam-still.

  1. Confirm camera detection by listing available cameras:

    rpicam-still --list-cameras
    

  2. Start a live preview to see the camera feed (Press Ctrl+C to exit):

    rpicam-still -t 0
    

  3. Capture an image named test.jpg after a 5-second preview:

    rpicam-still -t 5000 -o test.jpg
    

On the older Bullseye system, the libcamera-apps are used, and the primary command is libcamera-still.

  1. Confirm camera detection by listing available cameras:

    libcamera-still --list-cameras
    

  2. Start a live preview to see the camera feed (Press Ctrl+C to exit):

    libcamera-still -t 0
    

  3. Capture an image named test.jpg after a 5-second preview: ```bash libcamera-still -t 5000 -o test.jpg

For more details, you can refer to the following guide: Getting Started with Raspberry Pi

3. Display Issues

If you encounter a black screen or other display issues, it may be due to the camera not being recognized by the system. Here are some troubleshooting steps:

If the issue persists, please reach out to our support team for further assistance.