Photon 32 x 32 LED and Animated GIFs

Does anyone know of library or instructable that has a walk through of using the RGB Matrix library with a 32x32 RGB LED display to play back animated GIFs?

Thanks, Ande

Have you had a look at these already
RGB Pixel Clock Kit (Maker Faire 2016)
Word Clock kit (Maker Faire 2016)
Maker Faire RGBPongClock

AFAIK in the linked GitHub repo is a demo.
But @peekay123 knows best :wink:

1 Like

thanks, yes I’ve been running sample code from this set. it’s great - but I’m struggling to find the GIF one - maybe I’m just being dumb :slight_smile:

In that GitHub repo I linked above you can find this file

thank you! :slight_smile: I’ll give this a go

@ScruffR, thanks for helping! The repo and files you pointed to are correct. @fablab, do keep in mind, however, that the RGBMatrixPanel library can only do 4096 colors and many GIFs will not appear correctly due to this fact. :wink:

Thanks both. Is there any way of adding all the files from the Animated GIF example in one go - rather than appending individually in the IDE?

@fablab, not sure what you mean. The GIF animator will read and display all valid .gif files in the “/gifs” directory on the SD card.

1 Like

in terms of flashing the firmware into the Photon - is there a simple way to take all the .cpp and .h files into the IDE with a single import. Currently I’m adding file by file

@fablab, unfortunately, not right now. The upcoming updates to the IDE and libraries will make this a lot simpler. In the meantime, I strongly recommend using Particle CLI for compiling and flashing. It allows you to compile files in a local directory using Particle cloud compilers. :wink:

1 Like

ah! thanks goes hunting for CLI tutorials :slight_smile:


@peekay123 I’m seeing this error when I compile the libraries and files from within Particle IDE. Any thoughts, suggestions?

In file included from iostream.cpp:23:0:

istream.h:32:8: error: ‘istream’ does not name a type
inline istream& ws(istream& is) {

istream.h:82:8: error: ‘istream’ does not name a type
inline istream &operator>>(istream &obj, const setfill &arg) {

istream.h:112:8: error: ‘istream’ does not name a type
inline istream &operator>>(istream &is, const setprecision &arg) {

@fablab, sorry for the delay. I suggest that you use Particle CLI to compile the code with all the files being in one directory. From the errors, it sounds like a file is either missing or there was a cut and paste issue when copying files to the IDE.

got it working. it’s very cool!

now to design a heap of funky GIFs

thank you :smile:

1 Like

@peekay123 sorry random question here, I’m trying to incorporate Blynk into the RGB animated GIF demo you created - I’m assuming this would just as simpe as adding the relevant libraries and the Blynk code into the AnimatedGIFs.cpp file? Or am I missing something.

Any pointers would be very much appreciated please.

Thanks, Ande

@fablab, you’re on the right track! The RGBMatrixPanel interrupts can be heavy so it will be interesting to see how Blynk works. Give it a shot and let me know how it goes. :wink:

Hey, is that possible to do that with a 22x22 led matrix ?
I only have 500 RGB led :confused:


The RGB panels have very specific control circuitry built-in for which the mentioned library is tailored.
So while you may be able to find a way to control your 22x22 matrix, this library will not work for that.
However, with 500 individual LEDs you’ll have a job controlling them without a dedicated control circuit and lots of soldering :wink:

1 Like