Channel Rotation

Here is a solution for implementing a channel rotation scheme. For example, it is useful if you have a multi-channel monophonic synthesizer which you want to play polyphonic. So the solution is similar to how MPE devices spread messages on different channels to achieve per note control.

However, here, Program Change, CC, and pitch bend messages are sent on/duplicated to all channels.

What it does: Every note that is coming in (on channel 1) will be sent out on a rotating channel. So the first Note On is passed on to Channel 1, the second Note On is sent on Channel 2, and so on.

Note Off messages are matched to the respective channel. For that, each playing note is remembered on which channel it is playing.

It works for up to 16 channels. You can set the maximum channels/polyphony in the variable gp (for global polyphony) in the Init translator in the Init preset. The default here is 8 channels.

If you exceed the given polyphony, note stealing is implemented by sending Note Off to the oldest note still playing.

CC's, pitch bend, and program change messages are duplicated to all outgoing channels.

For general setup, please see the tutorial Set up Bome MIDI Translator Pro as a MIDI filter.

This project file can be used on the BomeBox, too! For assistance how to set it up, see the tutorial Create MIDI Translator Mapping for the BomeBox.

Feel free to comment here, thanks!


Attachments:
1537369901117_ChannelRotation.bmtp

The ChannelRotation preset is used in LoopOp’s tutorial 16 Advanced Elektron Dikitakt Ideas for making it a polyphonic synth. For that to work, please use the project file attached to this answer.
It also filters out CC#120, which can crash the Digitakt otherwise (pressing Stop button twice).


Attachments:
1538043027591_ChannelRotationDigitakt.bmtp

Hello Florian !

Thank you a lot for sharing this, it’s funny that you worked on an elektron digitakt version because I’m interested in Bome for it’s grand mother : The Elektron Machinedrum uwmk2.

The midi implementation is pretty different on the Machinedrum, notes cannot be chromatically played (without Bome :)) and channels are separated in 4 part.

I resolved the how to play chromatically certain machines, preparing note per note, gate per gate, but now I would like to be able to play in a polyphonic rotation…

I would like to have like : 8 rotation tracks, so 4 on chan 3 and 4 on Chan 4, each one responding to it’s own note and to the rotating CC accordingly.

I hope you can help me.

Maybe you have a solution for that ?

 

Thank you a lot.

 

Hi, first of all thanks for your great job!! It is so very helpful! I can t understand How to make the rotation only in the 4 to 8 channels, i know how to reduce the global poliphony number but i can t day what channels Have to be used. Any help? Thank you all again!!

Hi, if you can be more specific on incoming notes and required outgoing actions, I can probably help. Right now, I’m not sure if the incoming notes are coming in on same channel or different channels and the rotation you would like for outgoing actions.

Hi, all the notes come from channel 1, and i want to spread them from 4 to 8 and then rotate. Maybe i Have found the answer. When the variabile ga reaches the gp it has to be = 4,right?

Hi, yes, you will need to increment the channel number each time a note comes in and send the new note to the new channel. When the channel reaches the highest number you reset the channel number back to the lowest.

You will also need to capture the last note-on number so that you can turn off the old note when playing the new note or you will get stuck notes.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

The attached is probably pretty close to what you want as it will also send last note off when you send a new note.

 

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz


Attachments:
1605915738844_Rotate-MIDI-Channels-2020-11-20.bmtp

Hello Steve,

I’m trying to use this translator Project for rotating channels on the Syntakt.
Note on works fine. but the note off messages do not work properly as soon, as I hold multiple notes together. (I think the channel rotates on and the note off messages when I release some keys will be on different channels. It’s hard to describe for me.

Is there a way to fix this?

Thank you very much
Michael

Hi,

I believe the current implementation tracks which notes are pressed and changes channels as they are released so that if you hold more than one note down at a given time, it might be confusing as to which channel to release the note. In other words, it is currently set up for incoming monophonic only.

I believe it might be able to be done, however would be more complex to set up and likely beyond the scope of support here. You would need a way to evaluate which channel each note was sent on to ensure when you release the note, it gets sent to the right MIDI channel. I believe right now it is just set up to send note-off to the last channel a note was played.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

I’ve done some informal testing of this project with a Digitone (four channels) and it seemed to work fine with four-note chords.

Could I use this project to play an Elektron Syntakt polyphonically similar to these videos?
How to play the Elektron Syntakt as a Polyphonic Synthesizer using Max for Live
Elektron Syntakt: How to play it polyphonically?

You should be able to. Just set your Digitone so that each voice receives on a different MIDI channel (1-4). Set the variable gp to 4 since you want 4 channel polyphony.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Hi there. I have a problem with polyphony. Floria said:

It works for up to 16 channels. You can set the maximum channels/polyphony in the variable gp (for global polyphony) in the Init translator in the Init preset. The default here is 8 channels.

But when I set the gp variable to 6 - the preset still uses all 8 Midi channels, nothing is changed. Is there another parameter I should change to achieve 6-notes polyphony (6 midi channels) instead of 8?

Maybe it’s because I use trial version of the Bome MIDI Translator Pro? I’m ready to buy the license but I need to be sure that I can change the max polyphony parameter.

Best,
Chris

Ah yes,
I added this line at the top of translator 0.0 rule.

gp=15

then I changed this rule:

if gt>4 then gt=0

to this

if gt>gp then gt=0

Now it should work.
Rotate-MIDI-Channels-2024-11-02.bmtp (1.7 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Ok I’ve purchased the Midi Translator Pro and now I can modify the preset. It works! Thank you!

Yes, the trial version of Bome MIDI Translator Pro does not generate a signing key so if you make modifications to any project file, it will not run on BomeBox. The reason the first one worked is because it was unmodified, it used my signing key. Once you modified it the signing key was invalidated by the trial version of Bome MIDI Translator Pro .

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Hi Steve

Thank you for the info. I’ve purchased the software and now everything works fine :slight_smile:

I have another question: I want to control my Allen & Heath QU-SB mixer with my Midi Controler Akai MidiMix via BomeBox.

  1. I’ve connected Bome to the QU-SB via ethernet (router > ethernet cable > Bome Box eth in > Bome Box eth out > ethernet cable > A&H QU-SB eth in).

  2. In the BomeBox Web Config I can see the QU-SB in ‘Allen & Heath’ settings section. I’ve enabled it.

  3. Next I connected my Akai MidiMix to the Bome Box via USB cable. I can see that Bome receives the midi data from my MidiMix (the indicator is flashing when I turn the faders and knobs). But I can’t see the Midi Out indicator to be active (not flashing). Should I do anything else? Are the IP adresses important here if I use the ethernet cables and my internet connection?

  4. In the Akai MidiMix software I need to set the Midi Channels and CC numbers to the specific faders and knobs. Do you have any A&H Midi Implementation chart with CC numbers for audio channels, sends etc?

Best,

Chris

This tutorial shows how to make a basic connection with the Allen&Heath QU mixer.

Your QU Mixer for the most part requires NRPN commands. So you will need to create translators to translate from CC or note to NRPN.

Here is a link to their command set.

You can search on this forum and perhaps see some examples. If not, get back to me and I can show an example for free. Or if you want me to build something for you, I’m available for paid consulting. Just PM or email me if interested.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

A post was split to a new topic: MidiMix to Allen and Heath QU