Synchronizing External Instruments

I have several external instruments that I’m using with Cubase, I finally got them all sync’d so I thought I’d share how I did it. What you need to do may vary depending on the instrument.
Every DAW has something called Plugin Delay Compensation, Cubase is no different. PDC ensures that everything stays in sync and you’ll rarely notice it, unless you’re trying to use external instruments. IMO whatever Cubase does with PDC, it’s the best in the business, some DAWs will make your MIDI keyboard controller unusable because of PDC delays, Cubase doesn’t seem to have that problem.
I have 3 synths, a Roland Fantom X, a Dave Smith OB-6, and a Moog SUB 37, the Fantom uses a MIDI cable, the other 2 are hooked up via USB. I’m using the SoundTower MIDI plugin for the OB-6 and the Moog plugin for the SUB 37. The OB-6 plugin is an instrument, the SUB 37 plugin is audio.
There are 2 types of delay you may have to deal with with external synths: positive, this is where the synth plays before the beat, or negative, the synth plays after the beat. Unfortunately this varies between synths and audio interfaces.
My OB-6 was exhibiting positive delay, I think because the plugin does not take into account the DAW PDC. It has a delay parameter in the MIDI settings, adjusting it to 50ms fixed the issue. I haven’t figured out how to associate an instrument plugin with an external audio input.
The other synths had negative delay (behind the beat). The only way to deal with negative delay is to define an external instrument in Cubase. Defining an external instrument gives you a delay control and an input level control. Increasing the delay using the delay control reduces the time between the time the MIDI note is sent and the time the audio shows up in Cubase. That description is probably backwards but it should work for practical purposes.
In all cases, you’re probably going to have to tweak the delay parameters based on trial and error. Here’s how:

  1. Create a project to test your synths
  2. Select a patch with a quick attack (pluck, piano, drum, etc)
  3. Create some notes in the MIDI track
  4. Iterate until the audio starts when the MIDI does:
    4a. Record the output
    4b. Zoom in the audio and MIDI and make sure the audio starts when the MIDI does
    4c. If it doesn’t, turn up the delay

The delay was 50ms for my OB-6, 8ms for the Fantom X, and 4ms for the SUB 37. The caveat is, you need to create external instrument definitions for your external instruments if you want to sync them. Everything you hook up is probably going to be different.
Thanks!

Nice tisp! Thanks for 'em.

I’ve got the SoundTower plugin and an OB6, as well. When first setting things up, did you have trouble getting the plugin to connect to the synth? I’ve tried every tutorial and instruction from the devs with no luck. Cubase (actually, Nuendo in this case) seems to block any other piece of software from connecting to the synth while Cubase is open. Any suggestions?

Yes.

  1. You need to make sure the USB or MIDI ports for the OB-6 are not enabled in Cubase, turn them off in the device setup.
  2. Even after turning them off, the plugin crashed. Contact support and ask them for the version that works with Cubase 9. The version that worked here was OB-6 PlugSE v.1.1.0. Support was very helpful.

I just got a pair of Moog 500 series Analog Delays. Moog is stopping production of all their 500 series modules, if you’re looking for some analog BBD funk, you might want to get a couple before no one has them anymore. I got SN 1010 and 916.
My first inclination was to stereo link them, then I realized that I might want to have different delay settings for each channel. It looks like the latest firmware allows you to break the stereo link. If you break the link you can use another MIDI channel to control the other unit.
The reason I’m posting this is that in the process of integrating my new hardware, I figured out another important step in configuring external FX. If you’re doing auto delay compensation, you need to make sure the audio path exists and the external device is in bypass mode (It passes its input).
When I did an auto set previously with the effect enabled or when its output was missing, I got 0.00 ms, in bypass mode with the full signal path working I got 1.16 ms.