Advertisement: If you're enjoying these pages and you have an interest in hobby type electronics or repair jobs, you might like to visit my UsefulComponents Etsy Shop where there are many difficult to find items, and my other website www.usefulcomponents.com, where there are details of some good radio and other kits.
Introduction
This document summarises the workings of an instrument designed to reproduce single note audio outputs which are very close to those produced by the early models of Hammond Organ. The instrument as such is a prototype built on matrix board and is for my own experimentation. There is an exponential VCO CV input such that the instrument can be used under the control of a MIDI analogue synthesiser controller. The instrument is housed in a 4U 19" rack case. The different modules will be described in the text.
Some History
Originally, the prime harmonics were generated with 74HC4046 PLLs which were spot-on accurate but would take some time to reach their final frequencies, especially when running at low frequencies. They also limited the useful frequency output range and I decided to dump them in favour of not quite spot-on divided-down frequencies. It occurred to me that with a limited number of gears and teeth on the Hammond tonewheel generator, this might be authentic anyway. You can tell that the harmonics are not quite locked by looking at the output signal on an oscilloscope. With locked harmonics the waveshape is completely still and identical on every repetition. With unlocked ones, the waveshape "wibbles" slightly. Looking at a mechanical Hammond output signal and comparing with a later electronic phase locked one would be interesting. Maybe this could account for one of the differences in sound quality of electronic versus electromechanical Hammonds.
Originally the device was not intended to change frequency rapidly and be a real CV instrument. The HF VCO was implemented to achieve this and took some effort. Previously this was done with another 4046 PLL and could be locked to a CV VCO input over a limited range of frequencies. This was changed because of fears over its response time.
Another way to implement a similar circuit to vibrato 2 is to use a ring modulator fed with wideband quadrature shifted audio, i.e. a baseband SSB generator.
Picture From The Archives of Front Panel Construction
HAM05 History
This was originally constructed using Iabc max = 1.5mA and no pull-down resistors on the transistor bases. This was noisy for two reasons. The CA3080's change in input offset voltage over the full zero to 1.5mA control current range is large and unpredictable. The max control current is now 150uA, and this reduces the amount of low frequency control noise at the frequency of the LED switching. It was found also found that there were very short glitches on the control output logic. In themselves these very short pulses are not harmful, but due to the diode-OR type output arrangement, a very short negative glitch would be amplified in time by the slow turn-off time of the transistors without pull-downs. 10k pull-downs were added and HF switching noise subsided considerably. The position of the 180pF glitch smoothing caps is not ideal and would be different in a new circuit, to equalise the rise and fall times. As built, there is no physical room for changes in the circuit.
Archive Picture Of Inside Construction
Circuit
Descriptions
Harmonic Generator
The principle of operation of a
tonewheel organ is to have a fundamental output frequency for
each note to which you can add upper and lower harmonics in
varying amounts. This device uses a high frequency square wave
oscillator which is divided down to provide the fundamental and
even harmonics in square wave form. The fundamental is nominally
0.5kHz. The prime numbered harmonics are approximated by
dividing down from the H.F. clock with programmable dividers.
The frequencies are thus not exact but are very close. The
remaining harmonics can be generated by using dividers from the
prime numbered harmonics. Note that because of this, the "prime
numbered" harmonics are not necessarily really prime, but often
multiples of them to facilitate this dividing method. e.g. the
tenth harmonic is generated from a divider, and the 5th harmonic
is then obtained with a simple flip-flop divider from the 10th
harmonic.
These square-wave outputs need to be
filtered to obtain sine waves. Switched capacitor low-pass
filters are used to do this. The clock inputs of the filters are
driven from one of the high-frequency divider outputs of the
VCO. The particular divider output used is chosen based on
getting the corner frequency close to the fundamental of the
particular signal being filtered without causing too much
attenuation. As the filter corner frequency changes with the
clock inputs, the filters will track the input signal and
maintain a constant output level and filtering relationship.
The sine wave outputs generated can be
added together as desired using front panel level controls, in a
similar way to that possible using the drawbars on a tonewheel
organ. The front panel controls also have voltage control inputs
for each harmonic, allowing harmonic levels to be varied by an
ADSR unit, or some other control voltage source.
Vibrato Unit
The vibrato unit in the original A-100
organ is based on a capacitive pickup which rotates inside a
screened box around a set of stationary capacitive pickup
points. The result is that audio from each of the stationary
inputs goes out to the rotating pickup in turn. Also, the
switching from one 'emitter' to the next is a smooth transition;
When the pickup is half way between the two sets of emitter
plates it will be picking up approximately one half signal
voltage from both. The emitter plates are connected to a
phase/delay line made of same valued Ls and Cs, a bit like the
very simple circuit model for coaxial cable. The connections are
made in such a way that when the scanner rotates, the pickup
point moves up and down this line. As the audio input is at one
end, and it suffers an approximate delay as it travels along,
the pickup point experiences what is analogous to audio "doppler
shift" as it traverses the line. So when the pickup point
travels away from the input, the frequency seen at the pickup is
shifted downwards, and vice versa.
It is worth noting that the
phase/delay line is neither a true delay line nor a true phase
shift. It is somewhere between the two, having a delay component
and a phase shift component. The effect is rather like very
dispersive co-ax.
New Vibrato Circuit
The original vibrato circuit has
several problems. Probably the most noticeable is the
breakthrough of the switching signal from the logic due to the
offsets of the VCAs. Also the vibrato amount is fixed.
The new vibrato circuit adopts a
different approach which dispenses with the scanning method
altogether. Each phase shift element in the phase-delay line has
a VCA associated with it that varies the amount of phase shift
that it contributes. By varying the control voltage which is
common to each VCA, the phase-delay of the line can be varied
from a minimum value to the maximum value smoothly, at any rate
desired. If more vibrato is needed then more sections can be
added to the line and the vibrato amount varied by adjusting the
amplitude of the variations in the control voltage. When the
control voltage is a maximum there will be little phase-delay
and this is equivalent to the scanner being at the zero end of
the line. When the control voltage is at a minimum the
phase-delay will be at a maximum and this is equivalent to the
scanner being at the far end of the line. This gives you a
similar style of operation to the Hammond vibrato; The amount of
frequency shift is proportional not to the magnitude of the
demand voltage, but to the rate of change of the demand voltage.
This is analogous to the Doppler shift of an approaching
ambulance being proportional to its speed of approach and not
how far away it first set off from.
This circuit will not produce an exact
Hammond scanner type vibrato, but it is hoped that it will be a
more flexible and quieter circuit than the VCA scanner circuit
already implemented. It will be interesting to see what the
effect of the changing 'corner' frequency of the line as the
control voltage changes will be.
More Theory Of Operation
The phase shift of the phase shift
circuit does not change linearly with control current. It is an
inverse Tan function which approximates a 1/x kind of curve. A
compensation circuit using a VDR as one half of a pot was tried,
to give a d.c. control response that was approx 1/x. This
suffered from offsets and various problems and a squaring
circuit was devised which compensates quite well for the phase
shifter response without the 1/x circuit pathologies. The chart
below shows the overall compensated response of a single phase
shifter section. The compensated response shows an s-shaped
curve which is fairly linear over the desired -20° to -140°
range. The s-shape is OK, as the resultant output frequency will
go up as much as it goes down when a sine or a triangle wave is
applied. This is more important than the ultimate linearity. You
could even argue that a softer response at each end would give a
more realistic, violinist style vibrato. Twelve sections have
been implemented to give a total phase shift of 4X360° at 1kHz
which I think is certainly as much as that available from the
Hammond A100 L-C phase shift line.
There are many op-amps and OTAs in
this circuit, but the cost-conscious designer will note the
remarkably low price of the TL074 and the CA3080.
Voltage
controlled phase shifter response when compensated with
squaring circuit.
Detailed Schematic Descriptions
HAM01-01
This sheet contains all the dividers
which generate the square wave harmonic signals from the high
frequency clock. When the high frequency clock equals 576 KHz
the fundamental output will be 0.5KHz. So for A440 output, HF
clock must be 506.88 KHz. As the maximum HF clock frequency is
nominally 4MHz the highest note we can get is about three
octaves above A440. This should be adequate. The dividers for
2.5 and 3.5 KHz outpus are non-integer power of two numbered
dividers and their output frequencies are not exact. To get
exact frequencies would require fractional division of the input
signal or a much higher frequency HF clock. The errors are 1/60
of a semitone for 2.5kHz and 1/20 of a semitone for 3.5kHz.
1/60th of one semitone is definitely close enough. 1/20th of one
semitone is close enough for my ear.
HAM05-05
This sheet contains the logic for
generating the select signals which drive a set of VCAs. The
VCAs connect to the delay line at the pickup points and so can
be made to act rather like the scanner if driven in the right
order. The circuit is fairly self explanatory. One of the points
to note is that this circuit needs no special reset circuitry.
There is no way this circuit can get trapped in a disallowed
state where it would need a manual reset e.g. after some
transient pulse. The more obvious way to create a "travelling
one" is with a string of shift registers. But it is easy to see
after some thought that this is not as easy to reset, and
special logic would be needed to prevent a transient causing a
"more than one travelling one" scenario.
5.3. HAM05-04
This is the phase-delay line. Each
section is an all-pass phase shifter where the mid point of the
phase transition is at about 1kHz.
5.4. HAM05-03
This sheet contains the VCAs used to
pick up the signal from the points in the phase-delay line. The
scanning logic generates a travelling "1" which supplies a
voltage at the top end of the resistors. The weighting of the
resistors causes the gain of each VCA to increase and decrease
as the 1 travels past the lowest value resistor in the set for
each VCA. The resistors overlap so that as the gain of one VCA
is decreasing, the next one in the chain is already increasing.
The current outputs from the VCAs are summed in the last op-amp.
Each preset pot is an offset adjustment. The best way to set
these is to listen carefully to the output of the vibrato and
adjust each preset for minimum noise contribution. The noise
caused by the offsets can be minimised but not totally
eliminated. Let's be satisfied by calling it a musical feature
of this particular unique instrument.
5.5. HAM05-02
These are the LEDs which show the
operation of the scanning logic. The top three LEDs are not
normally used. Correct operation is shown by the light scanning
from C0 to C28 and then back to C0. The LEDs are only on the
board and don't have front panel repeaters. This is unfortunate,
but practical.
5.6. HAM05-01
This is the stack of transistors which
drive both the LEDs and the VCA resistor chains. The 10K
resistors and 180pF capacitors slew the voltage appearing at the
VCA resistor inputs and so reduce the amount of noise induced by
the offset voltages of the VCAs.
5.7. HAM03-01 And HAM03-02
These sheets contain the tracking
switched capacitor filters which are mostly responsible for
turning the square wave inputs into sine outputs. The output
signal from the filters is low-pass filtered to remove as much
of the higher signal images as possible. The input signal to the
filters is low-pass filtered too, to avoid aliasing. The output
adjustment pot allows the output level from each of the filters
to be equalised, as the relationship between input frequency and
filter Fo for each filter is not exactly the same.
5.8. HAM04-01 And HAM04-02
These show the VCAs used to vary the
contribution from each of the sine harmonic generators. The
control voltages are designed to go from 0 to 5V and are
provided from a set of front panel pots or input sockets. The
sockets override the pots when a jack is inserted. The last
op-amp on HAM04-01 sums the current outputs from each of the
VCAs. I intend to re-wire the front panel such that if a control
voltage is inserted on a jack, it will feed not only to the
harmonic of that socket but all higher harmonics. This will
enable spectrally time variant musical voices to be produced,
without requiring an excessive number of patch cord splitters.
5.9. HAM04-03
Four further VCAs vary the amount of
output which is taken from either the vibrato 1 circuit, vibrato
2 circuit, super chorus summer or direct from the sum of the
harmonic generators. Adding both vibrato and direct paths into
the output gives the standard Hammond chorus effect.
5.10. HAM06-01.SCH
The input voltage range for the
vibrato demand is ±1V, so signal sources may be d.c. coupled.
The input demand voltage goes via two routes. One is a buffer
which feeds the variable gain input circuit via the square gain
pot. The other route feeds the current source which actually
sets the gain of the variable gain circuit. The output from the
variable gain circuit is therefore a current which is
proportional to one voltage multiplied by the other. As both
input voltages are directly proportional to each other, we get a
square law output current. The output compliance range of the
CA3080 is sufficient to simply put this current into a resistor
to get a voltage output. Another standard current generator
driven by this voltage provides the control currents for all of
the variable phase-shift sections. The 4.7MOhm resistor on the
compensation OTA sets a minimum current to avoid dropping down
to the cut-off condition. A standard adjustable regulator gives
a 5V reference and an inverting op-amp provides a negative 5V
rail which tracks this. The output of the variable phase line
returns to this sheet and is fed to a 2-pole HPF with an Fo of
100Hz and Butterworth response. This is intended to remove any
feedthrough of the demand voltage which can occur due to the
change of offset voltage of the OTAs with control current. If
this feedthrough turns out to be problematic, a higher order
filter or a cancellation scheme are possible solution
candidates. The maximum intended vibrato input frequency is
about 30Hz but the circuit should respond up to 300Hz or more,
for effects purposes. The diode feedback in the current sources
is solely to stop the op-amps saturating if the input demand
signal is too large.
A triangle oscillator has been added
to provide an internal linear VCO to drive the vibrato. This has
±1V output and accepts the standard 0 to 5V control voltage.
Output frequency is about 1Hz to 30Hz.
5.11. HAM06-02.SCH
The max current into these sections is
about 300uA each. The 4.7K resistors on each phase shift section
share the current more or less equally. The top op-amp in each
section is in a standard all-pass phase shifter configuration
with the adjustment being provided by a voltage controlled
resistor. The lower op-amp and the OTA provide the VCR. 1M
resistors set the minimum current which in turn sets the minimum
phase shift value. These resistors also provide some of the
roll-off at the top end of the s-shape phase shift vs control
voltage curve, and prevent the circuit from floating off at
minimum phase shift demand. The minimum current setting reduces
the operating current range of the OTAs hence reducing the
offset variation with control voltage. The negative feedback
around the lower op-amp buffer is strong to further counter the
variable offsets of the CA3080s. There are no offset
adjustments, with any control voltage feedthrough being
tolerated and rejected by the output HPF.
5.12. HAM06-03.SCH
This sheet is simply a continuation of
the variable phase shift line.
5.13. HAM06-04.SCH
MAX038 Linear HF Oscillator
The oscillator is a device made by Maxim. A control current varies the output frequency which is fairly linear, but needs correction with the rather clumsy diode breakpoint circuit. A better than semitone accurate linear VCO running up to 4MHz is difficult to make, but since this project was completed a suitable circuit was eventually produced. This can be seen in the waveform synthesiser project.
Exponential Voltage Converter
This is a standard circuit which is adjusted for octave changes at AP1 for 1V input changes with the diode breakpoint circuit disconnected.
Diode breakpoint Circuit
This is needed to compensate for the
kHz/Volt fall-off of the MAX038 oscillator as the frequency
increases. The adjustment procedure is non-trivial, and rather
tweaky. I have used HFCLK frequencies for convenience. It goes
something like this...
Turn all breakpoint voltage pots to
maximum, and all breakpoint gain pots to minimum effect.
Let everything warm up and adjust the
exponential converter first. Set CV = 0V and tweak the rough
tune pot for 16kHz. 16kHz is used so that the target frequencies
are familiar binary multiples.
Check Fout at 1V, and reduce the first BPV1 to set it to 32kHz if needed.
Switch to CV = 2V and turn up BPG1 so that Fout hits 64kHz. Re-check 32kHz, and turn BPV1 up if needed to bring Fout back to 32kHz. Iterate these two steps for best compromise.
Turn to CV = 3V and check if it is close enough to 128kHz. It may be (if so move on to higher CV, but if not then reduce BPV2 so that it starts to increase.
Turn to CV = 4V and increase BPG2 so that Fout is 256kHz. Go back to CV = 3V and increase BPV2 so that Fout is reduced back to 128kHz.
Check that Fout is still 256kHz at 4V and increase BPG2 if needed, iterate these two steps for best compromise.
When the entire range to 4MHz has been covered, set front panel fine tune to midway and adjust rough tune pot for A440 output with CV = 5V.
Etc. Tweaky trim procedures like this, especially where one trim interacts with another I generally deem unnacceptable. However, at the time this was the best solution available to make it work. I have managed to get sub 0.5% accuracy over the range doing this, without going to too much trouble. This is 1/10th semitone accuracy. 4 breakpoints were certainly sufficient. It is handy to measure the breakpoint voltages as they are tweaked downwards so that you are not tempted to turn the higher order BPV to a lower voltage than the previous one.
6.
Schematic Diagrams
Initial Harmonic Digital Dividers
HAM01-01.SCH
Power Supply Regulators HAM02-01.SCH
MF4 Tracking
Switched Capacitor Filters HAM03-01.SCH
Aux PSU and More Tracking Filters
HAM03-02.SCH
Voltage
Controlled Drawbars HAM04-01.SCH
More Voltage Controlled Drawbars
HAM04-02.SCH
Straight, Vibrato and "Super Chorus"
(tm:) VCAs HAM04-03.SCH
Messy
Pseudo-Hammond Scanner Transistor Drive Array HAM05-01.SCH
Internal LED Display For Messy Scanner
HAM05-02.SCH
Pseudo-Hammond Scanner Pickup
HAM05-03.SCH
Fixed Multiple Phase Shift Line
HAM05-04.SCH
Scanner Logic Drive and Oscillator
HAM05-05.SCH
Voltage
Controlled Vibrato With Inverse Tan Compensator HAM06-01.SCH
Voltage Controlled Phase Shift Line 0 to
5 HAM06-02.SCH
Voltage
Controlled Phase Shift Line 6 to 11 HAM06-03.SCH
MAX038 Based HF Oscillator HAM06-04.SCH
Pictures
Hammondicon
Front View With Drawbars
The harmonic "drawbars" are across the top, with the
corresponding voltage control inputs for them underneath each
manual knob.
Lasagne Circuit Board Construction Inside
Showing the robust "Lasagne" construction technique of piling the various veroboards on top of each other separated by old Farnell bag insulating layers. HAM06 is visible on the top layer of mince.
74HC4059 Divider And MF4 Switched Capacitor Filter Bank
I've lifted out HAM06 and you can see the HAM01 divider board underneath. This uses the 74HC4059 "divide by n" chip, and an alternative to this nearly obsolete device is shown in the A440 oscillator design. The switched capacitor filter bank is just visible on a smaller board near the back left.
Sounds
Spanish Flea final version done on analogue synth with Hammondicon in the lead