Ontario : Triggering very bright lights using Arduino

Sync clock... a means of deferring a complex command, then ensuring all the nodes fire simultaneously. Only necessary if you use the distributed cpu model.

  1. Every strike occurs at a moment in time, you need to track this so you can calculate the decay over time ‘after the event’. This will become the PWM value sent to the driver for te associated channels.***

e.g. an array of structs for each input - for event timing, and another array of structs for each output - to keep track of of the current pwm value and ramp speed.

*** This adds another possible twist.
You may like to map different outputs to different input events at different times during the performance... e.g. bass drum fires all outputs, not just the bass LEDs, or at other times, it fires some other combination of LEDs...
If you had a twin kit, you could animate ‘rotating wheel’ effects across the twins’. (just fun!). RGB adds a whole nother dimension!