Using 5mp omnivision ov5642 camera module using i2c interface

I need help. I have a 5MP Omnivision OV5642 camera module which has no FIFO chip.I have Genuine Arduino Board and also a data logging shield with SD card. I want to capture or take photo with this camera module every second and save it to SD card. I want also to obtain the picture in different colours: Red, Green, Blue, and Infrared. I seem not to get example codes on OV5642 using I2C interface neither Arduino code for a camera without FIFo/Buffer chip**. I therefore need an Arduino program that will perform the tasks.** I will be grateful for your kind assistance.

@oluwaalaseyori, your topic has been moved to a more suitable location on the forum. Introductory Tutorials is not for questions. Feel free to write a tutorial once you have mastered your problem :wink:

Thank you very much. What is the suitable location for asking questions on the forum please?

Perhaps post a link to the camera you are wanting to use ?

I will try to get a link posted. Meanwhile I bought it from Aliexpress. It is a parallel interface SCCB interface with 20 header pins and without FIFO Buffer-ov5642.

Here is a link

  • Arducam 5MP OV5642 1080P Camera Module JPEG Output

    Introduction Arducam OV5642 camera breakout incorporates Omnivision 1/4−inch CMOS active−pixel digital imaging sensor OV5642 with an active pixel array of ...


The OV5642 camera module has a parallel interface, it can’t be connected to Arduino or Raspberry pi directly. So the user needs to use our Arduino Camera Shield to connect to Arduino boards

Is there a camera for Arduino that operates only through an I2C interface ?

Maybe this will help?

It looks like the OV5642 uses both I2C and SPI.

My thoughts too, but I also suspect there is confusion between the OV5642 camera itself and a module\PCB that has been produced which is an OV5642 + some other controller which provides the interface for Arduino.

Arducam do make those mini camera modules that are a camera plus a controller which have an I2C interface (to control the camera) and an SPI interface to download the data.

Whilst it might be possible to produce a controller for an OV5642 that would allow the camera to be controlled by and and download the picture data via I2C, would it not be a bit slow compared to SPI ?

I imagine it can, particularly on a Mega 2560 and using direct port access. It's only 8 bits. But that may be rather slow.

Where it is now :wink: