Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Arduino MIDI Library v4.2

Francois Best Franky47 released this · 4 commits to master since this release


  • Fix bug when receiving large SysEx messages - Issue #22
  • Fix Thru bug - Issue #13
  • Removed preprocessor-based settings, replaced by an overridable template-based struct. This allows to change settings without editing the library code.



The default MIDI object has been removed, so you will need to create it using one of the following macros:

For straightforward compatibility with sketches written with v4.1 and older:


To specify which serial port to use:

MIDI_CREATE_INSTANCE(HardwareSerial, Serial2, MIDI);

To override settings - see

struct MySettings : public midi::DefaultSettings
   static const bool UseRunningStatus = false; // Messes with my old equipment!

MIDI_CREATE_CUSTOM_INSTANCE(HardwareSerial, Serial, MIDI, MySettings);

SysEx Callback

The SysEx callback has a new signature:

void handleSysEx(byte* data, unsigned size);

This fixes a bug when receiving SysEx messages larger than 255 bytes.


Something went wrong with that request. Please try again.