Hi there. First post.
I bought midihub to fix a bug in Elektron’s Analog Rytm where they don’t process Program Change immediately. After years of users complaining, they’ve done NOTHING. Totally LAME. Especially since a physical button on their device can immediately switch programs.
It was suggested on Elektronauts that a midi event process could fix this by doing the following:
When receiving a PC, transform it into this specific sequence of events:
Stop, send PC, then Start
That would force the AR Rytm to stop, receive the PC, then Start again from beat 0.
I’ve tried to program a pipeline for the last hour with my midihub and …
I don’t appear to have control over event sequencing.
From MIDI A -> Transform1 PC to Stop and send pass-through -> To Virtual E
From Virtual E -> To USB A.
From Virtual E -> To MIDI A
Midi monitor confirms that an incoming PC transforms to Stop then send PC messages are operating correctly IN ORDER.
Now, as far as I can tell, I need to grab the PC coming out of Transform1 and do something with it.
If I pipe it into another Transform2 block, that doesn’t work because it either sends PC AFTER Start, or it consumes PC and doesn’t send it.
So I’ve got to do stuff in parallel. (I think)
So I create a parallel path:
From MIDI A -> Transform2 PC to PC don’t pass-through -> Transform3 PC to Start don’t pass through -> Virtual A
(remember, the other parallel path is handling converting PC to Stop then PC send)
Transform 2 is - well it SHOULD be acting like a delay pass-through and THEN Transform 3 sends Start.
The resulting message is Stop, Start, PC
I CAN’T GET PC TO COME BEFORE START. For over an hour I’ve created parallel messes trying to get midihub to order a SEQUENCE of events.
There must be some priority code somewhere that is forcing PC to be sent after all messages?
Again it’s frustrating because I’m doing software work that Elektron should do but they are an intransigent company most of the time and they are never going to fix their Analog Rytm PC problem.