MIDI Output Elements
Original: MIDI output elements
Output elements read physical controls and send MIDI messages. They register with Control_Surface on construction and update automatically in the loop() cycle.
Class
Description
Constructor
NoteButton
Note On/Off on press/release
{pin, address}
CCButton
CC 127/0 on press/release
{pin, address}
PCButton
Program Change on press
{pin, address}
NoteButtonLatched
Toggle Note each press
{pin, address}
NoteButtonLatching
Note while held, toggles
{pin, address}
CCButtonLatched
Toggle CC each press
{pin, address}
CCButtonLatching
CC while held, toggles
{pin, address}
NoteChordButton
Multiple notes on press
{pin, address, chord}
Class
Description
NoteButtons<N>
Array of N sequential note buttons
CCButtons<N>
Array of N sequential CC buttons
NoteButtonMatrix<R,C>
Row/column scanned note grid
CCButtonMatrix<R,C>
Row/column scanned CC grid
Potentiometers
Class
Description
CCPotentiometer
Analog input → CC 0-127
PBPotentiometer
Analog input → 14-bit Pitch Bend
CCPotentiometer with map()
Custom mapping to calibrate or apply curves
CCPotentiometer pot { 26 , { MIDI_CC :: Channel_Volume , Channel_1 }};
pot . map ( myMappingFunction );
Encoders
Class
Description
CCRotaryEncoder
Relative CC from quadrature encoder
CCAbsoluteEncoder
Absolute CC position from encoder
PBAbsoluteEncoder
14-bit Pitch Bend from encoder
BorrowedCCRotaryEncoder
Shared encoder reference
CCIncrementDecrementButtons
Two buttons for CC inc/dec
CCRotaryEncoder enc {{ 0 , 1 }, { MIDI_CC :: Pan , Channel_1 }, 1 , 4 };
Constructor: {pin_pair, address, speed_multiplier, pulses_per_click}.
Program changers
Class
Description
ProgramChanger<N>
Selectable list of N program changes
ProgramChanger < 4 > pc {{
{ MIDI_PC :: Harpsichord , Channel_1 },
{ MIDI_PC :: Organ , Channel_1 },
{ MIDI_PC :: Guitar , Channel_1 },
{ MIDI_PC :: Piano , Channel_1 },
}};
No examples available for this platform yet.
← Overview
Overview →