MFC won't receive Midi-Channel sysex msg (0x17) or AXEFX2 does not send it.

bossredman

Well-known member
I have a home-made MFC (midi Foot Controller).
It uses a Teensy 3.6 MPC.
It performs most tasks adequately (ie: change Preset/Scene, read Reset name, toggle individual effects on/off etc).

However - I'm trying to get it to detect if the AXEFX 2 is switched on - before it starts running the main Loop of the code.

I thought I could do this by sending the 'get Midi Channel' sysex mgs & then reading the returned channel.
I use a while loop to loop sending the msg until the Channel is read.

Code:
Code:
long MdCh = 1;
while (got_MIDI_CH != true)
{
tft.setFontScale(1);                tft.setCursor(100, 350);
tft.print("Trying to read Midi Channel: ");               tft.print(MdCh);
tft.setCursor(100, 390);
tft.print("Sysex: ");               tft.print(sysex_label);

byte Get_MIDI_CH[8] ={0xF0, 0x00, 0x01, 0x74, 0x03, 0x17, 0x11, 0xF7};
MIDI.sendSysEx(8,Get_MIDI_CH, true);
MIDI.read();
delay(500);

MdCh++;
}

Here's the sysex read code snippet
Code:

Code:
else if (SysExArray[5] == 0x17)
{
sysex_label = "Midi Channel";
sysex_value = SysExArray[6];
sysex_value2 = String(sysex_value);
got_MIDI_CH = true;
}

But - if the AXEFX is ON, but I then switch on the MFC, the AXEFX never sends or the MFC never reads the Channel (or both).
However, if the MFC is ON, but then I switch on AXEFX - it does.


Any ideas pls?
 
Was wondering if anyone knows of anything that would prevent the Midi Channel msg being sent or even blocked?
ie: does something else need to be enabled first or if something else is running this prohibits the channel msg???
 
Unplug MFC > AXE-FX Midi.
Boot up AxeFx then MFC then re-plug Midi, theoretically ruling out the MFC sending spurious stuff during startup confusing AxeFx's read handler.
Not explored AxeFx here but have seen this scenario mess up other gear.
 
Back
Top