Program change via midi?

so i’m trying to link up my A4 with a laptop running pure data (Pd). using a USB/MIDI interface, i’m able to sync up my Pd patches to the A4’s clock, and that works fine. now i want to use events in Pd to trigger program changes on the A4. pure data has a [pgmout] object with sends program changes, so i enabled “program change in” on the A4, set the channel to 10, and tried sending program changes from Pd to the A4. it kinda works: when a pattern is playing, and i send a program change to another pattern, the new pattern is “enqueued”, blinking in the A4’s screen, until the pattern loops over. if the pattern is infinite in length (which is typically the case in my workflow), then it never changes over.

how can i make the pattern change over immediately? i’ve read something about sending MIDI notes instead of program changes, but i haven’t gotten this to work: i tried sending MIDI note 60 with full velocity out over channel 10, and nothing happens. what am i missing?

I think you will need a multimap entry for this purpose (Manual p 51 ff).

Unfortunately the A4 has no access to pattern mode if you switched a pattern with pc via track- or autochannel.

Whereas in multimap mode there is a specifiv pattern mode parameter. I haven’t yet try to acces this mode parameter over midi.

you have to change the pattern jump mode. Also, the master lenght fo INF has always been problematic,

another way is to send a stop and a play immediately after the pgm chng. This should also work, but obviously should be done in a more or less quantized way for smoothest results.


hm, I tried this several times and AFAIK MIDI-pc ignores the manual mode setting.

Sending a start-stop-command will indeed cause some timing problems. :grin:

if you’re proficient with Pd, you might be able to come up with a suitable timing solution?

I never knew ext MIDI pgm chng messages ignore the pattern jump mode setting. This is nowehere ideal IMO, and doesn’t make sense to me.

if you want immediate pattern changes, you need to setup the multimap to trigger patterns via MIDI notes on a certain MIDI channel

however you should know that the timing will probably be off when combined with other events happening on the PC… it all depends on your setup and so forth, but I wasnt really able to get it very tight with ableton or other sequencers… it depends on how you sync the MIDI clocks and all that, but yeh - ultimately it was not really good enough for me

give it a shot and play around with it, maybe you will have better luck

im assuming Overbridge was supposed to be a solution for this, but i never had much luck with that either unfortunately

after a while i gave up on trying to combine the PC stuff with the elektron stuff and went back to hardware only when working with the Elektron sequencers… if I need to do stuff with the PC DAW I only use the internal sequencers to record loops here and there or something else that doesnt require the patterns to change

How should that work? Stop the maschine, start a midi-synced counter to calculate the time between two 1/16 steps then start the maschine again? Maybe if the maschine was running it suits Einstein’s law’s: time goes faster on moving object’s…

According to the fact tat multimap entries could be triggerd by internal or external keyboards it should be feasable to trigger that entry by midi note from external.

That’s it, an AR feature request! :slight_smile:

What I meant is that you could program the stop/play commands to occur quantized to the music somehow. Heck, in our jams, we have to re-start machines all the time due to clock drifts or things otherwise getting out of sync, but As long as one does this in time with the music, its surpisingly smooth and doesn’t really trainwreck anything.

Anyhoo, sorry for trying to help

I’m wondering that you accept such drifts, I think there are several solutions to prevent this. Of course a restart solves the problem but when your ears realize the sync shifting it’s too late, imho.

CHG MODE parameter in a multimap might be what you are looking for.

1 Like