Im a huge fan of your videos! Could you please make a tutorial with the Beetle ESP32 - C3 and the GC9A01 screen? I think everyone would enjoy that. It is a smaller chip with the same capacity!
I really enjoy your videos. I purchased the various things to do this project and got it to work. I was hung up on uploading the code to the ESP32 but eventually got it figured out. Everything works great. Your videos are always well explained and I look forward to each one. Thank you.
Just discovered your channel and obviously subscribed. Thanks for some REALLY good tutorials! A small tip for you, in Windows Explorer when you are in your Downloads folder or elsewhere, if you just type cmd in the address bar, it will open CMD.exe in that location, so no need to cd your way there.
I was able to get this working on the Seeed XAIO NRF52840. Using the smaller gifs, using .c files. Bigger would blow memory at compile time. For the most part its GPIO pin changes, I also ensured the USE_DMA was unset (slower but worked). I have the XAIO Round Display (same display with touch). It has a built in SD card. I'll be doing a few tweaks to get that going.
Thank you! this is a project saver. I couldn't find a reliable way to display animations on a small OLED display and this is the simplest solution without having to figure out the adafruit library.
Great video and tutorial. I got mine working with your help! Note to others new to this MCU and display - I had to disconnect power to the display to get the script to load.
Tipp: You can load the smallest gifs nostromo, hyperspace and hud_6 together into the memory and play them back one after the other. More gifs, more fun. 😀
I wish you could switch to different animation with a button or a joypad. That would be very powerful. I don't know if it could use alias instead of the name of the gif file
Sir, could you create an animated GIF display with two round screens that can show different animations, where we can change the animations from a smartphone with the ESP32 as the access point?"
@thelastoutpostworkshop thank you for your fast response i am doing a project with a model of the batmobile tumbler and want to add animation displays to it am very new to coding if you can please advise me on how this would be achieved i would really appreciate it if i can have your contact please so i can give you some more information that woukd be awesome
Hi I got into esp32 after watching your video, I'm new to coding...but your videos always entertain me!! thank you!! I wish you happiness always!!! (It's a translator, so please understand if there are errors)
I'm having fun watching the video. I have a question. I would like to edit it based on the shared file, but I am a beginner and have not been able to solve the problem for several days, so I am asking a question. I'm trying to play a gif file, and print time text on it, but it doesn't work. What should I do because the time seems to be going under the gif image?@@thelastoutpostworkshop
You can achieve it in 3 ways : 1. print the text in a zone that is transparent for the GIF or 2. Reprint your text every time a a frame is drawn, but there will be some annoying flicker or 3. Modify the GIFDraw function so no pixels are drawn where the text is, it can be done, but not easily.
exorbitant. result. 1. Print text in empty space > The desired design and text size do not come out... (I am a design destroyer... the design is terrible) 2. Haven't tried it yet. 3. About half of my remaining hair has fallen out. Now let's go try method number 2. I have another question. If I use the code you provided by converting a regular jpeg file rather than a gif file to an h file, is there anything that needs to be modified?@@thelastoutpostworkshop
Very helpful video 👍🏻 Will try this with the Xiao ESP32S3 and the related round display. As a beginner, I wonder how to select the right drivers... sometimes they choice seems overwhelming, and the difference are not obvious.
Great video! I need to load between multiple animations on the fly. How long is the delay between reloading new sequences? I need it to be no more than 1/2 a second. Is this possible with SD? Doesn’t seem so.
@@thelastoutpostworkshop I converted it to 320x170 which is the resolution of the screen I'm using. Model T S3 Lilygo. Perhaps I'm asking too much of this screen.
Hello I can not get any screens to work with my white NodeMCU 32 boards I have tried 3 different Boards and followed every video to the letter and still I get a scrambled screen or black screen when I try yours, Not sure if it is the pin out on the screens or boards, Please help.
If you are not using the round screen GC9A01, then you will have to select the proper driver in the TFT_eSPI library and adjust SPI pins according to your screen specifications
@thelastoutpostworkshop thank you, for helping I have tried all the help videos, I bought the round ones to see if it might be the NodeMCU32 the pins have a P1 instead of D1 etc.
Look at the push button tutorial: th-cam.com/video/omUWkUqFYrQ/w-d-xo.html, it shows how to play animated gif on-demand, you can use the same principle to show animated gif on certain times using timestamps
This tutorial is wonderful, thank you for making it so easy to follow! Really eager to try this out myself. Out of curiousity, I'd like to use the ESP32 and a 2" 240x320 display playing a gif on a loop, how big of a file can that microprocessor handle? I have a 1min long, 30fps gif that clocks in at around 30MB, and would have only that single one running, could it handle that?
No it can't, 30MB is way too large, My advice is to play with the optimization of ezgif.com/resize to bring it down in size at 20FPS. I am currently working on a new video with the ESP32-S3-N16R2 which has 8MB of PSRAM.
GC9A01-driven round displays can be powered using portable power packs, ideally those with output voltages of 3.3V or 5V and capable of supplying a few hundred milliamperes. Lithium-ion or lithium-polymer USB power packs with voltage adjustment capabilities and built-in protection features like overcurrent and short-circuit protection are recommended for their safety and energy efficiency.
Yes it is possible but reading from the SD card is slow so when playing a GIF, another task could read the next GIF from the SD Card to be ready to be played
Salut Charles. J'ai deux questions. 1. Dans le schéma de l'écran de Aliexpress, tu le branches dans le 3 volts, mais en regardant la vidéo, je vois que tu le branche, avec le lecteur SD, dans le 5 volts. Je vois bien que ça fonctionne, mais est-ce judicieux même si les specs de mon écran dit 3 volts ? Ou bien je met le lecteur sur 5v et l'écran sur 3v ? J'ai fini le montage des connections, mais c'est juste pour être certain avant de le brancher. 2. Pour convertir les gifs tu utilises Command Prompt sur Windows, mais sur Mac sais-tu si j'utilises si ça peut se faire et naturellement les commandes ne seront pas pareils ? Je vais probablement utiliser la méthode de la carte SD, mais j'aimerais savoir quand même si je réussis à faire mes propres gifs. 😉
L'écran supporte 3.3v ou 5V mais pas le lecteur SD, il fonctionne seulement sur 5V. Pour le command prompt il y a une version Mac sur le site mais je ne l'ai pas essayé
Hi wonderful tutorial, how can I do it on my 240*240 1.3inch st7789 display? It would be quite interesting and popular as the display doesn't have that much documentation
Bonjour ! I managed to make everything work perferctly with you tutorial, Thanks a lot !! I'm now looking for a solution to display multiple GIF one after the other. I guess the only way is to use the SD card solution right ? Can you please give me some help on the modification i need to do to the code ? I also have a Raspberry Zero w board, should i switch to this one to save me some of the few hair i have left ? Merci beaucoup !
Thank you so much for your answer, i saw this part but i did;nt see anything about the change in the code to be able to read GIF one after the other automatically Can you help please ? Thanks again @@thelastoutpostworkshop
I used the same code ... thankfully But the problem arises due to my display is st7735 of 160*128 The animations are not filling in screen Please help sir..❤
Excellent Video. now I have the arduino nano every + Whaveshare GC9A01 display that u used in previous videos. It is connected and tested as the previous video. However, when i try to verify it appears an error. I change the driver and everything but still having the issue. Do you know if there is a special consideration while using this set up?
@@thelastoutpostworkshop on "Create a Star Wars Tactical Display with a the Round Display!" you used a arduino nano. but when I keep the same confg and I try to run a gif exactly how you mention it didn't work. is there something missing when using the arduino nano to run the gif?
Yes you can adapt it for non round display, you will have to make sure you have enough memory if your screen is large and select the correct driver for the TFT_eSPI library. Make sure first your display is compatible with this library.
I am really struggling. this is the board I have. what should I write in arduino ide? ESP32 Development Board with 2.8inch LCD Arduino LVGL WIFI&Bluetooth 240*320 Smart Display Screen TFT Module With Touch WROOM@@thelastoutpostworkshop
It depends on the size of the GIF, if the GIF are a bit over 1MB, 2 will fit on a 4MB flash memory, or more if you have an ESP32 with more flash memory
@@thelastoutpostworkshop hello dear friend, again thanks for such wonderful video. May you please send me "nostromo" raw program, so I can change the text on it?
This works perfectly. I’m having such trouble getting it to read off of a SD card. Do u have a video on how a gif can be read off of a sad card. Apparently it can’t read hexadecimal .h files directly from the sd card? Ummm wait. I am just seeing it at the end of this video. Lemme try that first. Once I got the screens working I stopped lol
I have not tested it, but I am pretty sure it will work, all ESP32 have the same architecture. The main function used in this project is the SPI bus, and I have not encountered any esp32 dev board that does not have it
Hi, i have an issue where the serial monitor will spit out "SD card initialization failed" then repeat "Failed to open GIF file from SPIFFS!" over and over again, i triple checked the connections and verified they're properly connected with a multimeter, the sd card was formated and i used the same sd card reader module you used, any advise?
I have a same trouble, it appears “SD card initialization failed” first, i used sd-test-code example to test sd card reader module, it workings well but in this project it not working
Hi, I have exactly the same type of screen but integrated directly on an esp32 aliexpress card, the esp32 dev module, and I can't hide the fact that I don't have many elements that allow me to know how it works in its entirety, the little I do have is the rather vague diagram on how they assigned the pins between the lcd and the board, and I've also noticed that it's stupid to divert the “official” ports for SPI management, including the initial outputs, and so I'm stuck because the “DC” screen output goes to the SPIMISO IO8 bus as they indicate. and in the “tft espi” settings file I have either DC or MISO, so I'm very doubtful
and I think I've seen on the research I've done to document myself that the SPIMISO port is deactivated and that it's DC that replaces it as described in the file here's the view according to their indication on the attached diagram Esp32 C3 1U GPIO OUT GC09A1 LCD IN 3,3V VCC OR IO8====LED+ ,VDD SPIMISO IO2====D/C SPICS IO10====CS SPICLK IO6====SCL SPIMOSI IO7====SDA TP_RST IO1====TP_RST TP_SCL IO5====TP_SCL TP_SDA IO4====TP_SDA TP_INT IO0====TP_INT
Take a look at this new tutorial, where a push button is used to alternate between GIF, you will be able to adapt it th-cam.com/video/omUWkUqFYrQ/w-d-xo.html
merci pour cette vidéo !! je travaille en ce moment sur un projet avec un écran et une carte sd justement et ça m'aide beaucoup. Mais leproblème c'est que j'aurais aussi besoin d'images. y'aurait un moyen de vous contacter pour en parler ? en tout cas génial la vidéo !!
quand je téléverse le programme , j'ai une erreur qui s'affiche " Compilation error ' NUM_EYES' was not declared in this scope . Quelqu’un a une idée? Merci à l'avance
I've tried everything and nothing is showing up on mine :/ I have the pin definitions correct and everything. I'm using an arduino nano esp32 with the same GC90A1 you have in the video and nothing is working
Could you do the same tutorial but adding a rechargeable lithium battery and a couple of buttons to change a gif to the next and the previous one? thank you very much it's amazing
Yes I could do that, I have another video using a button, but no rechargeable battery, if you want to take a look at it : th-cam.com/video/zBzIBRsckTw/w-d-xo.html
Do you know anything about the built-in SD card on ESP 32. I’ve been trying to modify your code with the SD_MMH but it’s not working. Any tips? The MP3 player SD card tutorial helps a bit, but I’m keep getting errors and I mean I’m super new. For me at this point it’s following a tutorial letter for letter basically lol
@@thelastoutpostworkshop yea. My audio tutorial for my esp32 with built in sd uses different setup and different library when accessing the sd card for music. Tomorrow my gpt resets so it should be able to help me. So frustrating tho. It’s the SD_MMC.h. Esp32 wrover. I know it’s a simple fix (hopefully) but I just got the kit and blown away with what we can do. I was making ‘choose your own adventures’ in turbo pascal way back, that’s the last time I looked at code. Do u have discord.
The Arduino IDE 2 has very peculiar behavior, try copying the folder of the project in your documents/Arduino folder, you should be able to see it in the sketchbook. Make sure you have the '"show files inside Sketches" checked in Files > preferences
thanks again mate, i figured out the "A fatal error occurred: Packet content transfer stopped (received 8 bytes)" error, just remove pin 2 while you're uploading the code then plug it back in once its uploaded then reset the esp32 and hey presto!
Is it possible to stop the gif after it starts playing? I ask this, because the Loop event stops working if there is a gif running, and I would like to change the current gif as soon as a button is pressed
while the GIF is playing, you can check if the button is pressed, exit the while loop and change the gif being played : void loop() { if (gif.open((uint8_t *)GIF_IMAGE, sizeof(GIF_IMAGE), GIFDraw)) { Serial.printf("Successfully opened GIF; Canvas size = %d x %d ", gif.getCanvasWidth(), gif.getCanvasHeight()); tft.startWrite(); while (gif.playFrame(true, NULL)) { // Check if button is pressed yield(); } gif.close(); tft.endWrite(); } }
Dear friend, thanks for your wonderful video. I already tried without memory card reader and it was sucessfull. The problem is when I tried to make it with memory reader. I have checked all connections twice but i got the following message : SD card initialization... SD card initialization failed! Failed to open GIF file from SPIFFS! any suggestion for this? Thanks in advance
The code seems to take the first defined image and display it. I'm looking to have a button press switch between two animated gifs. I'm not sure how I change which GIF line #52 opens Any thoughts?
Great content again. If at all possible could you offer a how to video combing this display with the mp3 player starwars sound fonts connected to a PIR sensor ( sensor activates the display and the music ) ? Thanks again for these videos
Hi, If i need to show many gifs. I copy 1 gif from SD card and saves to Flash memeory but i need to do it for evey 5 min. Flash may get corrupt after a week. So best option will be to read gif from SD card and directly show them on TFT withoud saving in Flash. Or to get it from WiFi and show directly on TFT. Could you please provide any sample code for this
If you read it directly from the SD card, the speed of the GIF will decrease and not be smooth. I have been running GIF from flash for almost 18 months now on certain project and it never failed. To get it from Wifi is a good undertaking, I will consider it for a future video.
First of all amazing video, it's the only tutorial I've seen that explains it clearly and slowly. In the second part where I load gif from the sd I get the following error on the serial monitor:Failed to open GIF file from SPIFFS! But the first part works perfectly thank you very much for the excellent video ❤❤❤❤
i have a problem while connecting sd card module and says [ 76652][E][vfs_api.cpp:23] open(): File system is not mounted Failed to open GIF file from SPIFFS!
@@thelastoutpostworkshop yes it s works fine, curently im ordering again the sd card module other version. and i used 64gb of sd card . does it supported??
Hello. Very nice job ! It works perfectly on ESP32 Dev Module but it doesn't work with a ESP32-C3 mini. Of course, i changed the pins: #define TFT_MOSI 6 #define TFT_SCLK 9 #define TFT_CS 0 #define TFT_DC 2 #define TFT_RST 4 but it doesn't work at all. Do you have any idea ? Thanks.
In the "User_Setup.h" you uncomment this line : //#define ST7789_DRIVER // Full configuration option, define additional parameters below for this display In the "User_Setup_Select.h" you un comment this line : // #include // Setup file for ESP32 and TTGO T-Display ST7789V SPI bus TFT This diplay wiring is different, the pins are : TFT_MOSI 19 TFT_SCLK 18 TFT_CS 5 TFT_DC 16 TFT_RST 23
@@thelastoutpostworkshop Hello again!, so my display has arrived and it has the pins mentioned except for the MOSI. I have a pin named "SDA", is that pin typically the MOSI pin? Im really new to these displays stuff.
When i try to upload, it comes with this: Compilation error: 'animated_240_240' was not declared in this scope. How can I fix this? This is for the file that is the gif (#define GIF_IMAGE animated_240_240) not the gif converted to c
hi Brother, thank you for all the videos. very helpful. problem with the sd card way. it wont work what so ever. i triple checked everything and the wring but no luck, not loading. i even changed my sd card and no luck. the load is uploading okaay but the screen is nt displaying the gif. the first way with the memory way work fine thanks but the sd isnt. i noticed you didnt replay the people that left you comments about having problems with the sd! i dont think u have a solution or else you wouldv helped! can you help me out! i need this for another project im working on with eyes to incorporate with cars since im a car mechanic. i need your opinion and advice on that project im working on, its related to the 128 tft display and esp32. can you give me n email or tiktok so we can communicate better please'?
Hello, take a look at this issue on the repository of the code : github.com/thelastoutpostworkshop/animated_gif_sdcard_spiffs/issues/5, if it do not work, please open a new issue, it will be easier to help you there
Im a huge fan of your videos! Could you please make a tutorial with the Beetle ESP32 - C3 and the GC9A01 screen? I think everyone would enjoy that. It is a smaller chip with the same capacity!
it's added to my bucket list, lets see the number of likes it will get
I'd toss in the seeed xaio nrf52840 and their esp32.
I really enjoy your videos. I purchased the various things to do this project and got it to work. I was hung up on uploading the code to the ESP32 but eventually got it figured out. Everything works great. Your videos are always well explained and I look forward to each one. Thank you.
Thanks a lot for your feedback!
Just discovered your channel and obviously subscribed. Thanks for some REALLY good tutorials!
A small tip for you, in Windows Explorer when you are in your Downloads folder or elsewhere, if you just type cmd in the address bar, it will open CMD.exe in that location, so no need to cd your way there.
Thank you for making the complex simple.
Congradulations on this video.This was the most well orginized one for an amature. works like a charm!
You're a great teacher.Finally got it going with the gif.
I was able to get this working on the Seeed XAIO NRF52840. Using the smaller gifs, using .c files. Bigger would blow memory at compile time. For the most part its GPIO pin changes, I also ensured the USE_DMA was unset (slower but worked). I have the XAIO Round Display (same display with touch). It has a built in SD card. I'll be doing a few tweaks to get that going.
One of the best tutorials. Thanx a lot!
Great tutorial! Works very well (first way with partition)
very detailed tutorial, thank you a lot, mate! hope you could post more videos like this!
worked like a charm. only hang up was getting sketch to load on ESP32 , i had to disconnect the VCC (power to the display) to get it to load
thank you for this video! can we add an option to change them via the phone?
yes, you could add a web server in your code with a simple web interface to change the GIF
Great, you deserve more subscribers.
Thanks a lot!
thanks for education. how to connect with two tft with same animation?
Look at this other video : th-cam.com/video/0YEKLuVf1E4/w-d-xo.html
Thank you! this is a project saver. I couldn't find a reliable way to display animations on a small OLED display and this is the simplest solution without having to figure out the adafruit library.
Great video and tutorial. I got mine working with your help! Note to others new to this MCU and display - I had to disconnect power to the display to get the script to load.
Thank you for the animated GIFs
These videos are wonderful! Thank you!
Thank you very much ! AAA class tutorials here ! great job
Hi.. Great tutorial.. I would like to ask what should I do for the driver part if I want to use seeeduino xiao?
Good question, never tried it, I am not sure the TFT_eSPI library is compatible with it.
@@thelastoutpostworkshop I guess memory is not enough for gif anyway. I ll try with esp32-C3 instead.
Tipp: You can load the smallest gifs nostromo, hyperspace and hud_6 together into the memory and play them back one after the other. More gifs, more fun. 😀
How you do that please ?
@@NA-rh7iyif you have done what was shown in the video and it's working, I'm sure you can figure this out
I wish you could switch to different animation with a button or a joypad. That would be very powerful. I don't know if it could use alias instead of the name of the gif file
Thanks so much. I used it to
Make my own gif. Appreciate the tutorial.
Sir, could you create an animated GIF display with two round screens that can show different animations, where we can change the animations from a smartphone with the ESP32 as the access point?"
Gresy video thank you can you use on a square display instead on round
Absolutely, you can use a square display
@thelastoutpostworkshop thank you for your fast response i am doing a project with a model of the batmobile tumbler and want to add animation displays to it am very new to coding if you can please advise me on how this would be achieved i would really appreciate it if i can have your contact please so i can give you some more information that woukd be awesome
If you could please let me know which square display will work would it be any colour tft display
any square display as long as it is an SPI (Serial Peripheral Interface) like this one : amzn.to/424J6DR
Ok thanks for your reply i will give it a try and see if i can add my own gif files thank you once again for your help
Hi, great vid man but can you us the round display on its own without the esp32?
Hello, excellent video, it helped me a lot but I would like to know if you have a video explaining how to switch between gifs with a button
thank you thank you thank you, i've done, after watch you'r video, I've been looking for more than 1 week
amazing video and frame work , I want to be able to load 2 or 3 gifs and exchange them from time to time , is it possible to do with your library ?
Yes you can do it
I love your channel😊❤❤
Hi I got into esp32 after watching your video, I'm new to coding...but your videos always entertain me!! thank you!! I wish you happiness always!!! (It's a translator, so please understand if there are errors)
Thank you very much
I'm having fun watching the video. I have a question. I would like to edit it based on the shared file, but I am a beginner and have not been able to solve the problem for several days, so I am asking a question. I'm trying to play a gif file, and print time text on it, but it doesn't work. What should I do because the time seems to be going under the gif image?@@thelastoutpostworkshop
You can achieve it in 3 ways : 1. print the text in a zone that is transparent for the GIF or 2. Reprint your text every time a a frame is drawn, but there will be some annoying flicker or 3. Modify the GIFDraw function so no pixels are drawn where the text is, it can be done, but not easily.
exorbitant. result.
1. Print text in empty space > The desired design and text size do not come out... (I am a design destroyer... the design is terrible)
2. Haven't tried it yet.
3. About half of my remaining hair has fallen out.
Now let's go try method number 2.
I have another question. If I use the code you provided by converting a regular jpeg file rather than a gif file to an h file, is there anything that needs to be modified?@@thelastoutpostworkshop
The code provided works only with GIF files
Very helpful video 👍🏻
Will try this with the Xiao ESP32S3 and the related round display.
As a beginner, I wonder how to select the right drivers... sometimes they choice seems overwhelming, and the difference are not obvious.
I recommend using the TFT_eSPI library, you can follow my tutorial here : th-cam.com/video/mqSe_uMpxIs/w-d-xo.html
Great video! I need to load between multiple animations on the fly. How long is the delay between reloading new sequences? I need it to be no more than 1/2 a second. Is this possible with SD? Doesn’t seem so.
I do not remember the load time but it is slow, maybe some SD module on the market are faster.
@@thelastoutpostworkshop Thanks for that information. Could any be that fast, faster than 1/2 a second?
I really do not know
I use midjourney and luma and ezgif to get crazy gifs.
I just found you, this it the exact thing that i need, thank you
Images to C seems to crush the Bit making the colours look bad. Any way to keep the quality of the gif high?
Before converting with image to C, did you first use ezgif.com/video-to-gif to resize it to 240x240 pixels ?
@@thelastoutpostworkshop I converted it to 320x170 which is the resolution of the screen I'm using. Model T S3 Lilygo. Perhaps I'm asking too much of this screen.
How many colors can it display ?
Hello I can not get any screens to work with my white NodeMCU 32 boards I have tried 3 different Boards and followed every video to the letter and still I get a scrambled screen or black screen when I try yours, Not sure if it is the pin out on the screens or boards, Please help.
Please provide the URL to your screen model and also the URL to your NodeMCU board
@@thelastoutpostworkshop I have bought many different screens
If you are not using the round screen GC9A01, then you will have to select the proper driver in the TFT_eSPI library and adjust SPI pins according to your screen specifications
@thelastoutpostworkshop thank you, for helping I have tried all the help videos, I bought the round ones to see if it might be the NodeMCU32 the pins have a P1 instead of D1 etc.
Great video mate! Thank you! How do I get my arduino ide to look like yours?
I use the "Dark" Theme with a font size of 14
I want to change the GIF image every once in a while, how can I help, I want to learn about it.
Look at the push button tutorial: th-cam.com/video/omUWkUqFYrQ/w-d-xo.html, it shows how to play animated gif on-demand, you can use the same principle to show animated gif on certain times using timestamps
This tutorial is wonderful, thank you for making it so easy to follow! Really eager to try this out myself.
Out of curiousity, I'd like to use the ESP32 and a 2" 240x320 display playing a gif on a loop, how big of a file can that microprocessor handle? I have a 1min long, 30fps gif that clocks in at around 30MB, and would have only that single one running, could it handle that?
No it can't, 30MB is way too large, My advice is to play with the optimization of ezgif.com/resize to bring it down in size at 20FPS. I am currently working on a new video with the ESP32-S3-N16R2 which has 8MB of PSRAM.
Can these be used with a portable power pack? And if so what kind? Many thanks
GC9A01-driven round displays can be powered using portable power packs, ideally those with output voltages of 3.3V or 5V and capable of supplying a few hundred milliamperes. Lithium-ion or lithium-polymer USB power packs with voltage adjustment capabilities and built-in protection features like overcurrent and short-circuit protection are recommended for their safety and energy efficiency.
Really good tutorial. I managed to run it with no problem. Do you know if it is possible to stream an mp4 file?
Yes it is possible, that's a good idea for a future video
@@thelastoutpostworkshop Thanks. Waiting for a possible, next tutorial.
Another excellent video, Charles. With the SD card method, is it possible to play multiple GIFs in sequence (in a loop)? Thanks.
Yes it is possible but reading from the SD card is slow so when playing a GIF, another task could read the next GIF from the SD Card to be ready to be played
Can you tell us how to do that ?@@thelastoutpostworkshop
Salut Charles. J'ai deux questions. 1. Dans le schéma de l'écran de Aliexpress, tu le branches dans le 3 volts, mais en regardant la vidéo, je vois que tu le branche, avec le lecteur SD, dans le 5 volts. Je vois bien que ça fonctionne, mais est-ce judicieux même si les specs de mon écran dit 3 volts ? Ou bien je met le lecteur sur 5v et l'écran sur 3v ? J'ai fini le montage des connections, mais c'est juste pour être certain avant de le brancher. 2. Pour convertir les gifs tu utilises Command Prompt sur Windows, mais sur Mac sais-tu si j'utilises si ça peut se faire et naturellement les commandes ne seront pas pareils ? Je vais probablement utiliser la méthode de la carte SD, mais j'aimerais savoir quand même si je réussis à faire mes propres gifs. 😉
L'écran supporte 3.3v ou 5V mais pas le lecteur SD, il fonctionne seulement sur 5V. Pour le command prompt il y a une version Mac sur le site mais je ne l'ai pas essayé
Merci@@thelastoutpostworkshop
Hi wonderful tutorial, how can I do it on my 240*240 1.3inch st7789 display? It would be quite interesting and popular as the display doesn't have that much documentation
Stay tune to my channel, I am going to release a video not for the st7789 but for a similar model and the code will be very easy to adapt
thanks, i was looking for a tutorial about gifs !
Bonjour !
I managed to make everything work perferctly with you tutorial, Thanks a lot !!
I'm now looking for a solution to display multiple GIF one after the other. I guess the only way is to use the SD card solution right ?
Can you please give me some help on the modification i need to do to the code ?
I also have a Raspberry Zero w board, should i switch to this one to save me some of the few hair i have left ?
Merci beaucoup !
Yes if you need to play many gifs in sequence, this chapter in the video th-cam.com/video/mqSe_uMpxIs/w-d-xo.html, covers SD card
Thank you so much for your answer, i saw this part but i did;nt see anything about the change in the code to be able to read GIF one after the other automatically
Can you help please ? Thanks again @@thelastoutpostworkshop
hello..
can the display show input from the camera module..?
Which one ?
@@thelastoutpostworkshop round display..
Which camera module ?
@@thelastoutpostworkshop ov camera module or similar..
Great job! How to make animated .gif loop once? Thanks
you just have to animate it outside the loop function
Are you able to add a switch to change the gifs through the SD card?
yes look at this video: th-cam.com/video/zBzIBRsckTw/w-d-xo.html
Thank you so much!
why is there no chip select in the code? where can i change the chip select?
It is define in your driver setup for the TFT_eSPI
I used the same code ... thankfully
But the problem arises due to my display is st7735 of 160*128
The animations are not filling in screen
Please help sir..❤
The GIF are 240x240 pixels, you can resize them by following the part where I show the GIF tools
when using the sd card is there any way to make it load the gif faster?
SD card module is slow, I do not think it can load faster
Hello, i have a question, the screen arduino, it can the animation work without those cables? :(
do I have a link to the said screen ?
Excellent Video. now I have the arduino nano every + Whaveshare GC9A01 display that u used in previous videos. It is connected and tested as the previous video. However, when i try to verify it appears an error. I change the driver and everything but still having the issue. Do you know if there is a special consideration while using this set up?
Thank you! I am not sure what video you are referring to by "the previous video".
@@thelastoutpostworkshop on "Create a Star Wars Tactical Display with a the Round Display!" you used a arduino nano. but when I keep the same confg and I try to run a gif exactly how you mention it didn't work. is there something missing when using the arduino nano to run the gif?
can this be installed on a motorbike?
Why to buy cheap and larger displays please
will it play our project after all work is done without sd card if we power the esp32 board with power bank?
Yes using the memory method
can i use this for non round displays? esp32? thanks I'm completely new
Yes you can adapt it for non round display, you will have to make sure you have enough memory if your screen is large and select the correct driver for the TFT_eSPI library. Make sure first your display is compatible with this library.
I am really struggling. this is the board I have. what should I write in arduino ide?
ESP32 Development Board with 2.8inch LCD Arduino LVGL WIFI&Bluetooth 240*320 Smart Display Screen TFT Module With Touch WROOM@@thelastoutpostworkshop
how many images can it support? without a memory reader
It depends on the size of the GIF, if the GIF are a bit over 1MB, 2 will fit on a 4MB flash memory, or more if you have an ESP32 with more flash memory
@@thelastoutpostworkshop hello dear friend, again thanks for such wonderful video. May you please send me "nostromo" raw program, so I can change the text on it?
uhh i have this error Compilation error: images/hyperspace.h: No such file or directory
Please open an issue in the repository : github.com/thelastoutpostworkshop/AnimatedGIF340_240
This works perfectly. I’m having such trouble getting it to read off of a SD card. Do u have a video on how a gif can be read off of a sad card. Apparently it can’t read hexadecimal .h files directly from the sd card? Ummm wait. I am just seeing it at the end of this video. Lemme try that first. Once I got the screens working I stopped lol
Você poderia fazer um vídeo instalando esse monitor em uma câmera para ver se ela captura a imagem da câmera nela desde já agradeço pela atenção
I’m curious, will this work on an esp32 dev kit A? I have a bunch of them and would like to use them.
I have not tested it, but I am pretty sure it will work, all ESP32 have the same architecture. The main function used in this project is the SPI bus, and I have not encountered any esp32 dev board that does not have it
will this run on a uno mega ? I tried it but got a error
No it will not work, the Uno has not enough memory
mate! Urgent help! The code in this video is totally different from the previous video, and I can't find the code for the second screen.
If you mean the code for the two eyes display, it's here : github.com/thelastoutpostworkshop/ESP32LCDRound240x240Eyes
@@thelastoutpostworkshop Brother, this tutorial does not allow you to make and upload GIFs yourself!
esp32 can square screen work?
Yes you only have to use the right display driver
Hi, i have an issue where the serial monitor will spit out "SD card initialization failed" then repeat "Failed to open GIF file from SPIFFS!" over and over again, i triple checked the connections and verified they're properly connected with a multimeter, the sd card was formated and i used the same sd card reader module you used, any advise?
Make sure the SD Card Reader VCC pin is connected to the 5V pin on the ESP32 or the VIN pin
Turns out the SD card reader module was faulty, it works great now!
I have a same trouble, it appears “SD card initialization failed” first, i used sd-test-code example to test sd card reader module, it workings well but in this project it not working
Same for me i try to fixed since 2 day but don t get it
Is it possible to mirror a laptop screen to this round display?
Yes I have seen people doing it, but I have not tried it.
@@thelastoutpostworkshop Awesome. I would love to try this for a car gauge pod.
Hi, I have exactly the same type of screen but integrated directly on an esp32 aliexpress card, the esp32 dev module, and I can't hide the fact that I don't have many elements that allow me to know how it works in its entirety, the little I do have is the rather vague diagram on how they assigned the pins between the lcd and the board, and I've also noticed that it's stupid to divert the “official” ports for SPI management, including the initial outputs, and so I'm stuck because the “DC” screen output goes to the SPIMISO IO8 bus as they indicate.
and in the “tft espi” settings file I have either DC or MISO, so I'm very doubtful
and I think I've seen on the research I've done to document myself that the SPIMISO port is deactivated and that it's DC that replaces it as described in the file here's the view according to their indication on the attached diagram
Esp32 C3 1U GPIO OUT GC09A1 LCD IN
3,3V VCC OR IO8====LED+ ,VDD
SPIMISO IO2====D/C
SPICS IO10====CS
SPICLK IO6====SCL
SPIMOSI IO7====SDA
TP_RST IO1====TP_RST
TP_SCL IO5====TP_SCL
TP_SDA IO4====TP_SDA
TP_INT IO0====TP_INT
Vous n''avez pas d'exemple de code qui vient avec pour la faire fonctionner ?
I uncommented 2 gifs in this code and only one plays on a loop. Is there a way to make it play one and then another?
Take a look at this new tutorial, where a push button is used to alternate between GIF, you will be able to adapt it
th-cam.com/video/omUWkUqFYrQ/w-d-xo.html
Olá amigo eu consigo instalar esse monitor em uma mini câmera bala
merci pour cette vidéo !! je travaille en ce moment sur un projet avec un écran et une carte sd justement et ça m'aide beaucoup. Mais leproblème c'est que j'aurais aussi besoin d'images. y'aurait un moyen de vous contacter pour en parler ? en tout cas génial la vidéo !!
Great video. Very thorough and easy to understand. Thank you for posting it.
quand je téléverse le programme , j'ai une erreur qui s'affiche " Compilation error ' NUM_EYES' was not declared in this scope . Quelqu’un a une idée? Merci à l'avance
ouvrez un "'issue" ici : github.com/thelastoutpostworkshop/ESP32LCDRound240x240Eyes
I've tried everything and nothing is showing up on mine :/ I have the pin definitions correct and everything. I'm using an arduino nano esp32 with the same GC90A1 you have in the video and nothing is working
it's probably your TFT_espi configuration or you wiring, Recheck the configuration and wiring,
Could you do the same tutorial but adding a rechargeable lithium battery and a couple of buttons to change a gif to the next and the previous one? thank you very much it's amazing
Yes I could do that, I have another video using a button, but no rechargeable battery, if you want to take a look at it : th-cam.com/video/zBzIBRsckTw/w-d-xo.html
Do you know anything about the built-in SD card on ESP 32. I’ve been trying to modify your code with the SD_MMH but it’s not working. Any tips?
The MP3 player SD card tutorial helps a bit, but I’m keep getting errors and I mean I’m super new. For me at this point it’s following a tutorial letter for letter basically lol
You followed the part in the video regarding the SD card and it's not working ?
@@thelastoutpostworkshop yea. My audio tutorial for my esp32 with built in sd uses different setup and different library when accessing the sd card for music. Tomorrow my gpt resets so it should be able to help me. So frustrating tho.
It’s the SD_MMC.h. Esp32 wrover.
I know it’s a simple fix (hopefully) but I just got the kit and blown away with what we can do. I was making ‘choose your own adventures’ in turbo pascal way back, that’s the last time I looked at code. Do u have discord.
AT MINUTE 11.55 THIS FOLDER DOES NOT APPEAR FOR ME UNDER THE BOARD MANAGER FOLDER, CAN YOU TELL ME WHY
which folder ? at 11:55 we see the code
@@thelastoutpostworkshop I'm talking about the folder where you edit the gifs, it's not showing up on mine, please help me
@@thelastoutpostworkshopminute 12:00 up there with the name open editors, this part does not appear in my IDE
The Arduino IDE 2 has very peculiar behavior, try copying the folder of the project in your documents/Arduino folder, you should be able to see it in the sketchbook. Make sure you have the '"show files inside Sketches" checked in Files > preferences
@@thelastoutpostworkshop GOOD MORNING, THANK YOU I'LL TRY NOW AGAIN
hi, thanks for this tutorial,very useful. but when i click , shows the "no definintion found for User_Setup_Select.h?
Did you add the TFT_eSPI library ?
@@thelastoutpostworkshop yes, i do added the TFT_eSPI library. clicked can lead me to the definition, but can not
@@thelastoutpostworkshop is there any other way to find and modify it?
i'm error sir....Failed to open GIF file from SPIFFS!
same problem here
did you solve it?
@ not yet sir🤣
thanks again mate, i figured out the "A fatal error occurred: Packet content transfer stopped (received 8 bytes)" error, just remove pin 2 while you're uploading the code then plug it back in once its uploaded then reset the esp32 and hey presto!
Pin 2 must be at 0V during flash
Is it possible to stop the gif after it starts playing? I ask this, because the Loop event stops working if there is a gif running, and I would like to change the current gif as soon as a button is pressed
while the GIF is playing, you can check if the button is pressed, exit the while loop and change the gif being played :
void loop()
{
if (gif.open((uint8_t *)GIF_IMAGE, sizeof(GIF_IMAGE), GIFDraw))
{
Serial.printf("Successfully opened GIF; Canvas size = %d x %d
", gif.getCanvasWidth(), gif.getCanvasHeight());
tft.startWrite();
while (gif.playFrame(true, NULL))
{
// Check if button is pressed
yield();
}
gif.close();
tft.endWrite();
}
}
@@thelastoutpostworkshop Thanks a lot 😇
can we able to change colour of an eye? EX: RED??
You have to change the GIF to that
老哥,sd卡版本可以上传很多动画?设定依次播放吗?求助
Yes you can store a lot of animations on an SD card and play them sequentially
@@thelastoutpostworkshop 那如果使用按键,应该添加什么代码?按键使用哪个接口?谢谢!
How much current does this display consume?
Around 40ma
Dear friend, thanks for your wonderful video. I already tried without memory card reader and it was sucessfull. The problem is when I tried to make it with memory reader. I have checked all connections twice but i got the following message : SD card initialization...
SD card initialization failed!
Failed to open GIF file from SPIFFS!
any suggestion for this? Thanks in advance
try reversing the TX and RX line
@@thelastoutpostworkshop what you mean ? may you please be more specific
If your TX pin is 9 and RX pin is 10, reverse your wiring so TX becomes 10 and RX 9
Same for me did you fin a solution ?
@@Zayn.Al-Din no yet
The code seems to take the first defined image and display it. I'm looking to have a button press switch between two animated gifs. I'm not sure how I change which GIF line #52 opens
Any thoughts?
You can definitely change the code to do that
Hola!! estoy intendando hacer lo mismo, de casualidad lo lograste? Cuando quiero hacer eso me aparece que la capacidad de mi esp32 fue sobrepasada
Great content again. If at all possible could you offer a how to video combing this display with the mp3 player starwars sound fonts connected to a PIR sensor ( sensor activates the display and the music ) ?
Thanks again for these videos
Very good idea! I have added it to my list
Hi,
If i need to show many gifs. I copy 1 gif from SD card and saves to Flash memeory but i need to do it for evey 5 min. Flash may get corrupt after a week. So best option will be to read gif from SD card and directly show them on TFT withoud saving in Flash. Or to get it from WiFi and show directly on TFT. Could you please provide any sample code for this
If you read it directly from the SD card, the speed of the GIF will decrease and not be smooth. I have been running GIF from flash for almost 18 months now on certain project and it never failed. To get it from Wifi is a good undertaking, I will consider it for a future video.
First of all amazing video, it's the only tutorial I've seen that explains it clearly and slowly.
In the second part where I load gif from the sd I get the following error on the serial monitor:Failed to open GIF file from SPIFFS!
But the first part works perfectly
thank you very much for the excellent video ❤❤❤❤
hello! did you solved this problem?
@@ozjidoon I haven't been able to fix it yet, sorry
@@nayuki_cosplay now I try it too..
@@nayuki_cosplay please write your full name of plate esp? I try on “esp32 dev kit v 1 wroom 32”
i met same problem. did you solved this?
i have a problem while connecting sd card module and says
[ 76652][E][vfs_api.cpp:23] open(): File system is not mounted
Failed to open GIF file from SPIFFS!
Did you modify the code ?
@@thelastoutpostworkshop already but looks my tft screen its broken and blank . i use esp32 devkit v1 defined cs pin to 12
Does it work when using the memory version of the code ?
@@thelastoutpostworkshop yes it s works fine, curently im ordering again the sd card module other version. and i used 64gb of sd card . does it supported??
No, like it's mentioned in the video the max supported is 32GB, rewatch it because it must be formatted properly
107 / 5.000
Greetings from Brazil!! Your videos are very good, could you teach how to connect the GC9A1 screen to the Esp32 - C3?
Hello. Very nice job ! It works perfectly on ESP32 Dev Module but it doesn't work with a ESP32-C3 mini.
Of course, i changed the pins:
#define TFT_MOSI 6
#define TFT_SCLK 9
#define TFT_CS 0
#define TFT_DC 2
#define TFT_RST 4
but it doesn't work at all. Do you have any idea ?
Thanks.
My first guess is your using a pin that is reserved for the ESP32-C3 mini, have you double check the pinout information ?
st7789 240x240 240x320
BLK --> not connected
DC --> Pin 8
RES --> Pin 10
SDA --> Pin 6
SCL --> Pin 4
VCC --> 3V3
GND --> GND
change fileTFT_eSPI/Processors/TFT_eSPI_ESP32_C3.h
#define SPI_PORT SPI2_HOST
to
#if ESP_ARDUINO_VERSION_MAJOR < 3
#define SPI_PORT SPI2_HOST
#else
#define SPI_PORT 2
#endif
Hi mate can you help me i have LILYGO T-RGB 2.8 i am trying to use gifs but not success
Hello! I have some concerns if I am to use a TTGO T-display which has a st7789v display. In the User_Setup.h, which one do I uncomment?
In the "User_Setup.h" you uncomment this line :
//#define ST7789_DRIVER // Full configuration option, define additional parameters below for this display
In the "User_Setup_Select.h" you un comment this line :
// #include // Setup file for ESP32 and TTGO T-Display ST7789V SPI bus TFT
This diplay wiring is different, the pins are :
TFT_MOSI 19
TFT_SCLK 18
TFT_CS 5
TFT_DC 16
TFT_RST 23
@@thelastoutpostworkshop Thank you! will try when my parts arrive!
@@thelastoutpostworkshop Hello again!, so my display has arrived and it has the pins mentioned except for the MOSI. I have a pin named "SDA", is that pin typically the MOSI pin? Im really new to these displays stuff.
When i try to upload, it comes with this:
Compilation error: 'animated_240_240' was not declared in this scope.
How can I fix this? This is for the file that is the gif (#define GIF_IMAGE animated_240_240) not the gif converted to c
keep getting exit status 1
Compilation error: exit status 1, when trying to verify code
hi Brother, thank you for all the videos. very helpful. problem with the sd card way. it wont work what so ever. i triple checked everything and the wring but no luck, not loading. i even changed my sd card and no luck. the load is uploading okaay but the screen is nt displaying the gif. the first way with the memory way work fine thanks but the sd isnt. i noticed you didnt replay the people that left you comments about having problems with the sd! i dont think u have a solution or else you wouldv helped! can you help me out! i need this for another project im working on with eyes to incorporate with cars since im a car mechanic. i need your opinion and advice on that project im working on, its related to the 128 tft display and esp32. can you give me n email or tiktok so we can communicate better please'?
Hello, take a look at this issue on the repository of the code : github.com/thelastoutpostworkshop/animated_gif_sdcard_spiffs/issues/5, if it do not work, please open a new issue, it will be easier to help you there
is it touchscreen
No