Start page‎ > ‎Synth DIY‎ > ‎

USB-to-CV interface

I am developing a synthesizer control voltage interface with USB interface. It has the following properties:
  • Possible to control from standard music software, e.g. Cubase in Windows.
  • Powered by the USB (unless you need more than 0-5V range).
  • Four CV-outputs with 0-5V range (optionally 0-10V if adding some extra components to the circuit board, and supply external power).
  • The outputs use 1 V/oct. Might experiment with Hz/V control (for e.g .Korg and Yamaha) as well.
  • Four gate-outputs; 0 or 5V. Can be configured in software to be either level trigged (5V when active) or S-trigged (0V when active).
  • Five LEDs and two pushbuttons. Possible to add more as there are pins available.
  • I designed a circuit board with D/A converters, buffer amplifiers and a Teensy 2.0 processor daughter board. The D/A converters are two MCP4922 from Maxim with SPI bus.
  • Powered from USB-kontakten, but can use extern +5V as well. The circuit board has place for a 5V voltage regulator to be able to use e.g. +/-15V instead.
  • Also has "standard" MIDI in and out to enable control from a MIDI keyboard instead of a computer. The software part is not yet implemented.
  • Protected outputs. The CV outputs has buffer amplifiers, protection diodes and 1k serial resistances. I guess the resistance would have been good enough, but you do not need to use all these protections if you don't want to. On gate outputs there is protection diodes and 1k serial resitances.
  • Will function with both level trig and S-trigg. So far I've only tested a Korg MS-20 with S-trig, and that worked fine.
  • The circuit board is prepared with a connector for a HD44780 display, but I have chosen to use five LEDs instead.

Teensy is a Arduino-compatible processor board that can be programmed with the Arduino IDE tools, or alternatively with the WinAVR C compiler. I chose Teensy due to the drivers supporting USB MIDI. That proved to be a good choice as it worked with Cubase in Windows without any problems.

I have more circuit boards than I need, so I can sell some of them if requested.

Status 2012-06-23: Got the PCBs from Seeedstudio. Solder time!


Status 2012-07-06: Soldering done (skipped the protection diodes). Started testing, and it seems to work fine. I found out that the SPI input pin can not be used as a digital output even if I don't use the SPI input. This was solved by a wire bridge to an unused neighbour pin. I am developing the code to support more than just single channel CV + gate. I was afraid that some Windows USB MIDI driver hacking would be necessary, but found out it was not thanks to the supplied drivers! Very nice. The drivers was the main reason I chose Teensy instead of the standard Arduinos

2012-07-11:Movie time! Basic functionality is implemented; 2 channel pitch+velocity, 2 channel pitch + mod wheel (this is was I used in the movie clip) and 4 channel pitch. I will add more modes. I controlled a Korg MS-20 in the clip, 1 V/oktav control via the "Total" jack. The Mod Wheel voltage from the interface is connected to LP Filter Cutoff Freq.

2012-07-12: Next step: Implement pitch bend and legato (handling more than one key pressed at the same time).

Comments