The journey to a reliable VCO based on the AS3340 has taken a lot of testing and three board revisions.
The post about v1 and a bunch of the testing is here.
Below are some lists of things I modified or completely changed on the PCB. If you're looking for a schematic jump to the bottom and use v2.1 so far it's passed all my tests.
Note v2.0 had mistakes and v1.0 isn't worth using.
On the first version I noted several changes to make:
Schematic Changes v1 to v2:
- Change R10 to 47kΩ
- Change R9 to 0Ω
- New C1 100pF across R10 and R9
- New C15 10uF polarized cap from -5 to GND.
- R6 DNU
- R21 & R23 changed to 5.1kΩ
- RZ1 changed to 18kΩ
- R26 changed to 100kΩ and new R31 is 100kΩ.
- New R32 for 'hysteresis' between PWM and Pulse.
- Separated grounds on Linear FM and Scale Adj. circuits for clarity.
- Added another TL072 (U6) and supporting circuits.
- This is intended to supply two reference voltages from the 5V source.
- The idea is to provide Soft Sync (pin 9) with a stable voltage of 1/3*Supply, which is something like 11.3/3.
- The other REF_PITCH1 is for the Linear FM circuit. Some resistors probably aren't right for this yet, replaced original REF_PITCH with this.
- Moved outputs to a TL074 to save some space.
- Removed JP1,2,3 and extra Vee stuff, I'm just going to use -5V ref.
- Added second frequency CV jack.
Unfortunately as soon as I got v2.0 PCBs I found some dumb mistakes and only ended up building 2 of them before making the changes below and ordering v2.1 PCBs.
Issues on v2 PCB (fixed on v2.1):
- VEE net isn't connected to -5V so the scale adjust circuit isn't powered. On v2.0 PCBS I reworked them with a short from C10 to RT1.
- 10pF cap was needed on Sawtooth first stage op-amp.
- There was ring in this on the falling edge and this cap helped. (between U4's pins 8/9)
- Rr1 was changed to 220kΩ from 330kΩ, because of lower supply voltage from U6.
- R4, R33 and R34 should be 100kΩ to get correct voltage reference behavior.
- C19 should be DNU, it caused oscillation on REF_VOLT_1.
- Added 10pF on U4B (between pins 6/7) for rising edge of pulse.
- Added resistors for PWM pot so it's range is limited. (also do fine tune if there's room).
- Added Calibration frequencies and steps on silkscreen.
- Changed supply into REFIND_C6, from 12V to REF_PITCH_1.
- Changed R21 to 10kΩ
- Changed R23 to 0Ω
- Changed R8 to 110kΩ, lowers pulse out peak to peak.
From the tests on v2.0 and v2.1 I can say that the added U6 to create reference voltages worked really well. As far as I can see that change has almost entirely eliminated the frequency shift due to supply voltage changes. The frequency output is now stable (0.6% change at 1kHz from 11.75V to 12.25V). The v1.0 PCB had a 25% frequency change per 1V supply change, v2.1 PCB is only ~1.2% per 1V supply change (1V supply change is crazy, but my supplies vary with load about 30mV which was enough to detune the v1 PCB several cents.
The changes to v2.1 for the PWM pot range worked fine allowing the pot better control of the duty cycle.
I finally got around to testing the HF tracking portion of the circuit. The adjustments to R21/R23 above allowed the tracking to be refined all the way up to 10V CV. I haven't thoroughly analyzed all of the v2.1 oscillator's HF tracking. On a few of them I wasn't able to completely trim them to exactly the desired level, but I think all of them ended up within 1% at 8 volts. Here's the result of the first v2.1 PCB I fully calibrated. Given the limitations of my test equipment I'm happy with the results.
Finally I also checked the sync input(s) and came to the realization that the switch in the design isn't really useful with the new voltage reference connected to the soft sync. In the v2.1 PCB I left the switch in because it can sort of mute a sync signal if assembled correctly, but in the latest front panel I've left the switch out.
There may still be some improvement possible with the PWM/Pulse relationship, but I need to use them some more to see if I care. I think for now I'm happy with fine tune handling it.
Here are photos of what v2.0 looked like, but I only built two.
- Check for shorts on power pins.
- Put the op-amps into their sockets (leave AS3340 out for now).
- Power up the and check the +/- 12V and +/-5V rails.
- Probe the voltage on TP3 (REF_VOLT_1) and use trim pot REF_VOLT_1 to set it at 3.75V (~1/3 of 11.25V, Vcc after the input diodes).
- Probe the voltage on TP4 (REF_PITCH) and use trim pot REF_PITCH1 to set it at ~9.7V, this is just a starting point for REF_PITCH, it'll be fine tuned later.
- Unplug the power, put the AS3340 into it's socket and power it up.
- Check the outputs and knobs for basic functionality, leave the PWM at ~50%.
- Ideally wait for 10 minutes for the temperature to stabilize.
- Measure voltage between TP1 and PT2 with millivolt accuracy. Trim the voltage to 0.000V with RZ_TEMP1.
- Short JP4.
- Tune the pulse output to C6 (1046.5Hz) with REF_PITCH_1.
- Remove the short on JP4.
- Set the front panel knobs: Fine tune centered, PWM 50%, Freq fully counter clockwise.
- Input a CV of 5V. Tune the pulse output to C6 (1046.5Hz) with REFIND_C6.
- Input a CV of 0V or 1V. Tune the pulse output to C1 or C2 (32.7 or 65.41 Hz) using SCALE_ADJ1. I found 1V easier to measure with my test equipment.
- Input a CV of 8V. Tune the pulse output to C9 (8372Hz) with HF_TRACK1.
- Test Sync input with an appropriate input signal and output shown on scope.
- Test CV on second input jack.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.