I am working on the analog part of the MCO, basically Saw wave generation. The main idea here is to keep it simple not to charge the Bill of Materials too much, but keeping a high quality analog waveform on the output. As a matter of fact, all the waveform generation (Pulse, Triangle, Sine) is located outside the MCO Core, which outputs only a Saw wave.
In the mean time, I found interesting to add the Portamento capability to the heart of the oscillator, as well as synchronisation (so far Hard sync, soft sync could be obtained with only one capacitor added).
Finally, here are some samples of the MCO in action.
Digital sweep: the MIDI notes (from 0 to 127) played sequentially.
Audio sample: mp3 – 688 kB or wav – 7.7 MB
Analog sweep: the modulation input is fed with a ramp wave (-4 to +4 volts), allowing a sweep over 8 octaves. The modulation range is actually higher that 8 octaves.
Spectrum and pitch
These pictures were plotted using free software Audacity.
The MCO has now a fully operational analog modulation input, allowing detuning from the digital setpoint, with still less than 0.5 cent error over a 1V/Octave scale. Other response curves (like volt per hertz) might be added if it fits in the memory.
Next: benches, pictures, videos and samples, of course!
The analog output shall be a 10Vpp centered Sawtooth wave. This is the basis for building other classical waveforms such as Pulse, Triangle and Sine. I am still working on keeping the output amplitude as independant of the frequency as possible, but so far it’s going on quite well.
This is my first attempt to create an oscillator for musical synthesis, with both digital precision and stability and analog modulation capabilities.
A long time ago (in a galaxy not so far away), the Roland Juno series were using a Digital Controlled Oscillator, using a master clock of 8MHz divided with a 18 bit counter to reach a particular audio frequency. The same principle is used here, with slight variations:
- The master clock is based on a 16 MHz crystal.
- The counter is 16 bits wide, with a prescale circuit allowing the pre-division of the master clock for more precision in both the lower and higher frequencies. (just think of it as the gears in a car).
So far, I tried it without the analog modulation inputs, and I found that the square output was more precise than the output of the frequency generator app on my iPod touch.. And a lot cleaner!
Here is the graph of the theoretical errors (in cents) over the MIDI note pitch range (0 to 127, equivalent to 8,17 to 12543,8 Hz):
You can see that the maximum error is 0.6 cent (the human ear can detect pitch errors when higher than 5 cents). And this is located in the end of the audio range (where the note is barely audible). This is a bit better than the actual Juno DCO, which had a maximum error over 1 cent.
I am currently in Paris for the Alliances+ forum, lots of good
companies and great jobs.
I am still thinking of getting this Forty Seven Effects thing official
by next year, if I don't find a suitable job.
By the way, the first firmware was successfully uploaded on the Mobius
prototype, time to celebrate! (and test/debug)