Ding dong! Hear that? It's the PiCowbell ringing, letting you know that the new Adafruit PiCowbell OV5640 Camera Breakout is in stock.
This is a quality OV5640 camera with a 5 Megapixel sensor element, a 120-degree wide-angle lens, plus all the support circuitry you need to start taking pictures with your Pico or Pico W. You can grab raw RGB images for image analysis, or use the built-in JPEG encoding to save images to an SD card.
There is no Arduino core support for DVP type cameras. Also in CircuitPython, the Pico W does not have enough RAM to take images and do any transfer over the network at the same time.
The RP2040 chip has a fast PIO interface peripheral and enough memory to interface with 'DVP' (8-bit parallel digital) cameras. These camera sensors have 8 image data pins, Pixel Clock, H Sync and V Sync signals, plus an I2C configuration interface and a Reset plus power Down pin.
That does mean a lot of GPIO are used! But we still have 6 GPIO pin available even after adding a microSD card and shutter button.
Camera PiCowbell Features:
-
Interface for OV5640 Camera module
VSync: GPIO 0
Power Down: GPIO 1
HSync: GPIO 2
Pixel Clock: GPIO 3
SDA/SCL: GPIO 4 and GPIO 5
8-bit Digital: GPIO6 through GPIO 13
Reset: GPIO 14
VMotor connected to 3.3V for auto-focus modules -
Micro SD Card:
SPI on GPIO 16, GPIO 18 and GPIO 19
Chip select on GPIO 17
Optional SD Detect on GPIO 15 - Shutter button on GPIO 22
- Reset button
- 16 MHz 'XClock' generated by onboard oscillator
- Stemma QT port for I2C on GPIO 4 / 5
There are multiple variants of this board. Each has a different camera module:
- Autofocus 72 Degree Lens
- Autofocus 120 Degree Lens
- Wide Angle 160 Degree Lens - No auto-focus, fixed 'infinite' focus module
- Wide Angle 120 Degree Lens - No auto-focus, fixed 'infinite' focus module
- 120 Degree Low Distortion - No auto-focus, fixed 'infinite' focus module
Note that to use the auto-focusing capability with the auto-focus modules, you need to load a new firmware binary over I2C. The autofocus system is controlled with I2C commands to begin an auto-focus procedure and determine that focus is complete. Otherwise, the camera looks just like any other OV5640 sensor.
Each order comes with an assembled PCB, camera sensor, and two pieces of 20-pin pin header. You will need to solder in the header yourself, but it's a quick task.
Since this board has the camera pointing 'up', it's best to use our PiCowbell 'doubler' to have the Pico on one side with the BOOT button accessible, and then the camera on the other side. Or you can 'stack' the camera 'bell on top, best when you don't need easy access to the BOOT loading button.
Or, for a compact package, you can...
- Use the Pico Stacking Headers if you want to be able to plug into a breadboard or other accessory with sockets. Solder these onto the Pico so that the camera is on top.
- Use the Pico Socket Headers if you want to plug directly in and have a nice solid connection that doesn't have any poking-out-bits. Ditto, solder these into the Pico and plug the camera on top.
Text editor powered by tinymce.