Sending MIDI Bank/Program Change on pattern change / start (NOT P-lock)

Hi
I’m trying to integrate my Digitone with the rest of the setup (Moog S37, Novation Peak)
I configured MIDI tracks - all works fine, notes / CCs. / P-locks etc.

One issue I have is Bank/ProgramCh messages - it works as soon as I turn the knob / or send it via P-lock, but I would like to have a scenario where Program change is sent automatically when I enter new pattern.

My use case:

  • I have a song with a starting pattern
  • I would like to store info which PEAK / Moog patch is used by having it embedded in my pattern
  • I would like Digitone to send it to PEAK / Moog as soon I start / enter new pattern (not via P-lock)

Is it even possible? I’m starting to get worried that this is just not the use case that it was designed for.

1 Like

Yes, but there are some details that you would need to address.

The DN, like other Elektron instruments, can send a Program Change (PC) message when switching to another pattern. You can do this by activating PROG CH SEND in the SETTINGS > MIDI CONFIG > MIDI SYNC menu (manual, page 67).

The value of the PC message sent from the DN corresponds to the number of the new pattern. So your patch numbers on the synths would have to reflect your pattern number, which is achievable.

You will only be able to change to a patch in the current bank on the Peak, and you will only be able to change to a preset in the current half (banks 1-8, or banks 9-16) of the S37’s preset banks.

However, PC messages are sent on a specific MIDI channel number so you would have to set both synths to receive on the same channel, which is not helpful if you want to sequence both synths (as opposed to syncing them to the DN).

There are some workarounds:

  • use the S37’s on-board sequencer instead of sequencing from the DN;
  • send PC messages to one synth from one of the DN’s MIDI tracks;
  • use an intermediate MIDI processor device to rechannelize the PC message to be sent to one of the synths.
1 Like

Since you mentioned you’re using MIDI tracks, this approach is what I’d recommend.
This will let you “embed” which Bank / Prog to use for each MIDI track, in each pattern, and it will be sent ~on the first step.
It’s described on page 57 of the manual.

2 Likes

Thank you guys, appreciate fast responses!

That’s the issue - I have it configured (similiarly to the screenshot below) and it works if I turn encoder D, but it is NOT sent automatically upon pattern start / 1st step
I read the manual - and actually it doesn’t stay under what condition PC is sent (automatically / p-lock etc.)

@PeterHanes thank you, I’m aware of your solution but hoped to use MIDI tracks for this. Don’t really like the idea of reorganizing patches on my synths so they match the DT patterns position wise… Would like the other way around - be able to point to specific bank / preset via DN

It should be sent on changing pattern, unless the value is the same as was previously sent from the DN.

1 Like

More info here: Changing patches on external synths - #2 by Roger

1 Like

I was testing by having 2 patterns next to each other - with different PC set and switching them back and forth.
But will re-test again, maybe I missed something

Annoying reminder: make sure both the other synth is set to receive PC (defaults to off sometimes), and Elektron is set to send it.

Thanks, but yes they do - they react to PC sent from DN if I do it manually or via p-lock

1 Like

SOLVED! :slight_smile:

The problem was wrongly set SBNK parameter - I had it set to 1, but for PEAK it needs to have values from 2-5 range (which corresponds to PEAK’s banks A-D)

Why was it working when I was turning encoder D? Because in such case DN sents out just the PC value (without CC 0/32 which changes bank), so it’s properly accepted by PEAK
But as soon it receives the pair (PC + wrongly set bank) it can’t ‘translate’ it properly and ignores it

For Moog S37 I haven’t re-tested yet, but I’m pretty sure I must’ve done something similar there

3 Likes

Slightly related question
Now I began to play with mapping 8 CCs :slight_smile:
Let’s say I mapped one of my encoders to Noise Level on PEAK (CC #27) - it all works fine so far, I can modulate live / or p-lock Noise level on PEAK via DN encoder.

Now - I’m in live record mode, should DN register trigless p-locks if I modulate live Noise level but using PEAK knob (instead of DN)? It doesn’t work like this so far - but I’m afraid it may a deliberate limitation here (I think I read somewhere that it works like this e.g. in Octatrack?)

It ‘semi’ worked for Filter Cutoff - but only because it’s CC #29 on PEAK, I was almost happy when I saw yellow trigs recorded, but then I realized DN recorded it as MIDI LFO Depth change (it’s also CC #29 in DN MIDI implementation)…

As you have found, not in the way that you want. Although the DN (like the DT) allows you to define which MIDI CC messages are sent from the MIDI tracks, it cannot record those chosen MIDI CC messages.

Instead, you have to record MIDI CCs 70-77 (for knobs A-H respectively), as listed in B.7 of the DN manual. In practice, it may be easier for you to make your Noise Level changes using the knob on the DN rather than the original control on the Peak.

Yes, the OT works differently - you can record the ‘actual’ CC message.

Ok, all clear now, thank you!

1 Like

After having trouble getting this to work properly in the past… I decided to try it again, with Midi Monitor up and running so I could see just what is going on.

If I ‘enable’ the bank and PC messages I want on the Midi Source page… and then choose a trig (the first step in the sequence is best) and hold that and highlight the bank and PC by pressing on the encoders… I get the behavior where, the messages are sent ONCE when switching to that pattern from any other.

And that is what my synths like to hear. Some of my synths respond OK, if they receive repeats of the same PC (as in, they ignore repeats), but others will ‘reset’ the patch each time they hear a PC. And you don’t want that when performing.