Goals and Expectation Management
One thing needs to be explained right up front. While what I want to build will be fully functional system, this will not be an instrument you can stack up against an Arturia, a Make Noise, or a MOOG, But then those systems cost around $2,000, $4,500, and $10,000 respectively. As I said in the introduction I want a system that, while a fully functional instrument, is as low cost as possible. What this means is that, for example, while an Envelope Generator in a big modular syth is built using an assortment of op-amps, gates, transistors, pots, capacitors and more, the FUNCTION of an envelope generator can be built using one small microcontroller and a very few other parts. So while this is going to be an exercise in engineering, it is also going to be an exercise in cost containment.
The primary way to reduce costs here is going to be by whittling down the parts count (Bill of Materials, or BOM) to as low a number as possible. And the primary way I plan on doing that is by doing as much in inexpensive microcontrollers as possible. Sub-one-dollar micros have plenty of horse power these days to manage this application and what's more, they now come in varieties that contain op-amps, DACs, ADCs, and other analog circuitry.
Keeping the BOM line count low also means that we're keeping the printed circuit board (PCB) size low, which provides another cost savings as well as allows us to use small, inexpensive off-the-shelf enclosures. Custom costs money, so we'll have none of that. <grin>
One of the handy things about building a modular synthesizer is that by their nature they are chopped up into discrete circuits, or modules. This allows us to create a logical sequence of which to work on first.
Step 1 : To start, we will need a foundation. That is, a power supply, a controller, and some sort of audio amplifier.
The power supply is fairly simple. I want all of the various modules to work off of a 5 V dc power source. Doing so will let us choose common and inexpensive parts for various circuits in the system. As I envision it now, I picture the power supply module containing a rechargeable 6 volt battery pack, as well as a provision for charging the pack via a USB connection (power only, no data). We can use one of the billions of USB phone chargers littering the Earth to charge the pack, or an end user can use an available port on their computer.
The controller couldn't get much simpler. We need to provide a trigger signal, and a variable control voltage. The trigger is simply a push button, and the control voltage will come from a potentiometer connected as a variable voltage divider.
For the audio amplifier, well, if were keeping cost low how can we consider anything other than the LM386? This ubiquitous little audio amp can drive the tiny speaker I envision using, as well as provide for a stereo headphone jack. This module should also provide for an audio output suitable for feeding PA or recording equipment.
Step 2 : Having power, control, and output, the next module we'll need is an oscillator.
The Voltage Controlled Oscillator (VCO) is really the heart of any synthesizer, and in this project probably the most complicated. Conventional VCOs are typically based on complex analog circuitry based on op-amps. These oscillators work great but there are some drawbacks. They need to be calibrated, their tuning can shift with age, and their circuits can be quite temperature sensitive. This is the first place we'll be ditching a lot of analog circuitry and going with a microcontroller.
As I type this I do not know how I'm going to build this VCO. There are several ways to generate a waveform with a microcontroller, and three lend themselves to this application. We could generate a pulse width modulated (pwm) signal directly, and filter that into an analog wave. Or we can use an external digital to analog converter...
Read more »
Hi John, is this project still active? I'm considering something similar for an audio engineering club in town, as both design practice and a project to produce a functional library of modules. In addition to your listed build plan, what next modules would you include? Do you have resources for analog-style synthesis instead of pure digital?