Arduino DIY Photo Frame
In this video we are going to learn how to use the SD card slot of the popular 1.8″ Color TFT display which uses the ST7735 driver. Then we will save some bitmap images in the SD card and we will display them on the display. In other words, we will build a simple Arduino DIY Photo Frame.
If you have watched some of my previous videos, you may have noticed that I use this 1.8” color TFT display a lot recently. The reason for that is that this display is very easy to use, it costs less than $5 and it offers color! At the back, the display has an SD card slot, so I thought that we have to learn how to use that as well. As it turned out, it is really easy to use the SD card slot of the display! That makes this display even better.
The project that we are going to build today is this. A simple photo frame which loads images from the SD card. I have placed some .bmp images in the SD card and the project loads them and displays them at the display in full color! As you can see the speed of the project is very high if we take in consideration that the brains of this project is the old and slow Arduino Nano. In my opinion, this is really impressive. But let’s now see how to build this project.
The parts needed in order to build the Arduino DIY Photo Frame are these:
——————–
WHERE TO BUY
——————–
Arduino Nano: https://educ8s.tv/part/ArduinoNano
Color TFT: https://educ8s.tv/part/7735
Small Breadboard: https://educ8s.tv/part/SmallBreadboard
Jumper Wires: https://educ8s.tv/part/JumperWires
Power Bank: https://educ8s.tv/part/Powerbank
Full disclosure: All of the links above are affiliate links. I get a small percentage of each sale they generate. Thank you for your support!
[adsense]The cost of the project is around $15 but I am sure you already have some of these parts available so you can build this project with even less money.
In order to use the SD card slot with Arduino, we need to connect these 4 top pins of the display with Arduino. In have soldered some female header pins to them and we are ready to connect them. The SD card module uses the SPI protocol in order to communicate with Arduino. So we have to use the hardware SPI pin of the Arduino Nano. The SD_CS pin goes to Digital Pin 4. The SD_MOSI pin goes to Digital Pin 11, the SD_MISO goes to Digital Pin 12 and lastly, the SD_SCK pin goes to digital pin 13. That’s it.
Now we are ready to connect the bottom pins of the display. In order to see how to connect the display check the detailed tutorial I have prepared on that a few months back. You can click on the card here in order to watch this video. Both the display and the SD card module are use the SPI pins so on some Arduino SPI pins we have connected two wires! OK, now we are ready to power up the project. As you can see, everything is working as expected and the images are displayed on the screen one after another.
——————–
LIBRARIES
——————–
https://github.com/adafruit/Adafruit-ST7735-Library
https://github.com/adafruit/Adafruit-GFX-Library
——————–
CODE OF THE PROJECT
——————–
SUBSCRIBE ON YOUTUBE
——————–
Never miss a video: Subscribe to educ8s.tv
Hi Nick, tried to build this project but IDE errors with
‘class Adafruit_ST7735’ has no member named ‘Color565’ ??
change to ‘color565’
I can confirm I am also getting the same Color565 error
wow, half done = raw meat is unsafe ? 565 ” // and it compiles uploads BUT { an accurate , common language; explination of FORMAT ? ” does not recognize format .
I have carefully converted ” down loaded gimp { with all bells/whistles } irfanview/wine , on line adafruit linked image converter.——-
I do not believe You have accomplished any thing but show off something YOU DO NOT understand !
using a windows software to convert images ” IS NOT AND NEVER WILL BE open soursce ”
HOW : using what, where can it be obtained,
YOU did GREAT on the 1.8 tft EXPO A real fne job
now processing an image ” that seems tobe ellusive ?
your down load does not provide a *.bmp to view and may be figure out what format.
why ? 565 indicates a mis paste .
can you fix this ?
I finished it a long time ago and my channel:YouTube
NANO:
Using ST7735 1.8″ Color TFT Display” SD Card Photo Frame on Arduino(I Love Michael Jackson)
UNO+2.4 TFT:
Arduino UNO_SD memory card TFT2.4 inches
Just change it to a lower case ‘c’ in the code…
i am trying to build it but i only get a white screen.
Is their a way to fix it?
Hi. Please advise me on how to display the bitmap in SD card using the ST7735 1.8″ TFT dispaly. I viewed the video on “Arduino DIY Photo Frame”. The video is using the Arduino Nano. I do not know how to do the hardware of SD-CS, SD_MOSI, SD_MISO & SD_SCK 4 wires. Is it just connect these 4 wires to the Arduino Uno Digital pins as what stated in the sketch? How about the connections of the remaining pins such as SPI pins? This video is using NANO board, how to connect to Uno board? As compared tio the previous video on “Using the ST7735 1.8″ Color TFT Display with Arduino”, is it right to connect 2 wires to pin 10 and pin 8 to the Uno board? Please advise. Thank you.
Hi Nick (CC all),
To Chris: I think you can solve that problem by starting the code by small letter.
-> color565 instead of Color565.
To Nick:
I got the same problems like Sam, whe I tried to build this photo frame project. I can use the TFT without problems for example with Adafruit demo program. I am using the same wiring like in your other video (https://www.youtube.com/watch?v=boagCpb6DgY). But if I connect additionally the SD card pins, I do not get any picture displayed, even the code cannot be uploaded. But if I disconnect the SD_MOSI pin, then I can at least upload the code, but nothing appears on the display. Therefore it would be really great, if you could share with us a fully described wiring diagram “TFT+SD+UNO/Nano”. The best would be, to add that required wiring diagram directly here in your website. Do you think, you could do it? Many thanks in advance. Kindest regards.
Hallo an Alle, Mein Name ist Ralf, ich habe diese Schaltung gebaut und sie funktioniert in abgewandelter Form. Wer Interesse hat, kann mir schreiben.
LG Ralf
Hallo Ralf,
ich habe das Projekt ebenfalls nachgebaut und es funktioniert auch so weit. Leider ist der Bildaufbau nicht so schön wie im Video, sondern das Bild flackert, bis das nächste Bild geladen ist. Wie ist das bei dir und welche Änderungen hast du vorgenommen.
Grüße
Joachim
Hi Nick; I enjoy your instruction. I tried to build this project with the items your described; however, I cannot get the bmp to load. Always says can’t find file? I saved these as 24 bit bmp files. Not sure why; any ideas that might help?
For anyone who is working with this project and display. The displays are old technology and I tried for quite a while to get the display to work with an Arduino Uno. I kept having problems trying to get the SD card to initiate. Turns out that the problem is, the display sd card reader will not accept any SD above about 2 gb in size. If you use a 2 gb or less SD, FAT 26 or 32, it will initiate and work. This appears due to the age of the technology used on these screens. If you work with a different display other than that mentioned in the instructions; you may have other results.
if ((bmpFile = SD.open(filename)) == NULL) {
^~~~
getting this error and SD card isn’t getting initialized. The display is completely plain white in color.
any other alernate code for this.
please help me out
Hello from Athens, Greece
The project works fine but my problem is that i see blue the orange color.
I finished it a long time ago and my channel:YouTube
P
lease search
NANO:
Using ST7735 1.8″ Color TFT Display” SD Card Photo Frame on Arduino(I Love Michael Jackson)
Please search
UNO+2.4 TFT:
Arduino UNO_SD memory card TFT2.4 inches
I drew the newly created shell, transferred it to STL format, and completed it with 3D printing.
I finished it a long time ago and my channel:YouTube
Pease search
NANO:
Using ST7735 1.8″ Color TFT Display” SD Card Photo Frame on Arduino(I Love Michael Jackson)
Please search
UNO+2.4 TFT:
Arduino UNO_SD memory card TFT2.4 inches
I drew the newly created shell, transferred it to STL format, and completed it with 3D printing.