i found it! have you considered adding an FFT to your audio analysis? are you going to make it stereo as well? would be cool to paint either side of the disk with each channel. fwiw, i edited my comment below with an interrupt strategy that might help carve out cpu cycles without messing with your animations.
Stereo/dual channel display would be nice. I got 3 MEMS mics in my ebay-basket i once even characerised my old MEMS-mic (ADMP401) in frequenciy (0-25 kHz)- and angular-dependency (+/-90°) so a FFT could deliver a real dbSPL (real delta of airpressure) maybe shown on a oled-display underneith the disk. I need to look into your interrupt routines.. bc i must learn more about them but i'll put this project back on the shelve for a while. But i'm quite happy the POV display now hase a functional purpose. I will comeback to this project, when the new mic's arrive! Still got at least 9 projects (4 quite big) without any documentation and i planed to use some/all of the projects for my curriculum vitae linked through a QR code. But the times are not optimal to find a job (;. I hope you are doing well.
I think i tumbeld upon this, when i built this platform. I'm quite shure i got some inspiration from your post! (; thanks for sharing with the world. Under the disk there is a magnet glued to it including a counter-weight on the other side. A hall effect sensor triggers an interrupt for percise timing.
Back then, I got the idea from Ian Smith's write up, but this was one of the second or third projects where I took a high level idea and made my own implementation from scratch. It's also probably the best job I've ever done documenting anything I've made, lol.
I like the improvements you've mentioned. Can I take a peek at your firmware?
<edit>
nevermind, found it above. if you are interested in an alternative strategy, i ended up using two interrupts: one to time the platter, and a second to fire a timer interrupt per pie slice. the high level platter interrupt adjusts the timer interrupt, which consumes a frame-buffer with page flipping. this way, your user / effect calculations will not interfere with the refresh timing.
shure. i loded it up here. Its my first project were i used an interupt, because i "had to". i need to work on my documentation skill (: