A little Teensy4.1 project I've been working on
I am super proud of how this project is turning out. I still have some tweaks to make, but I finally got full videos playing and wanted to share.
This is a "Persistence of Vision" (PoV) display driven by a Teensy 4.1 and SK9822 LED strips.
There are 4 strips of 32 LEDs, each slightly offset in order give me 128 addressable pixel "rows". So each strip is responsible for every 4th row.
360 pixel "columns" around the perimeter makes for roughly square pixels, so thats what i went with. Each LED is updated 360 times every revolution...at around 1500rpm.
A hall effect sensor at the top of the rotor passes by a stationary magnet in the upper frame once per revolution. The Teensy measures the time between the resulting signals, and uses that to calculate how fast it is spinning, and therefore how fast to update the LEDs. This lets the animation look correct regardless of rotor speed.
I have a (currently very slow) python script that resizes/crops and formats .mp4 files into a binary format that the Teensy can use very efficiently. The resulting binary gets saved to a microSD, that the Teensy can read from.
Im happy to answer any questions. I may do a better build/explanation video if there is enough interest.