Ongoing project, only fixating the front acrylic screen to the backboard remains. Coding is done and provided here for anybody to use or be inspired by.
Although PixelCircuits Pixel Clock is the awesomest led display i've seen, my project needed to be constrained as I only had available 5m of led strip with 150 pixels. I also wanted to run it from a D1 Mini (ESP8266) which greatly limits the number of pixels I could run. The limit is really the ammount of memory available on the board, as the displayed picture needs to be held in memory, together with animation vectors etc.
Most projects use chambers for each indivdual LED pixel to great effect. I havent figured out yet if I am going to do this or not.
The News Panel reads some weather and news strings saved in Firebase and then displays them with corresponding animations.
A second offsite generic ESP32 periodically connects to internet and reads through news and weather webpages. It then uploads news headlines and weather information to Firebase. This is not a fast process, so thats why it is not handled by the News Display.
Pretty easy to solder the led strips, just takes time. Nothing special comapred to other projects. I used a 5v 10A power supply to power the D1 mini and the Led strip, and a Logic Level Shifter to change the ESP8266 data signal from 3.3v to 5v. I cut up the 5m led strip in 15 x 10 led sections and glued the to a hardboard. Then i drilled holes by the end of strips so that I could feed the jumper cables through.
This project uses the NeoPixel library for controlling individual LEDs and their colors. The font I am using is a customized version of Paul Reed's excellent SirClive font. The main loop runs at 120Hz, and the program uses about 65% of available RAM.
As the ESP8266 is very crash prone because of timings, it was not ideal to develop the animation code on the ESP8266. I therefore wrote the code on a PC (Visual Basic 6) first to get it to where I want it. Then I translated it to Arduino C code.
I am providing my code for inspiration or blatant copy. Any questions, feel free to ask. The code is explained under "Building steps".