Last week Aaron and I were raving it up– he with his Doepfer, I with my microKorg. We were frustrated, however, by our difficulty getting the microKorg to stay synced up. After much investigation, I unearthed the cause and solution to our problem.
When the microKorg’s clock is set to EXT, it accepts MIDI clock from the master. MIDI clock is a series of ticks sent at regular intervals. The synth can calculate the master tempo from the time between ticks. But MIDI clock contains no information about bars and beats. (Other MIDI protocols do, but the microKorg does not accept them as far as I can tell.) So the synth matches its tempo to the master, but it has no knowledge of how to line up the first beat with the master. The arpeggiator might start on the beat just by chance, but it’s just as likely to start halfway between beats.
After much investigation, I discovered that you can force the microKorg to jump back to the first beat in time with your host. Details after the jump.
I’m using Ableton Live here (sorry, Buzzards), but you ought to be able to do the same trick with any host. For that matter, this same trick probably works with other synths and grooveboxes.
1. Install MIDI Yoke and MIDI-Ox. MIDI Yoke is a virtual MIDI driver that gives you extra MIDI ins and outs; you can use them to connect different programs together. MIDI-Ox is an incredibly useful tool that lets you route, filter, and rewrite MIDI data.
2. In Live, disable our physical MIDI port (Out-1 USB Midisport) and enable our virtual MIDI port (Out to MIDI Yoke: 1).
3. Start up MIDI-Ox. We need to connect the virtual MIDI port to the real MIDI port. Go to the Options menu and open up MIDI Devices. Make sure “Automatically attach Inputs to Outputs during selection” is checked. In the MIDI Inputs box, find “In From MIDI Yoke: 1” and select it. In the MIDI Outputs box, find your physical MIDI port and select it. Now MIDI data we send to the virtual port goes to the actual synth.
4. We need to send MIDI realtime messages to the microKorg on demand. Live doesn’t support this directly, so we will configure MIDI-Ox to replace a regular note with the realtime message. Go to Options on open Mappings. Press the Insert button. Under “When Input matches,” set “Event Type” to “NoteOn.” Make sure “Pass original value on” is not checked. Under “Set Output to,” set “Event Type” to “Start.” Press OK.
5. Make sure “Turn Map On” is checked, and then press “OK.”
6. Leave MIDI-Ox open and go back to Live. Add a MIDI track and set its “MIDI To” to “Out To MIDI Yoke: 1.”
7. Make a MIDI clip for your new track and put a note on the first beat.
Now you have a couple options. You can play this clip as a loop and continuously re-start the microKorg arpeggiator in time with your Live clock. This might be handy if you’re switching between a lot of different patches. But this will also re-start your note pattern, which may or may not be desirable. Alternately, you can configure the clip as a one-shot and trigger it whenever you need to fix the microKorg sync. In this case, you might want to map a hotkey to trigger the clip.