Hello community I using Arduino Pro Micro for my midi daw controller. Im trying to make lika a presonus faderport controller presonus faderport uses Sysex messages for communication im trying to send sysex messages to Studio One in the guide faderport sysex manual.
Here is the manual and I'm uploading 9bit sysex the code but when i checked with MIDI-OX my Sysex message it seems 6bit and Studio one app doesn't receive MIDI Signal
#include <MIDIUSB.h>
#include <MIDIUSB_Defs.h>
#include <frequencyToNote.h>
#include <pitchToFrequency.h>
#include <pitchToNote.h>
/**
* Example showing how to send and receive MIDI System Exclusive messages.
*
* @boards AVR, AVR USB, Nano Every, Due, Nano 33 IoT, Nano 33 BLE, Pi Pico, Teensy 3.x, ESP32, ESP8266
*/
#include <Control_Surface.h>
// Instantiate the MIDI over USB interface
USBMIDI_Interface midi;
// Custom MIDI callback that prints incoming SysEx messages.
struct MyMIDI_Callbacks : MIDI_Callbacks {
// This callback function is called when a SysEx message is received.
void onSysExMessage(MIDI_Interface &, SysExMessage sysex) override {
// Print the message
Serial << F("Received SysEx message: ") //
<< AH::HexDump(sysex.data, sysex.length) //
<< F(" on cable ") << sysex.cable.getOneBased() << endl;
}
} callback {};
// Push button connected between pin 2 and ground.
// SysEx message is sent when pressed.
Button pushbutton {2};
void setup() {
Serial.begin(115200);
pushbutton.begin(); // enables internal pull-up
midi.begin();
midi.setCallbacks(callback);
}
void loop() {
// Send a SysEx message when the push button is pressed
uint8_t sysex[] {0xF0, 0x00, 0x01, 0x06, 0x02, 0x90, 0x08, 0x00, 0x7F};
if (pushbutton.update() == Button::Falling)
midi.sendSysEx(sysex);
// Read incoming MIDI data and call the callback if a new
// SysEx message has been received.
midi.update();
}