[sdiy] Techniques for Multiplying MIDI Clock frequency?

Roman Sowa modular at go2.pl
Mon Dec 20 11:30:49 CET 2021

When you say "complex pattern" I see a lot of MIDI messages, and then 
the clock messages like to be trapped between bytes of single note 
message. So maybe, just maybe your Arduino code, or library you've used 
are not capable to see a MIDI clock message trapped inside a note 
message, or simply get overloaded.

Is it Arduino doing or KPR itself is best to check on a scope with 
trigger set to timeout on decoded clock byte.


W dniu 2021-12-18 o 21:12, Benjamin Tremblay via Synth-diy pisze:
> Interesting topic!
> I have been wanting to write some code like this for a KPR-77. Goal would be MIDI clock in, TTL-ish clock out. 24ppq>48ppq.
> The first challenge is converting 24ppq computer signals to 24 HIGH/LOW pin state transitions per quarter note.
> One thing that discouraged me was MIDI clock coming from my Boss DR-202.  When I play a complex pattern on that thing, I start losing clock steps. I could not figure out why, so I gave up on multiplying the clock.
> If I use a plain vanilla drum machine (as opposed to a groove box), it seems to work okay.
> I wrote this code for Arduino Mega, and then tried it with Teensy, but either way it has the same problems.
> So, two different problems.
> 1) MIDI clock dropping out on groove boxes.
> 2) I wish I understood the theory of clock multipliers. I have seen code that measures the period between clock pulses and dead reckons the double-time pulse as an average of the recent periods. But why? Why can’t I just fire another extra HIGH-LOW pulse whenever I get a MIDI clock event? Why does timing of the extra ticks matter?  I’m assuming 48 PPQ divides the clock down to individual sequencer steps on the KPR-77. As long as the divided clock is coming in on the beat, what does it matter if some of the synthetic pulses are a little off? (They’re just shadows of the main tempo clock). It’s not like the KPR-77 is inferring something or trying to calculate BPM from the external clock… So… Anyway I just wish I knew what I was aiming for, and then maybe I could hit the target.

More information about the Synth-diy mailing list