danshop
2020-08-02 17:05:17
Hi,
I’ve been converting a mapping project from Midi-Ox to Bomes MT Pro, but am stuck on something relatively simple.
From a midi controller with 8 accelerated relative encoders, I need each encoder to always be sending 5 different CCs (also with relative and accelerated values) in addition to the original CC.
I’ve managed this for one additional CC but can’t get any more than that to work.
The output for the 5 extra CCs needs to be reversed because using a straight translation makes left turns output right turns and vice-versa.
All 5 additional output CCs need to go to the same virtual port as the original messages (that port being used as an input to my DAW).
I can only currently achieve this for one extra CC – any more than that and the DAW hangs requiring a restart.
My guess is that perhaps there needs to be some micro delay between each CC set, but it could well be that I’m just missing something basic!
I’ve tried various different setups but nothing is working.
The working translation is set up like this (with a value of 0x41 being a left turn and 0x01 being a right turn):
Translator 1 Incoming: Raw midi, B0 pp 01 - Outgoing B0 rr 41
Translator 2 Incoming: Raw midi, B0 pp 41 - Outgoing B0 rr 01
Translator 3 Incoming: Raw midi, B0 pp 02 - Outgoing B0 rr 41 B0 rr 41
Translator 4 Incoming: Raw midi, B0 pp 42 - Outgoing B0 rr 01 B0 rr 01
Translator 5 Incoming: Raw midi, B0 pp 03 - Outgoing B0 rr 41 B0 rr 41 B0 rr 41
Translator 6 Incoming: Raw midi, B0 pp 43 - Outgoing B0 rr 01 B0 rr 01 B0 rr 01
Etc, ending up with 17 translators.
Each translator has the following rules:
if pp <16 exit and skip; if pp >23 exit and skip; rr==pp-8
So the source CCs are 16-23 decimal with the translators acting only on these, and I get an output of those original CCs plus a simultaneous output of CCs 8-15 decimal,
with CCs 8-15 having the full acceleration of the originals and the correct turn orientation.
All good so far.
Now I want the same thing to happen simultaneously for another four sets of 8 CCs.
If I simply repeat the above (so another 17 translators directly after the first 17) with a modified rr value to represent the new CCs, for example rr==pp+40, it crashes.
If I interject the new sets of CCs between the first ones, eg:
Translator 1 Incoming: Raw midi, B0 pp 01 - Outgoing B0 rr 41 (with rr==pp-8)
Translator 2 Incoming: Raw midi, B0 pp 01 - Outgoing B0 rr 41 (with rr==pp+40)
Translator 3 Incoming: Raw midi, B0 pp 41 - Outgoing B0 rr 01 (with rr==pp-8)
Translator 4 Incoming: Raw midi, B0 pp 41 - Outgoing B0 rr 01 (with rr==pp+40)
Etc
It also hangs.
(Note the DAW hangs, not Bomes).
I also tried it using a different local variable for each CC set but this doesn’t fix it which is an expected outcome anyway right, as the variables are local to each translator and shouldn’t affect any following translator?
I also tried it using a different preset for each CC set but this doesn’t work either. I don’t want to go in and manually change all these translators to global variables unless I know for sure that will solve the problem, but unless there’s something I’m completely misunderstanding, that shouldn’t make any difference.
This is driving me crazy, so many thanks in advance for helping me sort this out!!