I'm new at Arduino projects. I googled but I couldn't quite get an answer.

I've got:

  • Arduino Uno R3 clone
  • 4 pin push button
  • 3 color RGB LED Module
  • HC06 Bluetooth-Serial Module Card
  • Arduino PIC Camera Module OV7670

In my project, when the button is pushed, the Arduino takes a photo from the camera module and sends it with an HC06 Bluetooth Module to an Android device. And it receives the answer to turn on the Led green or red.

The main problem is how can I capture the photo and send it with bluetooth? I can handle the Android side.


I reviewed that code: OV7670 FIFO on GitHub.

In the "Take Picture" method, I understand that the OV7670 continuously grabs frames and stores them in itself. I send it a signal to load a frame on Data Out pins. (D0-7) It loads first 8 bytes on the pins and in Arduinoo, in the for loops for height, width and byte for each pixels, I read in it from D0-7 and send a signal for next byte array.

But I can't understand how to connect the OV7670 to the Arduino. In code, there are conts called WRST, RRST, WEN, VSYNC and RCLK. On the OV7670 I've got SIOC, SIOD, VSYNC, HREF, PCLK, XCLK, D0-7, RESET and PWDN pins. How can I connect these pins like in the github link?

By the way here is my OV7670, I read there are different versions of OV7670:

OV7670 Camera Module

  • Ok, so in this project I can see three main topics: 1) acquire a photo from the OV7670, 2) send data through the bluetooth module, 3) what is the best way to acquire and transfer a big image with poor hardware. So, what is your questoin related to? Did you already perform some of these steps?
    – frarugi87
    May 3, 2016 at 13:08
  • Button, connectin Android and receiving-transmittin data and turn leds is okay. I cannot connect Arduino and OV7670 and can not capture frame (photo) with it. May 7, 2016 at 1:59
  • It doesn't seem that that library is the correct one for you, since the signals are quite different. Maybe you can see what are the differences, but then you should integrate them by reading the datasheet of the OV7670 module..
    – frarugi87
    May 7, 2016 at 13:20
  • Okay, there are differences between code and datasheet. But how can I use this card with Arduino? This is the subject of my question.. May 8, 2016 at 13:31

1 Answer 1


I have looked into something very similar and I think the reason you are finding it difficult to find information is you are viewing the full system. Break it down into smaller chunks and you will get more chance of finding a match. So lets look at the camera and then the rest of it.

I think that the reason you can't get an answer for this is that you can't do what you want with what you have. My research seems to say that the OVO7670 camera needs a separate micro processor and 'special' RAM to work (can't remember what is special about the RAM at the moment). There is a board that does this called a 'PIXY', but its not cheap.

On the plus side, connecting an Arduino to Android via blue tooth should be quite simple there should be lots of examples on how to set up the Arduino side. You then need to define to convey your messages between your server an client and I know you aren't asking how to turn a LED on and off from an Arduino. (If you are please see the Example Blink).

Hope that helps


I think you should have 18 pins on you OV7670.

  1. 3v3 - 3.3v
  2. Gnd - Ground
  3. SIOC - Input - I2C Clock
  4. SIOD - I/O - I2C Data
  5. VSYNC - Output - Vertical Synch
  6. HREF - Output - Horizontal Synch
  7. PCLK - Output - Pixel Clock
  8. XCLK - Input - System Clock
  9. D7 - Output - Data bit 7 (MSB)
  10. D6 - Output - Data bit 6
  11. D5 - Output - Data bit 5
  12. D4 - Output - Data bit 4
  13. D3 - Output - Data bit 3
  14. D2 - Output - Data bit 2
  15. D1 - Output - Data bit 1
  16. D0 - Output - Data bit 0 (LSB)
  17. RESET - Input - RESET - Low to reset
  18. PWDN - Input - Power Down - High to activate

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.