Hi everyone,
I'm doing a pre-programmed lighting show synced to a video (~1.5h long) with 435 + 448 + 162 WS2812B 5V and 6 5050 12V strips. I'm now running an Arduino Mega but after programming the first 5 minutes I noticed that the flash storage is way too small for the whole show. My current approach is using endless lines of code to "encode" the lighting sequences. To save space I could have stored them as data on an SD to then be ran through an interpreter and displayed, but even though it's not the ideal solution I'm going on with the "endless sketch" approach because it's way easier to implement. I, therefore, want to switch to a Teensy 4.1, which not only gives me all the storage I need but also has way faster processing capabilities which are a plus for what I'm trying to achieve.
I'm completely new to the Teensy platform and I still don't consider myself an advanced user of microcontrollers so I have a few questions about the setup and about some electronics as well.
Thanks!
I'm doing a pre-programmed lighting show synced to a video (~1.5h long) with 435 + 448 + 162 WS2812B 5V and 6 5050 12V strips. I'm now running an Arduino Mega but after programming the first 5 minutes I noticed that the flash storage is way too small for the whole show. My current approach is using endless lines of code to "encode" the lighting sequences. To save space I could have stored them as data on an SD to then be ran through an interpreter and displayed, but even though it's not the ideal solution I'm going on with the "endless sketch" approach because it's way easier to implement. I, therefore, want to switch to a Teensy 4.1, which not only gives me all the storage I need but also has way faster processing capabilities which are a plus for what I'm trying to achieve.
I'm completely new to the Teensy platform and I still don't consider myself an advanced user of microcontrollers so I have a few questions about the setup and about some electronics as well.
- I'm planning to use the Teensyduino IDE. Do you think porting will be easy?
- It looks like Teensy's logic of 3.3V is not good for the WS2812B data lines. I'm planning to use a 74HCT245 like this to step up at 5V. The only difference is that I'll use A2-B2 and A3-B3 too as I have 3 strips.
- I plan to use FastLED together with OctoWS2811 to drive the leds, similar to how is illustrated here. Is this the best approach?
- On the Mega staying in sync with the video required a frame counter based off an RTC as I need ~10ms accuracy over the whole 1,5h show. Briefly, the problem was that the calls to FastLED.show() disabled interrupts and for long strip interfered with the accuracy of millis(). I solved the problem by using the 32K output of a ZS-042 RTC and interrupts to make a timer that increments just 25 times a second (the video frame rate) to time all updates to the lights. Will this kind of solution be needed on the Teensy or the required level of accuracy can be achieved more easily?
- To control the 5050 strips (2 RGB, 4 white) I currently use 10 IRL540N MOSFETs (at 1.5A max each). To comply with the 3.3V logic what should I swap them with if I have to? Also now I have 220Ω resistors between gates and the output pins. Max current on the output pins of the Teensy should be 4mA, so I have to swap them for 1kΩ ones right?
Thanks!