Hello.
I am programming an Uno board with hiduino firmware installed for a midi usb controller.
I am using midi monitor on my mac to monitor midi messages send by arduino.
I can send midi notes, programm change, control change without problems.
But when I'm triying to send sysex, something doesn't work.
With the code below, I send F0 7F 01 06 02 F7 but in midi monitor I get two midi messages arriving:
F0 F7
F0 F7
// Include library
#include <Bounce2.h>
#include <MIDI.h>
MIDI_CREATE_DEFAULT_INSTANCE();
#define BUTTON_PIN 2
// Define Sysex
byte data[] = { 0xF0, 0x7F, 0x01, 0x06, 0x02, 0xF7 };
// Instantiate a Bounce object
Bounce debouncer = Bounce();
void setup() {
// Setup the button with an internal pull-up
pinMode(BUTTON_PIN,INPUT_PULLUP);
// After setting up the button, setup the Bounce instance
debouncer.attach(BUTTON_PIN);
debouncer.interval(5); // interval in ms
MIDI.begin();
}
void loop() {
// Update the Bounce instance
debouncer.update();
// Call code if Bounce fell (transition from HIGH to LOW) :
if ( debouncer.fell() ) {
// Send midi
MIDI.sendSysEx(6, data, true);
}
}