* Full support of MIDI specification, for both input and output:
- Channel messages (ok, these were already supported)
- System Common (MTC QuarterFrame, SongPosition, ect)
- System Real Time (All the sync messages : Clock, Start, Stop, Active Sensing ect)
- System Exclusive
* There is a Configuration section at the top of MIDI.h that allows you to tweak a few settings (baudrate, serial port to use, choose to compile only input or output for lighter programs)
* PitchBend can now also be sent/read as a float value, with range -1 to +1 (0 is centered position)
* System Exclusive messages can now be sent with or without the 0xF0 & 0xF7 bytes in the array to be sent.
* The parser now supports Real Time messages interleaved within other messages.
* The message stored in the class (that you can fetch with MIDI.getType, getData1/2 ect) remains available until another one is fully received (and not destroyed at the next call of MIDI.read)
Please note that some modifications might be necessary in your sketches for it to compile properly, as some parts of the API changed. A compatibility file is included in the archive, that links the old names (CC, PC ect) to the new ones (ControlChange, ProgramChange, ect), however this has not been tested.