I’m still very ill for the moment, but besides working half-time, and spending most of the rest of my time sleeping, I still try to learn some new things 🙂 I got a few RGB LED matrixes for Valentines’ day … (I bought Christel an extra AppleTV to watch Netflix in the bath) Sparkfun & AdaFruit both sell these 32×32 pixels LED matrixes. (so, 1024 LEDs per panel) I currently own 18 of these panels, and my goal will be to connect 60 of them, to form a large display. (320×192 pixels will be almost 2 meters width by 1,20 meters height)
At start, I used one Teensy 3.1+ board, together with one of those LED matrixes.
Next, I made a test with 6 of these panels, connected to 1 teensy board. (good for 96×64 pixels) Currently, I have 3 teensy boards, each controlling 5 panels. (good for a total of 160×96 pixels) During next weekend, I will connect the last 3 panels, so I will have 192×96 pixels. (For my birthday, upcomming in April, I will surely get another 12 or 18 of these panels)
Because everything is “plug-and-play” if you use the TeensyMatrix PCBs, you have your array “up-and-running” in less then 15 minutes !
At first, I wrote a conversion software, creating raw byte-stream files, that could be read of an SD card, 1-on-1 onto the Teensy, passing it directly to the framebuffer of the LED panels. This gave me a 24bits colors – 25 fps – 140 Hz refresh rate. (overclocking the Teensy 3.1+ to 144 Mhz) Due to my health-issues, I can only work on this during weekends, about 2 (max. 4) hours per weekend !
Next, I wrote a dotNET application, so I could stream the images directly to the Teensy 3.1+ boards. (they use USB1.1, so max. 12 mBit – connected to a 10-port USB2.0 hub (480 Mbit) I created 3 separate threads (one for every teensy), keeping them syncronized by sending the last 64 bytes to every teensy syncronously. I “only” get 18 fps, but because of the high refreshrate, this is still acceptable. Also, because of the simultanous threads for every teensy, this will stay the same, framerate will not drop, even not when finally connecting 10 teensys 🙂
It’s very hard to capture those RGB panels on video. In reality the colors are more accurate/colorful. Also, the image on the display is super-stable (120 & 140 Hz !) Because the capture-frequency of the videocamera is close to the refresh-rate of the RGB panel, you get this “bad quality”. You need to believe me on my word that in reality, everything is super fine ! 🙂
Update – march 1st – 2015
I added my last 3 panels (for the moment) I now have 192×96 pixels.
(with 3 Teensys, each teensy controlling 192×32 pixels)
Also, I started writing to the framebuffer directly, instead of using the SmartMatrix API, this increased my framerate a bit 🙂
Today I also ordered 14 extra panels (along with a few extra Teensy 3.1+ boards)
Actually, Christel is paying these, for my upcomming birthday in April ! So, somewhere in April, I will have 256 x 128 pixels 🙂
Some extra movies (with the new 192×96 pixels resolution)
I’m to Sexy – Right said Fred – 192×96 pixels – demo movie
‘Need for Speed’ – Koenigsegg race – 192×96 pixels – demo movie
Update – march 8th – 2015
Last weekend, I started designing my own Truss system. Drawing in Solidworks only took about 2 hours or so. Since then, I started printing the “plates” to hold the bars for this system together. I use 10mm aluminium hollow pipe. Costs about 2.60 euro per 2 meters.
Sure beats the hell out of the 100+ euro per meter some sellers ask for Trusses 🙂
So, after getting the aluminium tubes, I did fit together 3 sections. (did take me about 5 minutes to assemble)
The pieces to 3D print are fairly simple. I uploaded it to Thingiverse, check it out here.
Update – march 15th – 2015
Last night, I finished mounting the first Truss (2 meters) – see picture 3 🙂