LiveOV7670

by indrekluuk

indrekluuk / LiveOV7670

A step-by-step guide to building the circuit for this project:

135 Stars 59 Forks Last release: Not found 185 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

LiveOV7670

Demo:
https://www.youtube.com/watch?v=TqSY6FETuos&list=PLVilroPGLJaesaS5mP93i0goPck2JK-O4&index=2

Step-by-step guide with pictures:
https://circuitjournal.com/arduino-ov7670-10fps

Tutorial 1 (10fps video stream to a display):
https://www.youtube.com/watch?v=Dp3RMb0e1eA&index=3&list=PLVilroPGLJaesaS5mP93i0goPck2JK-O4
Tutorial 2 (sending image to the PC over the USB cable):
https://www.youtube.com/watch?v=L9DTW1ulsT0&index=5&list=PLVilroPGLJaesaS5mP93i0goPck2JK-O4

Datasheet for OV7670:
https://www.voti.nl/docs/OV7670.pdf


Compiling in Arduino IDE:

  1. Download all files
  2. copy "src/lib/LiveOV7670Library" and "src/lib/AdafruitGFXLibrary" to Arduino "libraries" folder (If you already have "AdafruitGFXLibrary" then you don't have to copy that)
  3. Open "src/LiveOV7670/LiveOV7670.ino" in Arduino IDE
  4. Select Tools->Board->Arduino Uno/Nano

Connection shcema for the PCB board:
https://raw.githubusercontent.com/indrekluuk/LiveOV7670/master/LiveOV7670.png


Connections for Arduino Uno/Nano

OV7670 connections:

VSYNC - PIN2
XCLCK - PIN3 (must be level shifted from 5V -> 3.3V)
PCLCK - PIN12
SIOD - A4 (I2C data) - 10K resistor to 3.3V
SIOC - A5 (I2C clock) - 10K resistor to 3.3V
D0..D3 - A0..A3 (pixel data bits 0..3)
D4..D7 - PIN4..PIN7 (pixel data bits 4..7)
3.3V - 3.3V
RESET - 3.3V
GND - GND
PWDN - GND

1.8" TFT connections:

DC - PIN8 (5V -> 3.3V)
CS - PIN9 (5V -> 3.3V)
RESET - PIN10 (5V -> 3.3V)
SPI data - PIN11 (5V -> 3.3V)
SPI clock - PIN13 (5V -> 3.3V)
VCC - 5V/3.3V (depending on jumper position on the TFT board)
BL - 3.3V
GND - GND


Connections for Arduino Mega

OV7670 connections:

VSYNC - PIN2
XCLCK - PIN9 (must be level shifted from 5V -> 3.3V)
PCLCK - PIN12
SIOD - PIN20-SDA (I2C data) - 10K resistor to 3.3V
SIOC - PIN21-SCL (I2C clock) - 10K resistor to 3.3V
D0..D7 - PIN22..PIN29 (pixel data bits 0..7)
3.3V - 3.3V
RESET - 3.3V
GND - GND
PWDN - GND

1.8" TFT connections:

DC - PIN48 (5V -> 3.3V)
CS - PIN53 (5V -> 3.3V)
RESET - PIN49 (5V -> 3.3V)
SPI data - PIN51 (5V -> 3.3V)
SPI clock - PIN52 (5V -> 3.3V)
VCC - 5V/3.3V (depending on jumper position on the TFT board)
BL - 3.3V
GND - GND


Special thanks to https://github.com/ComputerNerd/ov7670-no-ram-arduino-uno

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.