MIDI Commands not correct

Hello All,

For my first project, I am trying to create a MIDI foot-switch that send Program Change to my Line 6 HX Stomp.
I am trying to reproduce a project described here

When submitting a simple Program Change, the Adruino seems to send something completely random.
To illustrate the issue, here is the code I used

#include <MIDI.h>
#include <midi_Defs.h>
#include <midi_Message.h>
#include <midi_Namespace.h>
#include <midi_Settings.h>


struct MySettings : public midi::DefaultSettings
{
  static const long BaudRate = 31250;
};
MIDI_CREATE_CUSTOM_INSTANCE(HardwareSerial, Serial, MIDI, MySettings);


const int channel = 1; //MIDI Channel 1 for sending 


void setup() {
  MIDI.begin(1);

  
}

void loop() {

  for (int i = 1; i <= 20; i ++) {
    MIDI.sendProgramChange(i,channel);
   
    MIDI.sendControlChange(0,0,1); // not sure why this is needed...:( 
    delay(1000);                               
    
  }
}

With this code, I was expecting to have my Hx Stomp cycling through to the program 1 to 20
Instead, here is the MIDI code send to the device.

19:53:06.662	From HX Stomp	Note Off	13	C-2	0
19:53:08.641	From HX Stomp	Pitch Wheel	13	-8192
19:53:12.471	From HX Stomp	Channel Pressure	13	0
19:53:13.470	From HX Stomp	Channel Pressure	5	0
19:53:14.468	From HX Stomp	Program	13	1
19:53:15.466	From HX Stomp	Program	5	1
19:53:24.452	From HX Stomp	Note Off	5	C-2	124
19:53:25.450	From HX Stomp	Note Off	5	C-2	116
19:53:26.449	From HX Stomp	Note Off	5	C-2	108
19:53:27.447	From HX Stomp	Note Off	5	C-2	100
19:53:28.445	From HX Stomp	Note Off	5	C-2	92
19:53:32.439	From HX Stomp	Channel Pressure	13	0
19:53:33.438	From HX Stomp	Channel Pressure	5	0
19:53:34.436	From HX Stomp	Program	13	1
19:53:35.435	From HX Stomp	Program	5	1
19:53:44.420	From HX Stomp	Note Off	5	C-2	124
19:53:45.418	From HX Stomp	Note Off	5	C-2	116
19:53:46.417	From HX Stomp	Note Off	5	C-2	108
19:53:47.415	From HX Stomp	Note Off	5	C-2	100
19:53:48.414	From HX Stomp	Note Off	5	C-2	92
19:53:52.408	From HX Stomp	Channel Pressure	13	0
19:53:53.406	From HX Stomp	Channel Pressure	5	0
19:53:54.405	From HX Stomp	Program	13	1
19:53:55.403	From HX Stomp	Program	5	1
19:54:04.388	From HX Stomp	Note Off	5	C-2	124
19:54:05.387	From HX Stomp	Note Off	5	C-2	116
19:54:06.385	From HX Stomp	Note Off	5	C-2	108
19:54:07.384	From HX Stomp	Note Off	5	C-2	100
19:54:08.382	From HX Stomp	Note Off	5	C-2	92
19:54:12.376	From HX Stomp	Channel Pressure	13	0
19:54:13.375	From HX Stomp	Channel Pressure	5	0
19:54:14.373	From HX Stomp	Program	13	1
19:54:15.371	From HX Stomp	Program	5	1
19:54:24.357	From HX Stomp	Note Off	5	C-2	124
19:54:25.356	From HX Stomp	Note Off	5	C-2	116
19:54:26.353	From HX Stomp	Note Off	5	C-2	108
19:54:27.352	From HX Stomp	Note Off	5	C-2	100
19:54:28.350	From HX Stomp	Note Off	5	C-2	92
19:54:32.344	From HX Stomp	Channel Pressure	13	0
19:54:33.343	From HX Stomp	Channel Pressure	5	0

I check my devise using a keyboard to switch the channel (all is good on that side), check the MIDI cable (ok too).
I tried the same code with a Nano and Mega (got the same results)

Any idea what could cause this behavior?

Thank you

Cant see a giant flaw.

But I just did this project. Code is attached here:
https://forum.arduino.cc/index.php?topic=695485.msg4679583#msg4679583

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.