This is the completed version of my SH-101 style synthesizer
The synth has a single 3340 voltage controlled oscillator with square, saw and a sub octave that can be all mixed together at different levels. The sub octave uses a 4093 schmitt trigger NAND gate to generate a pulse from the saw wave (we don’t use the square output as this has PWM adjustment and we want our sub to be a 50% square) This pulse goes into a 4013 divider where it is divided down twice (-1 and -2 octave), then there is a rotary switch with 3 options and a diode steered -2 octave with 75% duty cycle.
Once the oscillators have been mixed they go into a 3320 filter, using the virtual ground summing node the filter provides. The final VCA is a 3360.
There is a single 3310 envelope generator which uses a re trigger option so the envelope can be re triggered when a new key is pressed.
The envelope output goes to the filter CV via a level pot but also distributes out to the VCA and PWM
VCA: Switch between Gate or Envelope trigger
PWM: LFO1 or Envelope with adjustable level
Filter: Envelope (adjustable), LFO2 (adjustable) and direct CV control with Resonance
The entire synth fits on a small PCB and is controlled with a PIC 16F1516 and a dual MCP4922 DAC (which does the oscillator CV and the key track offset voltage)
It’s a single mono synth with MIDI In, there is no patch storage available, this just gets too expensive and difficult sometimes.
There are 2 LFOs, 1 is for the PWM and 2 is for the filter, with and adjustable level. The LFO is square wave only and is generated from the MIDI clock with 3 options:
2: 8th Note
3: 16th Note
Below is a link to the whole repository including:
PCB Files in KiCAD
Software in MPLAB X (For PIC 16F1516)
All the downloads are completely free and this project is open source, but please consider donating, there has been alot of time put into the testing and design.