So, I got a request I had never done- a stop/start. These functions are not well described in the library docs, but it all worked out.
Here is the code. I wont bother with the build right now, as it is well described on other posts:
//midi.controller to start/stop
//by @the.nw.enterprise, https://thenorthwestenterprise.com/
//Library Source https://github.com/tttapa/Control-Surface
//Built for Ardruino NANO EVERY
#include <Control_Surface.h> // Include the library
// Instantiate the MIDI over USB interface
//USBDebugMIDI_Interface midi(115200); // uncomment this for serial monitor in ide
HardwareSerialMIDI_Interface midi = {Serial1, MIDI_BAUD}; //uncomment this for 5-pin operation- this sends on TX **may need to rename Serial1 vs Serial
//USBMIDI_Interface midi; // uncomment for native MIDI over USB
//HairlessMIDI_Interface hair (); // uncomment this for Hairless
// Push button connected between pin 2 and ground.
// Note message is sent when pressed.
Button pushbutton4 = {4}; //START
Button pushbutton6 = {6}; //CONTINUE
Button pushbutton8 = {8}; //STOP
void setup() {
pushbutton4.begin(); // enables internal pull-up
pushbutton6.begin(); // enables internal pull-up
pushbutton8.begin(); // enables internal pull-up
midi.begin(); // initialize the MIDI interface
}
void loop() {
midi.update(); // read and handle or discard MIDI input
pushbutton4.update(); // read the button state
if (pushbutton4.getState() == Button::Falling) // if the button is pressed
midi.send(0xFA); // send a message
pushbutton6.update(); // read the button state
if (pushbutton6.getState() == Button::Falling) // if the button is pressed
midi.send(0xFB); // send a message
pushbutton8.update(); // read the button state
if (pushbutton8.getState() == Button::Falling) // if the button is pressed
midi.send(0xFC); // send a message
}