The Beats Shield was built up originally on several breadboards, using breakout boards, and a hand-soldered button and LED matrix. One could duplicate this setup fairly easily at home using the KiCad schematic. I used an Adafruit Powerboost 1000c board to develop the power circuitry, and an authentic Teensy audio shield.
The shield was designed to be programmed using the Arduino IDE and standard Teensy tools. This ensures that anyone who can program a Teensy can play with the Beats Shield.
Here are a few of the libraries used:
The audio portions of the firmware were designed in the Teensy Audio Design Tool (https://www.pjrc.com/teensy/gui/index.html). This creates a set of static C code objects representing waveforms, mixers, output devices, etc, and glue code to connect them. On top of that, I've designed "SoundSource" class, which implements polyphonic sound banks of up to 4 simultaneous notes. These can in turn be configured, assigned to channels, and played using an "Instrument" class. I have not added audio effects at this point, but that is something I would like to do in the future.
Is there an update for Teensy 4.1? I'd love to build this project...