I’ve recently started to learn about and practice with Teensy’s audio library, and their companion shield. The reason that I have gone this route is that the Mozzi library uses lower fidelity DACs that result in too much noise, even though they promise 12 bits. There are just too many artifacts.
I have built a simple drum synthesizer using the amazing audio design tool from PJRC – which you have to check out! https://www.pjrc.com/teensy/gui/
Here is the project I’v built using brass strips as keys – simple on/off but responsive keys to the digital inputs of a Teensy 3.2 digital inputs (4-8).
And here is the input prototype, made from yardsticks, thin hobby plywood and brass strips:
The audio design tool is a simple front end for arduino sketches to enable hooking up audio components/signal processing blocks quickly and integrate into a sketch. Here is the block diagram for this project:
Way cool, isn’t it! Finally, I coded it into the Arduino IDE with a polling mechansim for the 5 switches, and the source file is “sD_tAd_419.ino” and it creates incredible sounds, especially for 5 second note times.