Repeater MidiHub problem

Hi there,
Funny thing but I cannot bring the repater to work in my patch.
I understood that you had to place a clock to work with.
The trouble is with 2 virtual midi ports.
The patch is simple :
The MidiHub is connected to a gear using to midi channels on the same midi Port ( Midi A CH1/CH2).
The master KBD is playing on Midi 1 only.
The repeater is sent on Channel 1 along with the thru note.
The arp created is sent to Channel 2.

I’ve placed a clock in a row with virtual A, transmitting to VA and VB, then the repeater in the VB row, but it doesn’t work…

( If I create one clock for each virtual port, it doubles the clock sent by midi out. If I put it on the Midi a to Midi A row, the clock isn’t seen by the repeater. If I double the clock in a special row to V2, it doubles the tempo sent to Midi OUT. If I put a clock in the repeater row, it doubles the tempo too. ).

Any idea and help would be appraciated :slight_smile:!

ScreenPatch :
Sans titre|690x388

Ended up with creating one new row : VA to VB. Then I used From VB in the Repeater row to Midi A.
Have I missed an important point or more logical way of build this pipe?
Selecting different midi and virtual ports in a single row from midi clock seemed convenient, though…

Hey, the Clock pipe outputs the sync messages towards the right. The ‘Use Virtual A’ parameter allows the Clock pipe, which is always the leftmost pipe in a pipeline, to still listen to ‘Start’, ‘Stop’ and ‘Song Position Pointer’ input messages.

See the documentation of Clock pipe for the more detailed description.

So yes, you have to forward the clock through the virtual ports as necessary. You can dedicate one virtual pipeline just to send the sync tempo, or just use the filter pipe to filter out everything but clock messages and possibly start/stop ones.

Thanks :slight_smile:
So you mean that the multiple choice for the midi clock is the channel repeater listens from, but not the channel it sends the midi clock to?
So, we have to create the path from the virtual channel put in the same row than the midi clock in order to be able to use the midi clock with other virtual channel?

Yes, something like that. :slight_smile: To avoid confusion with MIDI channels (there is 16 of them, and they apply only to channel MIDI messages (note, CC, Program Change, etc…). Start, Stop, Clock and many more MIDI messages are not based on channels), we just say MIDI Input A, USB Input D, Virtual Input F, etc…, and same for the Outputs. We call the entire horizontal line a pipeline, and a single icon a pipe. So to share a single Clock with multiple outputs, you have to route the Clock pipe into a virtual output, and then use same letter virtual inputs to forward the sync to the necessary destinations.

1 Like

Ok, but ( and sorry for being loud ), don’t you have then a problem of tempo doubling? I mean, tempo of the MidiHub is ok, but midi clock sent to midi out doubles ( 120bpm in MIdiHub pipes, 240 on the destination gear… ) for each virtual port created…

Exemple :

You should take care not to duplicate the tempo messages by correctly managing the virtual buses, say dedicate only one letter for tempo, the other letters for other kinds of data. Or if you must, place filter pipes that’d filter out the duplicate messages from the stream before going to the output.

1 Like

Yep, but if I want to use, let’s say one pipe with arp and another pipe with repeater, either on same midi channel or not ; I have to create one different “virtual from” for each pipe, in that case each new pipe doubles the tempo midi out… whatever I try, it ends the same way…

1 Like

Use the filter pipe after arp or note repeater to solve this.


Yep, good idea. I’ve only tried a divider so far. That didn’t work. :+1:

1 Like