Inaccurate Midi Clock When Passing Through Midihub?

Hey everyone,

I recently purchased a Midihub as a utility midi device, mainly to reroute midi note numbers from an mpc2000xl to a digitakt.

I’d like to have the MPC send midi note and midi clock, start, and stop information to the Digitakt. This was all working fine minus the note numbers when going straight from one device to the other.

However when I pass through the Midihub, the note numbers are mapped correctly, but sending any midi clock from the MPC causes the Digitakt clock to max out at 300 bpm.

I understand that I could probably send midi clock from the Midihub, but this would mean I would have to change / reconfigure presets every time I want to change the BPM.

Any ideas?


1 Like

From the image above, you are NOT filtering out Clock? its not selected at all…

could be “classic mismatch” between what is Middle C, C4 or C3?? try a transpose pipe (lower one octave) after Note Remap…


Sorry, maybe I wasn’t clear.

I was able to successfully remap the Note Numbers.

The problem I’m having now is that my devices are no longer in sync. Whenever I send Midi Clock from the MPC, my Digitakt will only play at 300 bpm.

Some important planning needs to be made, when dealing with tempo sync:

  • only 1 (device) can be Master
  • all others must be Slave
    *“patch” (use pipes accordingly)

This sounds like a MIDI loop.

Yea it definitely does seem like a loop, but I’m running from MPC -> Midihub -> Digitakt so I’m not sure how that’s possible?

Can you post your MH preset to better evaluate?

It’s entirely possible to create a loop within Midihub.

My patch is 10 note remap pipes. 9 of them look like the picture, and the last is slightly different to send the remaining note numbers through.

Thank you guys for the help btw!

Instead of a screenshot, Save the preset and upload it in a post, so I can build on it :wink:

But you have to decide WHO is Master and all others SLAVE AND configure the MPC, DIgitakt and MH accordingly.

Oh good move haha,

MidiNoteRerouteA.mhp (378 Bytes)

I’ve set the MPC as the Master and DT as the slave. They sync fine without the Midihub, so maybe it’s a patch issue or some sort of loop within the Midihub like pmatilai suggested.

Thanks for the midi clock filter trick!

The filters are crucial in this setup. :slight_smile: It’s actually not looping the same data, but making duplicate events, including clock.

When you do many FROM A … TO A, all of the messages that are not filtered out get duplicated. In your case, only the notes are taken care of, as the Note Remap pipe does some filtering on its own. Instead, you should try and filter out as much data as possible before forwarding to the output.

See the attached edited preset to see how to go about it. :slight_smile:

MidiNoteRerouteA_edited.mhp (919 Bytes)

Btw, I’ve also simplified it a bit - I noticed that you’re remapping notes 60-68 to 0-8. This can be done using a single Note Remap pipe, using these values for In Low, In High and Out Low, Out High.


Always learning something new :wink:


What is the order of operations in this patch? Do the top two rows process before the rest below them?

Once an event arrives at the MIDI IN A port, the FROM A port gets immediately processed by all FROM A ports in its entirety, including all of the virtual pipelines, until it reaches all the outputs. Then the next incoming event is processed, starting from appropriate input pipes. The order is not guaranteed and should not be depended on. You should generally assume that for each incoming event, the pipelines are processed in parallel until they reach the end(s).

1 Like

Good to know. Thank you very much!

1 Like

Ah that makes a lot of sense, things are working perfect now!

I wrote a patch that’s a little easier for me to conceptualize in case anyone is interested:

MidiNoteRerouteA.mhp (112 Bytes)