Switching programs on the pulse 2

@ericd or someone else, could you try this for community, to check if that method works with OT only to change Pulse 2 PC+BANK :

Pattern 1 / Part 1 / Bank Off / Prog Change 1

  • 1 trig on first step with CC32=0, -5/384 microtiming
  • 1 trig on last step with CC32=127

Pattern 2 / Part 2 / Bank Off / Prog Change 2

  • 1 trig on first step with CC32=1, -5/384 microtiming
  • 1 trig on last step with CC32=127

Don’t forget OT doesn’t send similar consecutive CC. It sends it only once, so it makes tests more complicated. That’s why I added a CC32=127 on last step. I’m not sure if it’s necessary after tests.

Here do you mean, in the MIDI set up page , BANK OFF, PROGRAM 1?

1 Like

Yep.

1 Like

It’s very weird. (I turned Prog Ch OFF in the OT midi settings btw)

Start play on pattern 1: Pulse2 plays P102
Change to pattern 2: Pulse 2 plays P103
Change back to pattern 1: Pulse2 plays P002!

It also looks like, when the OT is stopped, and I change the pattern, it’s sending some other message to the pulse. So pattern 1 will start on a different Pulse patch sometimes…

Ok. Maybe Pulse 2 have 100 programs per bank. Ot does send midi messages when you stop / double stop. Try again like this, without CC32=127 last step.

Pattern 1 / Part 1 / Bank Off / Prog Change 1

  • 1 trig on first step with CC32=0, -5/384 microtiming

Pattern 2 / Part 2 / Bank Off / Prog Change 2

  • 1 trig on first step with CC32=1, -5/384 microtiming

Edit : I thought Ot Prog Change min value was 1, but it is 0.

Just before I try that and forget this- If I stop OT playback during pattern 1, then switch to pattern 2 and start play, Pulse will play P003.

I read somewhere that this is true. My earlier tests on the MPC confirmed it. The last bank is for user patches

Doing this by pattern change while OT is playing btw (not stop/start)

Pattern 1: Plays P102
Pattern 2: Plays P103
back to pattern 1: plays P002
Pattern 2, plays P103

and continues the same, P002, P103 etc So if it is already in Bank 2, pattern 1 seems to start playing the patch from that bank. Then when it comes back to pattern 1 after pattern 2, it plays from bank 1. In other words, it wants to start from the last bank it played?

If you don’t send appropriate Bank+Pc messages, it stays in last selected bank, that’s normal.
What surprises me is that with the settings I gave it should be P001 for pattern 1 and P102 for pattern 2.
The first program is P001?

That might be just because OT value 0= Pulse2 program 1?
and cc# 32 value 0 =bank1, cc32 value 1 = bank 2?

If we set program values to 0 and 1 we get your expected programs

2 Likes

OT PC =1 is the lowest value. Did you use that value?

No- the lowest PC value is 0. When I used 0 and 1, rather than 1 and 2, I got your expected programs on the Pulse

1 Like

Ok, my bad. Depending on manufacturers, lowest PC can be 0 or 1. I was pretty sure it was 1 for OT.

So it seems normal.

We have definitely confirmed that program changes work between parts ( I think this was already known).

So I am left with 2 questions:

1- why are we microtiming here in this experiment?
2- if cc#32 changes banks on the Pulse2 , does cc#0 change program? If I send a cc#32 (say on step 4) message then a cc#0 on step 5, shouldn’t I be able to trigger different patches within a pattern? ( I would turn PC OFF in the midi set up page).

In order to send the CC32 message before the PC, which is required.

2- CC0 won’t change any bank or PC, btw I couldn’t find CC0 or CC32 in Pulse 2 CC list. Any link about bank changes update?
You need to send PC anyway.
Not 100% sure, but you also need to send PC to make a bank change effective. Maybe you can try…

With a midi processor, just mapping CC0* to CC32 would simplify all this. Midi Setup settings would suffice.

*OT bank message is CC0.

1 Like

Oh- now I get the microtiming! The PC message is effectively sent ‘on grid’ while the cc message gets sent just before.

I’m not sure where @PeterHanes found the cc#32 but it’s obviously right! (It’s the same on the MPC so I guess it’s standard).
So Program Change messages are different completely from cc messages? At least I know that now :slight_smile:

I guess the feature request for Elektron is to enable p-lock of the program change message?

I have emailed Waldorf asking for an updated list of programs and banks for their presets- the old list misses alot of the new programs and doesn’t tell you what banks they are in.

Thanks so much- I think we gave it a good shot!

1 Like

Maybe here. I’d like an official Warldorf source…

Midi messages you can send with OT (correct me if I’m wrong!) :

Note On*
Control Changes**
Program Changes
Pitchbend (MSB only)
Channel Aftertouch
Transport (Start / Stop)
Midi Clock
…?

*OT Note Off are actually Note On with value 0, like many facturers, but some others use Note Off, which is a different message.

**Bank message is actually a CC0 Control Change.

1 Like

Something @ericd should know if you haven’t figured it out already is that the OT only sends the midi tracks PC when a pattern linked to a new part becomes active. It won’t send it just by muting/unmuting tracks. It will also send out the midi tracks cc’s and pc’c when you double stop. I don’t have my OT for testing but maybe if the tracks are muted the pc won’t be sent, so that’s why whatever track is unmuted upon double stop that’s what the pulse plays… Also as sezare said the OT doesn’t send a cc unless it’s different than the last one sent on that track, to conserve bandwidth…

I don’t know if it will send pc’s just by changing part in a pattern, no OT handy for testing… Might work…

Edit: I guess you figured it out… Oh well, just recapping… :smile:

3 Likes

Yes, mostly (painfully) figured all that out!

What I still don’t understand is why the OT can’t send a new program change message from a second (or third or eighth) track, even if you send a bank change cc before it!! It can only send a PC message on one track per pattern/part- why? I also don’t quite get why this does become possible by using a midi event processor, but it might dawn on me eventually :thinking: