Firmware

MP16-CHORDMAKER-V2

Hype: warming · 69

Custom firmware for the PATS MP-16 — a 16-key, RGB-lit MIDI macropad you assemble yourself. Connect to any DAW, synth, or MIDI device via USB or TRS MIDI.

forPATS AUDIO MP16-CHORDMAKER-V2·by@giusmarci

Get the source

No release files yet. Build from source.

MIT· giusmarci/MP16-CHORDMAKER-V2·downloads come from the creator’s GitHub releases

63 commits and 0 releases in the last year

MP16 Custom Firmware

Alternative MIDI performance firmware for the PATS MP-16, a 16-key, RGB-lit MIDI controller. Each firmware folder is a complete Arduino sketch and can be opened, compiled, and flashed independently.

Built on the original MP16 firmware by Samuel Verburg (@samuelverburg).

Firmware

FirmwareBest forDescription
MP16 ChordMakerDeep chord controlNine chord pads, 26 preset banks, scale mode, advanced arpeggiator, looper, generative mode, and glide mode.
MP16 Hang PanExpressive melodic playingA full 4x4 handpan-inspired grid that moves smoothly from dark to bright and bass to shimmer.
MP16 JamPilotImmediate performance and automatic arrangementsBeginner-friendly chords and notes, genre progressions, MIDI clock and transport, automatic phrases, and performance pitch bend.

These are separate instruments. Flashing one replaces the firmware currently running on the controller; it does not modify the other source folders.

Repository Layout

MP16_Chordmaker/
├── firmware/
│   ├── MP16_Chordmaker/    Full chord workstation
│   ├── MP16_HangPan/       Handpan-inspired mood instrument
│   └── MP16_JamPilot/      Performance and auto-progression instrument
├── CHANGELOG.md
└── README.md

Arduino requires the sketch folder and its main .ino file to have the same name. Keep that pairing intact when copying or renaming a firmware.

Hardware

  • RP2040, nRF52840, or SAMD51 board with TinyUSB and LittleFS support
  • 128x64 SSD1306 OLED at I2C address 0x3C
  • 17 WS2812B NeoPixels
  • 4x4 key matrix, rotary encoder, and Shift button
  • USB MIDI and hardware serial MIDI

The current hardware pin map is shared by all three firmwares:

FunctionPins
NeoPixel strip2
Shift3
Encoder click / A / B6, 7, 8
Matrix columns9, 10, 11, 12
Matrix rows13, 14, 15, 26
Serial MIDI TX / RX0, 1

Installation

  1. Install Arduino IDE and the board package for the controller.
  2. Install the dependencies listed below through Library Manager.
  3. Open the .ino file inside the firmware you want to use.
  4. Select the board and USB TinyUSB stack, then compile and upload.

Dependencies

  • Adafruit TinyUSB
  • Adafruit NeoPixel
  • Adafruit GFX
  • Adafruit SSD1306
  • LittleFS
  • Wire

Development

Keep shared helper files beside the main sketch that owns them. Build output, IDE state, and operating-system metadata are excluded through .gitignore.

Credits

V2 was developed in collaboration with Gianluca Simonelli through iterative hardware jams, interface experiments, and musical prototyping.

License

This project is open source under the MIT License.