OV7670 Camera Module with Arduino: 10fps Video (Step-By-Step guide)

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 677

  • @harrykaradimas857
    @harrykaradimas857 3 года назад +11

    Nice video, very clear ! And what a performance to squeeze 10 FPS from an arduino uno !

    • @techmad8204
      @techmad8204 3 месяца назад +1

      thats the max speed you can get on Arduino uno as the max clock we can generate on gpios is 8Mhz as arduino runs at 16Mhz and fps is calculated as (pclk*5)/4000000 substituting pclk as 8Mhz we get 10fps

  • @83tachyons
    @83tachyons 6 лет назад +1

    hello Mr.Luuk,I forgot to connect some datapins of the camera.After I added the missing connections, now it is working!!OMG thank you very much!

  • @zaidhussain5206
    @zaidhussain5206 6 лет назад +14

    Thank you so much for sharing this project

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @glynnmason8205
    @glynnmason8205 5 лет назад +1

    i was looking for info on how to use the ov7670 camera sensor and i found this video its brill will help for future

    • @glynnmason8205
      @glynnmason8205 5 лет назад +1

      plus its amazing what you can do with an arduino

  • @johnontita6845
    @johnontita6845 9 месяцев назад

    excellent illustration of using ov7670

  • @digitalartee
    @digitalartee 3 года назад

    Indrek is ingenious! Nice vid. You should do more.

  • @Ententrain3r
    @Ententrain3r 5 лет назад +4

    Really Cool! Thanks for sharing! Helping me out a lot!

    • @zacharydavis2399
      @zacharydavis2399 4 года назад

      Is there a simpler way to reduce circuit with all the external resistors? Like with a different lcd screen ?

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @jekabskarklins
    @jekabskarklins 5 лет назад +4

    Is that an Estonian accent? Thanks, best video tutorial on how to connect OV7670 to Arduino so far I found.

    • @IndrekL
      @IndrekL  5 лет назад +2

      Yes and thank you!

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @kuthufshakul8957
    @kuthufshakul8957 4 года назад +2

    Thank you for sharing this project, indrek. super helpful.

    • @IndrekL
      @IndrekL  4 года назад

      Hey! Thank you for the feedback!

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @poijmc606
    @poijmc606 4 года назад

    Wow, I'm stunned by the performance. Output looks really smooth as for 16Mhz Atmega.

    • @IndrekL
      @IndrekL  4 года назад

      Hey! I was able to get the Arduino to be in perfect sync with the camera. This means that I don't have to check pixel clock while reading a line from the camera. It just blindly reads next pixel and sends it out from the SPI.

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

    • @marionetienney5950
      @marionetienney5950 6 месяцев назад

      ​@@IndrekL Hey !
      How to put the code on the Arduino IDE and then upload it to the map?
      I downloaded the code but I can’t put it on the app!
      I thank you in advance for your answer.

  • @niphotwala188
    @niphotwala188 6 лет назад +5

    Thank you so much for the video man! The stream is quality is pretty good, does the Arduino do all the processing work or does the camera also improve the performance?

    • @IndrekL
      @IndrekL  6 лет назад +4

      Arduino does not modify or improve the image in any way. Camera sends pixel data out, Arduino captures it and forwards it to the screen.

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @omarroldan5276
    @omarroldan5276 5 лет назад +3

    What a great project!
    Thanks so much for sharing all your effort and time. I really having fun with the OV7670 :)

  • @samuddhaofficial4303
    @samuddhaofficial4303 Год назад +1

    Can we use two camera modules in one uno board ? Or mega board ? Please reply.

  • @englishrupe01
    @englishrupe01 4 года назад +3

    That is great, and really helpful to me! Thank you!

    • @IndrekL
      @IndrekL  4 года назад +2

      Hey! Thank you for the feedback!

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

    • @englishrupe01
      @englishrupe01 3 года назад

      @@elaiottoiale4216 You realize that it is very rude to redirect to a different video away from the subject video?

  • @qa38o54
    @qa38o54 10 месяцев назад +1

    how do you make the first module you showed at the beginning

  • @LetsPrintYT
    @LetsPrintYT 4 года назад +1

    Kas oled Eestlane? Aktsent on täpselt selline. :D

    • @IndrekL
      @IndrekL  4 года назад

      Hei! Jah. Vaatan, et sul on päris huvitav kanal. Mis programmiga sa neid 3D prinditavaid detaile disainid? Fusion 360 või OnShape?

    • @LetsPrintYT
      @LetsPrintYT 4 года назад

      @@IndrekL Ma kasutan Fusion 360 jep. Ma avastasin su kanali, sest ma plaanin arduinot oma videodes kasutama hakata ja ma alles õpin seda asja. Su kanalist on palju abi olnud! ;)

    • @IndrekL
      @IndrekL  4 года назад

      Sul on üsna huvitavad videod. Subscribe'sin, kuna seda tahaks küll näha, mida sa veel koos Arduinoga valmis saad tehtud.
      Mul üks sõber tegi "Eesti juutuuberid" Facebooki grupi mõttega, et oleks mingi arutluse koht. Hetkel see veel väga värske. (Selliste gruppidega on muidugi alati oht, et taandareneb lõpuks videote promomiseks ja subscriberite kerjamiseks. Aga äkki on võimalik seda kuidagi vältida)

  • @muhammadafuzarahman2326
    @muhammadafuzarahman2326 2 года назад +1

    Thank you so much for the video! Is there any way to extend the length between the camera and the screen? I've tried using jumper wires to place the TFT screen somewhere else but its only turning white.

  • @lorenzor461
    @lorenzor461 Год назад +1

    Hi there, thanks for the very clear tutorial! I've got a problem tho, can someone help me?
    I have Arduino uno and 2.8" TFT SPI 240X320 v1.2 screen. While compiling the code (after importing those 2 library as you txt file) i have an error saying
    "compilation error: setup.h: no such file or directory"
    Any help would be highly appreciated!

  • @alfacoaching
    @alfacoaching 3 года назад +1

    When I'm uploading the same code in my arduino there is showing compilation error so how can I remove it??

  • @ygmoor8849
    @ygmoor8849 Год назад

    I tried, it worked. Thank you very much indeed!

  • @sambhavgupta1203
    @sambhavgupta1203 Год назад

    Very Cool! But Can i get the tutorial for the one you showed in the starting without breadboard??

  • @oRelogo
    @oRelogo 4 года назад +1

    Really great tutorial. I build it too now but the screen is upside down. Do you have any solutions for that?

    • @IndrekL
      @IndrekL  4 года назад +2

      Hey! Try changing rotation.
      In file ExampleTftBufferedCameraFrame.cpp
      add "setRotation" after:
      tft.initR(INITR_BLACKTAB);
      tft.setRotation(0);
      Try changing the parameter tft.setRotation(0), tft.setRotation(1), tft.setRotation(2), tft.setRotation(3)
      Probably one of those values will turn the image around.

  • @javierleal1169
    @javierleal1169 4 года назад +2

    Gracias por compartir, excelente proyecto. Saludos desde Argentina.

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @ieksm2
    @ieksm2 6 месяцев назад

    I have a stupid question.. How would you ground the wires without a breadboard? Like in your original configuration before you used a breadboard, how were you grounding? Thanks!

  • @comunitariarobotica2607
    @comunitariarobotica2607 6 лет назад +3

    thank you so much, your video was helpful. Another thing that I would like to learn is to send the video of the camera OV7670 by bluethooth HC-05 and show the video in the 1.8" tft display................... please could you make that video or maybe you now any link about that..... I would appreciate and thanks again

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @ahsero8278
    @ahsero8278 2 года назад

    How do you design a PCB shield for the OV7670 camera and the microcontroller? Can you teach us how to?

  • @IsaacClarke74
    @IsaacClarke74 2 года назад

    Thank you for the clear instructions in your video! Would this also work with an OLED display, such as an SSD1306 or SSD1331, for example?

  • @s71402san
    @s71402san 10 месяцев назад +1

    Can this be used for FPV?

  • @kareemramdhani832
    @kareemramdhani832 6 лет назад

    hey now you're using arduino UNO!! thank you very much dude! this video really details and helpfull

    • @kareemramdhani832
      @kareemramdhani832 6 лет назад

      and the FPS is great also!
      cant wait to make this one! keep it up!

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @luisgustavosantos105
    @luisgustavosantos105 Месяц назад

    Hey, man!
    This video was amazing!
    I reaaly apreciate your job.
    But I need some help, i am trying to use this camera to identify colors and to get how much bytes per seconds i can get.
    Can you help me?

  • @bvenkat8140
    @bvenkat8140 2 года назад

    what do you mean by shorting J1.Also does this apply to the modern 1.8 spi tfts?

  • @garethfloweday8030
    @garethfloweday8030 5 лет назад +2

    Thanks Indrek! This was my first ever Arduino (Uno) project and your video provided EXCELLENT instructions! Before I set it up on a nano and built it into an automotive rearview parking camera, I'd like to try and improve the screen brightness. I see that the screen can be powerred by 3V or by 5V. Would converting to 5V on the screen power increase its brighness? Could one keep the signals running at 3V? Thanks again for the fantastic video!

    • @IndrekL
      @IndrekL  5 лет назад

      I am pretty sure that it won't get brighter like that. If you leave J1 connection on the screen board open for 5V then the AMS1117 voltage regulator (just above the J1) will step the power down to 3.3V.
      You probably could try to scratch the tracks for LED power on the board and add your own wires with higher voltage and a current limit resistor.
      Note that PIN "7-BL" on the screen board is not power to the LEDs. It is just a signal that turns the back light on. LEDs are powered by the VCC PIN. (I thought at first that this PIN provides power to the LEDs)

    • @garethfloweday8030
      @garethfloweday8030 5 лет назад +1

      Thanks @@IndrekLndrek. I have now bought the components for making my application version using a Nano, voltage regulator for the automotive 12VDC incoming power, carefully designed strip-board layout for the resisters, fuse, power switch, shielded multicore cables etc. I'll 3D print the enclosures and I think the project will be a nice success, again thanks to you for working it all out!

    • @IndrekL
      @IndrekL  5 лет назад

      The longest cable I have tried between Arduino and the camera is about 20cm (a ribbon cable). It would be interesting to know how long distance you can make it.

    • @garethfloweday8030
      @garethfloweday8030 5 лет назад

      Hi @@IndrekL. I finally got around to building my application version with the Nano. The cable to the camera is 1.5m and the cable to the screen is 0.5m long. I set the adjustable DC-DC regulator to 9V to supply the Nano. During the wiring up, I conducted your red screen test and your green screen test and both worked correctly. However, when the wiring is complete and I turn on, only 2/3rds of the screen comes on with a fuzzy snowy image. Nothing close to how well it worked before with the Uno and the breadboard setup. Do you think the cable lengths are too long and attenuate the signals too much? Or do you think I made a mistake on something? How would one troubleshoot? connect up to oscillioscope and check out the signal voltages and digital signal crispness? Or should I take the whole thing apart and go back to the breadboard version, but using the nano and then build progressively toward my application version?

    • @IndrekL
      @IndrekL  5 лет назад

      @@garethfloweday8030 I think that most likely the cable to the camera is too long. Could you try with a shorter cable to the camera to make sure?
      I think it would be better to put Arduino near the camera instead of near the screen. There is only one way SPI communication to the screen but to the camera Arduino has to generate system clock and then read back all the pixel data.

  • @albertfernandes7846
    @albertfernandes7846 6 месяцев назад

    Mr. Luuk I have an issue. For the first few days it was working great and was giving good visual output but one day, suddenly the the output was okay but I was getting coloured lines along the edges of the output like so

  • @kyoadam1593
    @kyoadam1593 3 года назад

    Nice video can this be transmitted 4g lte ? How the qualitygonna be?

  • @ygreaterr
    @ygreaterr 3 года назад

    hello Indrek! thanks a lot for the video BUT, what if my pin12 is busy? I am using it for SPI connection between my arduino and nodemcu. can I use pin 0 or 1?

  • @fakephysicsengineer6188
    @fakephysicsengineer6188 7 месяцев назад

    can we do an object detection just using arduino and this camera module?

  • @marionetienney5950
    @marionetienney5950 6 месяцев назад

    @IndrekL
    Hello !!! I can’t put the program in the Arduino IDE, can you tell me how to do it?
    I would be eternally grateful.

  • @CurtRowlett
    @CurtRowlett 4 года назад

    At 0:42 in your video, when you say that you "shorted J1" on the module, does that mean you just placed a drop of solder on top of the area in the red circle? I am wanting to build this project and I'm not familiar with all the techniques involved. Thank you.

    • @IndrekL
      @IndrekL  4 года назад +1

      Hey! Yes, connect the two little pads with a drop of solder.

    • @CurtRowlett
      @CurtRowlett 4 года назад

      @@IndrekL Thank you, Indrek. I really like your channel. You have great projects and your step-by-step instructions are really helpful.

    • @IndrekL
      @IndrekL  4 года назад

      Thanks!

  • @武威桀
    @武威桀 13 дней назад

    i wonder how to replace tft into 240x240 circle tft?

  • @coolcolumbus
    @coolcolumbus 5 лет назад +2

    loved it, thanks for sharing

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @drakerjorch94
    @drakerjorch94 3 года назад

    thanks for this project man..I have a question. Can I use the same code and circuit but with a 2.8" tft screen (ILI9341)?

    • @hamzahteknik2018
      @hamzahteknik2018 3 года назад

      same question bro,,,, but i think thats not work with tft screen il19341, cause in the setup folder, specific about ST7735

  • @Pro_AQ
    @Pro_AQ Год назад

    How exactly did you manage to get 10 fps on the OV7670?

  • @zltn_brkl
    @zltn_brkl 2 года назад

    Hello Indrek, I am stuck with a project could you please help me out somehow? The main idea is based on your project though ours is intended to save the captured images to an SD card. Unfortunately we could not figure out the correct method for this procedure yet. We would appreciate your help in any form. Thanks

  • @johnvinzpalma3184
    @johnvinzpalma3184 2 года назад

    Great video! Do you know how to connect ov5642 with 20pins to arduino uno?

  • @agshlis3456
    @agshlis3456 2 месяца назад

    Excelent job !!!

  • @radical94
    @radical94 4 года назад

    Great video , thank you so much .... quick question could I do this with a recycle laptop camera ?

    • @IndrekL
      @IndrekL  4 года назад

      Perhaps if you find some documentation for the camera.

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @QqsMinutesaPerdre
    @QqsMinutesaPerdre 4 года назад

    I plan to learn Arduino and was thinking of doing a project using a live cast on an LCD screen. Instructions very clear and simple, will definetly try it out. Do you think it would be possible to connect 2 screens simultaneously to the camera?

    • @IndrekL
      @IndrekL  4 года назад

      Maybe you can wire the same connections to two screens. In theory it might be possible since data only flows from Arduino to the screen. I haven't tried it myself though.

    • @QqsMinutesaPerdre
      @QqsMinutesaPerdre 4 года назад

      @@IndrekL How could I accomplish that? Do double pins exist?

    • @jimbutleryt
      @jimbutleryt Год назад

      @@QqsMinutesaPerdre i imagine if you wire all the pin connections to the arduino into a breadboard and connect the two screens like that it should work. Did a similar thing with two different modules using the same arduino connections and it worked fine👍

  • @yc9853
    @yc9853 2 года назад

    Can you do it wirelessly? as in using bluetooth get the footage from camera

  • @mikloslorincz5184
    @mikloslorincz5184 2 года назад

    How can I get the image displayed on the display to move to the right or to the left (according to the amount of rotation) by turning a potentiometer left and right?

  • @XPERIA80
    @XPERIA80 2 года назад

    There is any way use this project with a more powerfull esp32?

  • @LokiSamurai.
    @LokiSamurai. 8 месяцев назад

    THANK SO MUCH MEOWWWWW I CAN NOW SEE BETTER IN MY COSTUME !!!!!

  • @dipty6667
    @dipty6667 4 года назад +1

    Does this work with that orange 2.4 inch tft shield display

    • @IndrekL
      @IndrekL  4 года назад

      Not directly, because I am using a slightly modified library for the 1.8inch tft. But it probably is possible to make it work with other screens too.

  • @skatescooter619
    @skatescooter619 11 месяцев назад

    Hello , plz is it possible to make image processing by Arduino on thé pictures of thé camera?

  • @elwpoqerwituyvnu
    @elwpoqerwituyvnu 5 лет назад +1

    Great job! How to make a soldering microscope out of it?

    • @IndrekL
      @IndrekL  5 лет назад

      You probably could use the same connections and the same code. It would be better to use WAVGAT nano instead of Atmel based Arduino since then you get 20 frames per second which is much smoother. The hardest part is to make a 3D printed body for the device and custom PCB to fit into the body.

    • @englishrupe01
      @englishrupe01 4 года назад

      ​@@IndrekL Brilliant idea to use the WAVGAT , as i have LGT8F328P sitting doing nothing, and can double the Mhz from the UNO to 32Mhz and cheaper than Nano too!. Thank you!

  • @comunitariarobotica2607
    @comunitariarobotica2607 6 лет назад

    hello. I have a problem which is: C:\Users\Miguel\AppData\Local\Temp\arduino_build_728828\sketch\ExampleTftBufferedCameraFrame.cpp:13:45: fatal error: BufferedCameraOV7670_QQVGA_10hz.h: No such file or directory
    #include please could you tell me why appears this note when I try to check the programming

  • @madoric13
    @madoric13 4 месяца назад

    Hello, I am not sure if you still reply to comments and questions, but I am hoping you still do! I am following this tutorial using an arduino nano instead of an uno, and I have encountered an issue: The tft display is fully white! Any help would be greatly appreciated, thank you

  • @avcachon5449
    @avcachon5449 2 года назад

    can I use this camera without the D0 to D7 pins to take a photo and save it to a sd card using esp8266?

  • @languagehack2193
    @languagehack2193 3 года назад

    Hello, Can you make a tutorial on a camera FIFO buffer for ARDUINO?

  • @marionetienney5950
    @marionetienney5950 6 месяцев назад

    @IndrekL
    Hey !
    How to put the code on the Arduino IDE and then upload it to the map?
    I downloaded the code but I can’t put it on the app!
    I thank you in advance for your answer.

  • @milanmilivojevic3103
    @milanmilivojevic3103 6 лет назад

    Great job! My question is: Can we connect this display to get larger image?

    • @milanmilivojevic3103
      @milanmilivojevic3103 6 лет назад

      Ok. I have 1.8" display as yours, but it isn't same.
      alexnld.com/product/1-8-inch-128x160-spi-serial-tft-lcd-display-module/ - This is mine.
      Can i use it with yours code?

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @javidafandiyev6062
    @javidafandiyev6062 5 лет назад

    Nice video. Thank you for it. I have one question:
    - How much time does it take to capture a photo and save it in SD card for this camera?

    • @IndrekL
      @IndrekL  5 лет назад +3

      You should use FIFO version of the camera if you want to store the image onto an SD card. The problem is that writing to SD is too slow and Arduino doesn't have enough memory to buffer the image inside its RAM.

    • @javidafandiyev6062
      @javidafandiyev6062 5 лет назад

      @@IndrekL Thank you for reply

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @Ikam_Kaliarte
    @Ikam_Kaliarte 5 лет назад +2

    Thank you so much !!! you saved my :)

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @aryanthappa9307
    @aryanthappa9307 2 года назад

    Hey I m following your project, i m using 1.3 inch TFT display with ST7789 driver any suggestion like what should i change in your project to make it work ?

    • @IndrekL
      @IndrekL  2 года назад

      Hey! The main problem with the Adafruit's screen library was that drawPixel and even pushColor are too slow.
      So I added startAddrWindow and endAddrWindow so I can just write pixel data directly to SPI without having to toggle the chip select pin between every pixel.
      So you probably need to make the same modifications to the screen's library you are using.

  • @prachipatel8405
    @prachipatel8405 Год назад

    How can I show the video output stream on a mobile application

  • @mohamedsami2990
    @mohamedsami2990 3 года назад

    Thank you its very excellent.
    I have cmos camera how can i test it wheather its work r not

    • @IndrekL
      @IndrekL  3 года назад

      My library is for OV7670. If you have some other camera then you need to find a library specifically for that model.

  • @lolo596164
    @lolo596164 6 лет назад +2

    Thank you very much for video

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @mahmou6
    @mahmou6 4 года назад +1

    Hi, is it possible to connect the camera to a servo motor for tracking

    • @IndrekL
      @IndrekL  4 года назад +1

      Yes, you can also connect servo motors to the Arduino in addition to the camera. For example here I am using the OV7670 camera to track the black line: ruclips.net/video/HW2iLS1DyNA/видео.html
      Although Arduino is very weak. You can't do very complex tracking with it.

    • @mahmou6
      @mahmou6 4 года назад

      Indrek Thanks, Indrek! Well, I’m prototyping so it’s worth a try.

  • @rammishra9608
    @rammishra9608 Год назад

    How can we transfer the video wirelessly to other device ?

  • @walterhynson2898
    @walterhynson2898 6 лет назад +2

    thank you ,excellence work

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @pesanchegra
    @pesanchegra 4 года назад

    Thank you very much, nice video! I might try to do some NVG with these this summer, I expect the camera not to have an IR filter hahaha

    • @IndrekL
      @IndrekL  4 года назад +1

      Hey! Someone told me that he made a night vision thing with this camera module using an IR LED, but I don't know how well it worked.

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

    • @pesanchegra
      @pesanchegra 3 года назад

      @@elaiottoiale4216 Video is unavailable :(

  • @yc9853
    @yc9853 2 года назад

    can you give us the pcb you showed at the beginning?

  • @loadcartoons
    @loadcartoons Год назад

    Yeah, i need to know how to take a photo with this set up using a stepper motor. Building a film scanner

  • @nandinenijanardhan284
    @nandinenijanardhan284 Год назад

    How can we get the live feed to pc instead of display

  • @tejasmantri2648
    @tejasmantri2648 6 лет назад

    How to send this live image from one arduino to other arduino and display the image on screen of other arduino? for wirless transmission , we using XBee module

  • @khageshroy7766
    @khageshroy7766 6 лет назад

    Thanks a lot sir... For sharing this project... Just one thing... Can you make the video from the camera save to a SD card...I won't mind if you use any other board(esp..stm) for this purpose... As the Arduino might not have enough juice to control...

    • @IndrekL
      @IndrekL  6 лет назад

      The main problem is that saving to SD card is slow process and Arduino doesn't have enough memory to hold the whole image before saving it.
      In this case it is probably best to use OV7670 with FIFO. Then it could even be done with Arduino since FIFO saves the image quickly and then there is enough time to read it out and store on the SD card.
      I will think about it. Maybe I will try it some time in the future.

    • @khageshroy7766
      @khageshroy7766 6 лет назад

      @@IndrekL but can any other board be used for this purpose as stm32 or esp ...? Coz OV7670 with FIFO memory is quite costly... Anyway thanks for replying so fast...😣

    • @IndrekL
      @IndrekL  6 лет назад

      The cheap STM32 "blue pill" board (stm32f103) has much more RAM than Arduino Uno/Nano (20KBytes instead of only 2KBytes) but it isn't enough to hold even one frame of 160x120x2 (2 bytes per pixel). Although maybe it is enough to buffer image while writing it to the SD card at the same time.
      ESP8266 maybe if there is a model with enough IO Pins (The camera needs at least twelve - 8 for pixel data + 2 for i2c communication + vsync + pixel clock. Optionally additional 1 to generate xclck). Mabye pixel data could be written into a shift register and then read out over SPI.
      If you could find a cheap SRAM chip that is big enough then even Arduino could first store it into this external SRAM chip and then later copy it over to SD card.
      I am sure that there are microcontrollers that have enough internal memory but I doubt that those are cheaper than the OV7670 with FIFO camera.

    • @khageshroy7766
      @khageshroy7766 5 лет назад

      @@IndrekL thanks a lot, sir😊

  • @MrCatAndDog_og
    @MrCatAndDog_og 5 месяцев назад

    in arduino IDE it says file directory not found for the Adafruit_GFX.h

  • @moonmatthew
    @moonmatthew 2 года назад

    Can you somehow create a HUD for this?

  • @acatisfinetoo3018
    @acatisfinetoo3018 4 года назад

    I am going to try and make it...But I have a ILI9341display. What modifications would i have to make to the code to get it working with this display?

    • @IndrekL
      @IndrekL  4 года назад

      Hey! Getting a new display to work with it is a process. I can't just tell you how to do it since I don't know. You have to expermint with it. I had to modify the screen library to get it working since the original libary code was too slow.

  • @EvandsonDantas
    @EvandsonDantas 6 лет назад

    Very hopeful! There is a way to send the data to PC over USB cable?

    • @EvandsonDantas
      @EvandsonDantas 6 лет назад

      I found it on your GitHub. I'm happy now! hahaha

  • @RohitxArora
    @RohitxArora 4 года назад +1

    Hi Sir please tell me how display the picture wirelessly on such a screen
    Thanks a lot Sir

    • @IndrekL
      @IndrekL  4 года назад

      Hey! I haven't done it wirelessly yet.

    • @SopanKotbagi
      @SopanKotbagi 4 года назад +1

      theoretically, at the transmitter, you could use an nRF24L01+ RF transceiver module in place of the screen since it uses the same SPI bus and, at the receiver you could connect another nRF24L01+ module to an arduino which is connected to your PC via USART to display the image data

    • @RohitxArora
      @RohitxArora 4 года назад

      Sopan Kotbagi Thanks a lot

    • @IndrekL
      @IndrekL  4 года назад +2

      @@SopanKotbagi Hey! I checked, the nRF24L01 seems to support up to 2Mb/sec data transfer. It should be doable with minimal code modification on the Arduino side, but with a lower frame rate.

  • @dedisetiawan6796
    @dedisetiawan6796 3 года назад

    is the TFT module 1.8 can be changed with the bigger TFT module than your project?
    Thanks

    • @IndrekL
      @IndrekL  3 года назад

      Theoretically you can use a bigger screen, but the frame rate will drop a lot.

    • @dedisetiawan6796
      @dedisetiawan6796 3 года назад

      @@IndrekL ok, thanks👍

  • @assylzhanizbassar1628
    @assylzhanizbassar1628 3 года назад

    Hello, Indrek! Your building is cool! I want to build it own, and I have some results. My actually problem is with fps of the OV7670. I search that the fps of it, I can control with the certain types of registers inside the camera, but I do not understand how exactly do it. Can you recommend how to increase the fps of it? P.S. I tried to decrease the resolution, but it was not enough.

    • @IndrekL
      @IndrekL  3 года назад +1

      Are you using Arduino? With Arduino UNO/Nano the 10fps is the maximum it can handle. Otherwise clock pre-scaler parameter to change fps.

    • @assylzhanizbassar1628
      @assylzhanizbassar1628 3 года назад

      @@IndrekL Now I use the UNO to testing the camera, then I will move the stuff to the Mega to get inputs from other sensors. So, to change the fps of the camera I should change the clock pre-scaler parameter of the Arduino? If it is, then what is the range that Arduino UNO has handle the camera byte sending, because in some article I read that UNO can not handle the data with speed of 8 Mhz?

    • @IndrekL
      @IndrekL  3 года назад +1

      @@assylzhanizbassar1628 The maximum you can get out of Arduino is the 10fps@160x120. If you want a higher resolution then you need to lower the fps.

    • @assylzhanizbassar1628
      @assylzhanizbassar1628 3 года назад

      Indrek here I have another issue, if I will decrease the pre-scaler value to 3, then I haven't get the image. I work with resolution of 160x120, and if fps is 5 that is enough for me. But I can not get it. My purpose is to send the image to my computer through the serial port. Maybe for that I get the low fps? My PCLK 8MHz, my setting pre-scaler value is 13.

  • @CraftyZA
    @CraftyZA 2 года назад

    nice idea. I'm looking into doing this with esb32cam. Cheaper cam and uc in one unit. My son wants night vision, so basically this with a hefty ir flash light that is shoulder mounted or something

  • @apolosilver2054
    @apolosilver2054 4 года назад +2

    Man, this is a fucking help for i enter in my university!!!
    I love you~~

    • @elaiottoiale4216
      @elaiottoiale4216 3 года назад

      ruclips.net/video/D3U6fVxr6iE/видео.html

  • @iProgramInCpp
    @iProgramInCpp 5 лет назад

    How did you optimize it? I've heard that SPI and I2C are bottlenecking the live image a lot.

    • @IndrekL
      @IndrekL  5 лет назад

      I compressed the sending of bytes over SPI as close together as possible. If you use Arduino library's "spi.write(data);" then it leaves huge caps between two byte.
      I write directly to the SPI register;
      SPDR = byte;
      And then just wait until a byte is sent with
      asm volatile("nop");
      And then send the next byte.

    • @iProgramInCpp
      @iProgramInCpp 5 лет назад

      @@IndrekL What about I2C/TWI?

    • @IndrekL
      @IndrekL  5 лет назад

      I2C is only used for setup after start up. During the image transfer it is not used anymore.

  • @hamzahteknik2018
    @hamzahteknik2018 3 года назад

    Thank u so much sir,,, for your sharing project

  • @gamingworld9668
    @gamingworld9668 2 года назад

    Hello sir
    I have an doubt that is it possible to operate 3 or 4 lens output capture only photo and send that to our gmail
    Is it possible sir by using one arduino or raspberry board.

  • @rizkylevy8154
    @rizkylevy8154 Год назад

    setup.h no such file or directory,how to solve it?

  • @ftechshorts6398
    @ftechshorts6398 Год назад

    If I connect arduino pin to camera module without resistor then what will happen

  • @jamiegroskopf8905
    @jamiegroskopf8905 6 лет назад

    Hello Mr.Indrek Luuk, Can the SPI data to TFT be sent by LRF24L01 type data link to make wireless capture at PC? If so, will it need 2-way communication or just one way? I need to remote capture low resolution image and send by RF data link.

    • @IndrekL
      @IndrekL  6 лет назад

      I Googled the LRF24L01 and it seems to support data transfer speed up to 2Mb/sec. This is almost good enough. It could work if it is OK for you to sacrifice some resolution or frame rate. The SPI to the screen is 8Mb/sec.
      For the images you only need one way communication.

    • @jamiegroskopf8905
      @jamiegroskopf8905 6 лет назад

      Thank you I just need one image grab in lowest resolution. QCIF or QQVGA (160x120) monochrome is fine, I just need to monitor a device state that has no output.I do not mind slow transfer of 2-3 seconds per frame as I believe the 2Mb/sec is a little optimistic. I would prefer image size

    • @IndrekL
      @IndrekL  6 лет назад

      This sounds reasonable. A QQVGA frame (with colors) from the camera is 160x120x2 = 38400 bytes. Getting it to work around 1fps shouldn't be too hard. Probably 2fps is not impossible (there is always overhead and timing has to be perfect)
      People ask a lot about wireless transfer of the image. I just ordered a couple of LRF24L01 modules myself. When I have time I will try to do it myself also.

  • @ivanash4865
    @ivanash4865 6 лет назад +1

    Hello.
    Tell me, please, where to buy the components are the same as in yours the "Components" folder?
    Or at least say their names.

    • @IndrekL
      @IndrekL  6 лет назад

      Hey!
      You need to get:
      1. Arduino NANO (a clone is fine)
      2. This screen: www.ebay.com/itm/1-8-Inch-Mini-Serial-SPI-TFT-LCD-Module-Display-with-PCB-Adapter-ST7735B-IC/401010353521?epid=1748378921&hash=item5d5e146571:g:48EAAOSwA3dYgbyi
      3. This camera module: www.ebay.com/itm/VGA-OV7670-CMOS-Camera-Module-Lens-CMOS-640X480-SCCB-W-I2C-Interface-Arduino/201414930886?epid=5014739077&hash=item2ee543f1c6:g:NQgAAOSwY45URIJY
      The red components on the component image are level shifters. But if you do it on a bread board you will be better off using resistors as simple voltage dividers. I tried to use those level shifters on bread board first but the image wasn't clear. Something produced too much noise.

    • @ivanash4865
      @ivanash4865 6 лет назад

      Hello.
      I am interested in the finished shield. (10 second in video)

    • @IndrekL
      @IndrekL  6 лет назад +1

      Ah, ok. I designed it myself and you can't order it anywhere in assembled form.
      If you download the LiveOV7670 project files from github then you can see that there is this folder:
      LiveOV7670/pcb/kaamera_ja_ekraan/gerber/
      If you zip the "gerber" folder then you can upload it to oshpark.com and get it manufactured. I ordered this project from OSHPark. Or you could use a Chinese manufacturer like PCBWay. Chinese manufacturers are cheaper if you want bigger or more boards.
      When you receive the board you have to solder two 10k resistors and a bunch female pin headers onto it.

  • @reactionnotitsmenicksmithy
    @reactionnotitsmenicksmithy 3 месяца назад

    Excuse me, i'm from Indonesian, can this projects to see monitorring with serial monitor in arduino ide?

  • @linciyuan598
    @linciyuan598 2 года назад

    why you are using resistor here?

  • @theangrydiver
    @theangrydiver 3 года назад

    Hi!
    Might sound dumb but...
    Is there any way to set up multiple camera's and screens?

    • @IndrekL
      @IndrekL  3 года назад

      Hey! A single Arduino is too weak to handle multiple cameras. So you have to use one Arduino per camera.

    • @theangrydiver
      @theangrydiver 3 года назад

      @@IndrekL ah okay thanks! Is there anything else beside an arduino that can take the camera input and output it to a 2.8 inch lcd? Trying to get as high of an fps as possible

  • @edu_asmaus
    @edu_asmaus 6 лет назад +2

    great job

  • @lakshanwijewardana6114
    @lakshanwijewardana6114 3 года назад

    hi..can you help me to connect ov7670 with arduino mega.. output like ash color not cleared picture..

    • @IndrekL
      @IndrekL  3 года назад

      Hey! Try checking the XCLK and Pixel clock wires. If those give bad signal then the image quality will get bad. Make sure that the connections are good and that the wires aren't too long

  • @albertfernandes7846
    @albertfernandes7846 6 месяцев назад

    Sorry for the disturbance if you are facing due to my interruption but i really need it sir.

  • @bakisha
    @bakisha 5 лет назад

    I bought OV7670 camera, but still didn't try it. Can i use Arduino mini? Powered with 3.3V and skip all that level-shifting? Will code work if i use arduino micro on 8MHz?

    • @IndrekL
      @IndrekL  5 лет назад +1

      It should work but at half the speed. So instead of 10fps you will get 5fps.

  • @brillantesjohnaaron2071
    @brillantesjohnaaron2071 3 года назад

    My Arduino ide says "Specified folder/zip file does not contain a valid library
    " ... I cant include the library. What I'm gonna do now?

    • @IndrekL
      @IndrekL  3 года назад

      How exactly are you trying to do the library install?
      If you just copy the two library folders (Adafruit_GFX_Library and LiveOV7670Library) into Arduino/libraries folder then it doesn't give any errors.

  • @ben3580
    @ben3580 4 года назад

    hi again, I'm trying to mirror the screen about the y axis. From the internet I've got that I should change MY in the MADCTL register. In your code the MY bit is set: "#define MADCTL_MY 0x80".
    Looking at the ST7735 datasheet there is a table (page 55) which I think explains what I should change '0x80' to. However the table doesn't make sense to me - could you take a look?

    • @IndrekL
      @IndrekL  4 года назад +1

      Hey! I tried it. In Adafruit_ST7735_mod.cpp "void Adafruit_ST7735_mod::initR(uint8_t options)"
      change:
      writecommand(ST7735_MADCTL);
      writedata(0xC0);
      to:
      writecommand(ST7735_MADCTL);
      writedata(0x80);

    • @ben3580
      @ben3580 3 года назад

      ​@@IndrekL You are the best, thanks for the help. I'm using setRotation(2), which unfortunately prevents mirroring. Do you know an easy way to fix that?
      (The easiest way would be to turn the camera upside down, but I'll have to re-make some parts I've built so it fits)

    • @IndrekL
      @IndrekL  3 года назад +1

      @@ben3580 You can flip the axis for setRotation(2)
      Chang line 617 to this
      case 2:
      if (tabcolor == INITR_BLACKTAB) {
      writedata(MADCTL_RGB | 0x80);

    • @ben3580
      @ben3580 3 года назад

      @@IndrekL Success! Thanks so much. 0x80 flipped it upside down, but 0x40 has sorted it. Thanks again