Initially inspired from & based on Arduino code by i2make.
I created 3 different versions of the same Arduino base code. All 3 versions basically does the same thing, but is customized to run on different commonly used boards with different MIDI connections etc.
Common Arduino Library requirements:
Written specifically for ESP32 (only tested on DOIT ESP32 Devkit V1 board) with Bluetooth (BLE) MIDI connection. Requires the Arduino MIDI & BLE-MIDI libraries, which makes this version run a lot smoother due to callbacks etc. The "Boot" button is mapped to toggle between Beats/SMPTE.
For SAMD-based boards with an onboard push button and USB connection for MIDI. Requires the MIDI-USB library.
Customized for the super tiny Adafruit Trinket M0 board with integrated Dotstar™. Uses the Arduino USB Stack and USB Midi Connection, utilizing the MIDI-USB library. Preconfigured with 2 separate MIDI ports/instances, which makes it possible to send/receive MIDI even when port 1 is unavailable1
Footnotes
-
When used as a control surface in the DAW, most DAWs hijacks the first available MIDI port provided by the device. ↩