Troubleshooting program changes

I’m having some issues with program changes that I can’t explain. I’ll lay out my scenario and hopefully someone out there knows what I might be doing wrong. Anybody?

I’m attempting to use the Pyramid sequencer in “play” mode so that it plays through a set configuration of sequences to form a song. MIDI is going out on channels 6 (MicroKorg), 7 (TR-8) and 8 (Minitaur) to three different synths. Playback is working fine. Now I’d like to automate program changes, so I don’t have to set up each synth manually in a live situation.

I set a program change on the first track for each part. So the the drum pattern that starts the song is set to PC 06 in the track settings, for example. I can see the drum machine reacting to this change, since I can see it cycling through programs as I set up this field on the track. I assumed this would cause the PC to trigger when this track plays, but it does not seem to do that when the song starts (and it’s the first track that plays in the first sequence). In Seq2, an arpeggio begins on Channel 6, but the PC set with that track also doesn’t trigger. The tracks are all set to Relatch mode, so they play from the start when they come unmuted.

Since setting the Program Changes on the tracks didn’t seem to do anything, I tried doing it in the step editor instead. I created a new bank of tracks that are unmuted in the first sequence (1D, 2D, 3D). Each one is set to a different MIDI channel (6, 7, and 8 again) and I used the step editor to insert a Program Change message on the first step of each track (using Velocity to choose the program number). There is no note information in these tracks. When I play back these tracks, no program changes are sent. Just to be sure, I also set the same program change info in the track settings for each of these tracks. No change.

I then learned that hitting the STOP button 3 times should send out program changes. Here’s another part I can’t explain: this feature works when the SEQ is in “Perform” mode and SEQ1 is selected (the first sequence in the overall song). But when I put the sequencer back into “Play” mode, the feature no longer works.

TL;DR: Hitting the STOP button 3 times to trigger program changes works when the sequencer is in perform mode, but not when it’s in play mode. Program changes set up as events in a track (via the step editor) don’t seem to trigger. Program changes set up in track settings also don’t seem to trigger on their own. How can I make my program changes send out while keeping the sequencer in “Play” mode?

First I’d try to check midi in and out via info screen.
Just one PC.

Second I’d try to play with the length of step of PC and with the velocity. Not sure now, it was about half year ago, but I think I had to figure out sort of velocity and step length for change and velocity between PC and next PC. Use the touch screen for quick mapping. I can dig it out for you if you like.

Thanks for your help! Unfortunately, I don’t see anything in the MIDI OUT settings that would affect program changes (and I’m not sending program changes TO the Pyrmid, so MIDI IN wouldn’t be involved either). In Step Mode, the velocity variable is used to choose the program number, so it’s fixed at that value. It sends this value correctly if the Sequencer is in Perform mode and I hit STOP three times, so the value seems to be correct in the project. For step length, I assume you mean the note-width value, but that can only be changed in Note/Chord step modes (Program changes are under CC messages), so I don’t think that’s a factor. I can make the track itself have fewer steps, but that doesn’t appear to affect anything.

At this point, I’m not even worrying about having mid-song program changes. I’d love to start by just having one set of program changes before a song starts (or in the first seq/track, as I’ve been trying to do). Let me know if you come across any other info that might be relevant. Cheers!

Hey, my input is probably irrelevant: apologies.
I’m terribly pumped up on cold meds right now. heh

In re-reading (and re-re-re-re-reading because again: cold meds) your OP, it seems you are:

  • In the Track Settings for each Track putting in a PC value
  • Also, at the beginning of certain Patterns in these Tracks, also trying to put a Program Change message (via CC section)

I’ve never wondered which would win out in a situation like this.
But if you are doing both, I’d suggest trying to only do one or the other just to see what happens.

That is: use the PC value in the Track Settings (and no PgmChg msgs in the Patterns) -OR- only put in PC values in the Track Settings (using Mute/Unmute different Tracks with different values maybe) of different Tracks with the same destination (ie: Track 3 Destination MIDI CH01A PC 6 for the first bit, then this is Muted and Track 4 Destination MIDI CH01A PC10 for the next bit, etc) -OR- only put the PgmChg as an Entry in the CC data using Step Mode and leave the Track Settings PC value blank.

I’m personally allergic to PgmChg messages during any sequences because I’ve been in the situation where the receiving device doesn’t change programs fast enough to hit the first beat or the first note is a tad behind. Of course, this is probably 80s baggage, but there is no therapy for this. Still. heh My workaround is expensive: buy more synths! LOL (sorry, bad joke) :wink:


Cc automation in step mode. You need to zoom in/out to find the proper length of step. I’ve tried it right now and it worked as I told. Short step won’t change because the next step is also a value=0 so it jumps back to your first sound of your synth (PC=0)

But first first: start to experiment with midi out to see you PC is going out

Second: try two pads with different PC, send it to the same midi ch as suggested by [CreepyPants]. I use that a lot, no issues, easy to remember.

Third: Experiment in step mode (hold step in step display mode and roll to CC, release step and roll to the end, last one is the PC automation /don’t forget the zoom thing/)

Fourth: if you fix the PC at track level by 2nd+track dialing PC with the first knob: save track setting for your project. My experience.

1 Like

It’s the same with the nineties stuff. Buying more synths is excellent therapy though :joy:

1 Like

I bought my luggage in the 80s, but definitely added a few extra pieces and packed a bit more in the 90s: multiple Emu romplers here. :wink:

Emu built the only operating systems i couldnt crash! LOL

Thanks, everyone! That gives me a few more things to try out. I only doubled up the messages because just having it in the track settings didn’t seem to do anything, which led me to add them in step mode as well. I’ll start by removing them from the track settings and seeing if I can get it to work by experimenting more with the step mode approach.

I’m admittedly also still puzzled why the PCs I’ve set so far seem to work fine on a triple-STOP when the sequencer is in Perform mode, but not when it’s in Play mode.

And yeah, the issues with delayed/missed notes are still real. In the past, I’ve used an Alesis MMT8 and a Roland MC-50, but both present similar problems if program changes are sent during critical beats. Even the modern synths I’ve used had a hard time processing them quickly enough to not mess up the timing of other notes. I try to only do mid-song changes if I know that the particular synth receiving it is at “rest”.

FWIW, third stop sending PC’s is a useful piece of information I’d totally missed in the manual (/me makes a mental note to re-read once more…), but sure enough:

a third press will send an All Sound Off MIDI message to silence the synth’s note release instantly. In addition, the third STOP press also sends Program Change messages of active tracks, if set.

Makes me wonder if that “active tracks” is relevant to the different behavior between play and perform modes, but then I wouldn’t count out the possibility of it being simply a bug either.

1 Like