DIY SynthesizersInterfaces and sub-systemsDIY Audio Efects
Go to the HomepageWhat's up Doc ?Go to the Linkpagem.bareille

MIDI to CV-Gate Interface MIDI3CV



For analog monophonic CV/Gate synthesizers.

  • 1V/Oct scale or table of 48 notes each tuned independantly
  • Gate positive, negative and Switched Trigger ( Moog )
  • Pitch CV is 10 Oct range for 1V/Oct and >4 Oct for Table Mode
  • Monophonic, true last note playing priority
  • Running status protocol is implemented
  • Aux CV1 is hardwired to Control 1 (Modulation Wheel )
  • Aux CV2 assignable to Velo or any Controler
  • Autolearn mode for easy parameters setup
  • Ultra simple human interface: 1 led, 1 switch
  • Full edition by Sysex MIDI
  • MIDI editor/config software for PC (Win)
  • Keep config when off.
  • CV Output voltages 0/+10V - Gate = TTL logic 


Schematics and pcb

I have designed two schematics for the MIDI3CV: "Deluxe" and "Basic". Each have his own advantages the other do not have. Both are working with the same firmware and perform same features:  digital architecture of the circuit remain the same.

    1. Schematic of the MIDI3CV - R1 "Deluxe" interface  (pdf 95kb)
    2. Schematic+ pcb  for MIDI3CV - R2 "Basic" interface (pdf 185kb)
 This table resume differences between both versions
MIDI3CV r2 Basic
MIDI3CV r1 Deluxe
Analog power supply
 Asymetrical  +12Vmin Symetrical +/-12V min 
External PSU +15V DC +15VAC  or +/-15V DC
DAC configuration Voltage switched mode Current mode
Trim aops Gain trim  2 offset trims + Gain trim
V Ref +2.5V  10V  + trimmer (ajsut 10t)
Vref source  Resistor or fixed TL431 Ajustable TL431 
Offset at 0V 30mV< x < 40mV  typ <2mV , max 5mV
Negative CV NO YES, optional offset trim Aux CV
Aop choice LM358 or other single supply  LF411, TL081 larger choice 
Ext mod inputs no implemented but possible  yes, one for each aux CV




Important note for eventual builders...

I have released many MIDI to CV/Gate in this web site :2 schematics with a PIC16F84 -this page- and 1 schematic with a PIC16F628 named MCV628 . So if you plan to build one of thoses interfaces, i advise you to build the MCV628 with the PIC16F628 at 20MHz !!!...

I leave informations on the MIDI3CV , PIC16F84 based interfaces , online only for people who have already builded one this interfaces... It work quite well, but it is much better with a PIC16F628 ...No doubts !





Firmware for PIC16F84A

The main piece of code, the brain of the interface. The firmware revision history is here. Files below must be "burned" into the PIC16F84.Very good "diy" PIC programmers and links for ICPROG are at Kudelsko's Web Site.

  1. Download MIDI3CV firmware revision 1.201b ( HEX)
  2. Download MIDI3CV  Data File (EEP) Program this file in the 68 bytes of PIC Flash memory. It contain a preset configuration
  3. Download Blink Test Program ( HEX)  and  Blink Test source code(ASM)  This useful file is to test if the PIC is ok.

The GATE led

It is a multi purpose led! It blink 3 times at power on, after the complete init of the cpu/software. It means "All is ok". In normal working condition, the Gate led ligth when a note is played or if a SysEx message is received..If a trouble happen during SysEx reception, the led will stay on, showing an error has occured. Nothing is written in Eeprom in this case. Any incoming MIDI message will unlock the interface, else it is a fatal error from the PIC, and a cold reset is may be necessary ( very rare case). When the MIDI3CV is in Autolearn mode, the Gate led stay on, until a MIDI message has been received.

Autolearn Mode

It is the easiest way to set main parameters of the MIDI3CV interface. Here how it works: Push Autolearn switch on the interface, the Gate led ligth on. The interface is now in Autolearn mode waiting for the next MIDI message you will send. When the interface receive the message, MIDI channel, note or controler informations are extracted and stored to the Flash memory of the interface. One parameter only is changed at time. The led gate goes off and the interface is now setup with the new value...That's all! Parameters changed by the Autolearn mode are :

  • MIDI channel number : 1..16 . Send any MIDI message with channel number inside.
  • Reference note : 0..127     Lowest note the interface can play ( digital zero) Send a note message
  • Reference Controler number: 2..127  The controler assigned to CV2 . Send a controler message
MIDI implementation
    Note On 
    All note off
    Pitch CV
    Note Stack for True last note played operation
    Running status implemented. 
    Velocity can be assigned to CV1
    Controlers  CV1 wired to Wheel ( control 1)
    CV2 assigned to Velocity or to controler 
    2 to 127. Number is stored in Flash eprom 
    SysEx  format <F0,ID,CAN,ADR,LSB,MSB,F7> 
     Covers all firmware parameters + 48 notes table stored in Flash eprom.


The PC Config Software

The MIDI3CV memory is fully editable with MIDI exclusive messages.I have written a complete MIDI3CV editor software for PC under Windows 9x /XP. Very helpful to edit, to configure or transmit the 48 notes table to the interface, with few mouse clics...

Download MIDI3CV config software V1.2c for PC (1.3Mb)

Here are screen pictures of the config software:

The 48 Notes Table tune editor, the scale showed is  for Korg MS20/MS10. Picture was taken just at the (successful) download end. When this scale has been transmitted into the interface the Pitch CV  emulate the 3 octaves keyboard of the MS20 and a bit more ...



© Marc BAREILLE 2002,2003