296 Programmable
Spectral Processor Module

I built a 296 Programmable Spectral Processor module for someone else.  The customer sent me a complete kit of parts and I assembled and tested the module.  Many of the components are sourced through Mouser but specialized parts, panel, knobs, and PCBs have specific sourcing requirements.  Although all the resistors and some ICs are pre-soldered there is still considerable time required to build this module.

296 Programmable Spectral Processor Manual  Transcribed from Buchla Synthesizer User Guide 11-16-1981

296 Schematics


The PCBs come with most of the SMT parts pre-soldered.  The two large electrolytic capacitors below the power connector have to be added.


The cards have been scribed and can be built as a larger PCB.  Then they can be snapped apart and then the Molex connector and trimmers installed.


Card 7 requires two SMT resistors be replaced.


I made reference designators from the PCB images.  The components generally cover the silk screen legends once populated which makes it hard to debug if anything is wrong.  However, in the case of the motherboard all the reference designators are next to the components.  Reference designators for the cards are provided.


Motherboard Controls Reference Designators

Motherboard Component Reference Designators




The 296 has an interesting architecture. Cards 4 and 7 are unique for control and I/O. The remainder of the cards have identical circuitry with different filter values except card 1 which has the low pass filter and card 10 which has the high pass filter.

The signal inputs are buffered on card 7 and bused. Each filter card contains circuitry for 2 channels. The bandpass filters are three serial bandpass filters with skewed center frequencies. The outputs are bused and summed for the Comb Filter outputs, attenuated and summed for the Attenuator outputs, and sent to an envelope follower and a VCA.

The VCA is controlled by the CV input, a set of window comparators, and the transfer switches. The window comparators are driven by two CVs from card 4 that are generated by the Frequency and Width controls. They set the VCA to full on or off. The transfer switches connect the envelope follower of the other filter to the VCA control circuit. The VCA output is summed for the Programmed outputs.

The envelope follower outputs are or'd in a simple greater-than circuit to drive the LEDs.




There is a single build thread and three modifications listed for the V1.0 PCB.

296 V1.0 and V2 Spectral Processor modifications

  1. Add 0.1 F decoupling capacitors on each of the cards at the edge connector to pins 13 (gnd), 14 (+15V) and 15 (-15V).


  1. The SSM/V2164 is biased for class A operation by a 7K5 resistor between pin 1 and +15V. This resistor instead is connected to ground. Remove these 7K5 SMT resistors:
              Card 1: R31
              Card 2: R72
              Card 3: R139
              Card 5: R239
              Card 6: R306
              Card 8: R416
              Card 9: R459
              Card 10: R526
    Add a 7K5 resistor between pins 1 and 16 of all the SSM/V2164.


296 V1.0 Spectral Processor modifications

Note: These modifications are included on the V2 blue PCBs.

  1. The 32 560 nF capacitors on the cards SHOULD be 560 pF.  I used Mouser 810-FG28C0G1H561JNT0.

  2. Remove R588 on card 7 and change it to a 680K*. (* See Unexplained Circuitry below)

  3. Remove R589 also on card 7 and change it to a 1M5*. (* See Unexplained Circuitry below)

  4. Change C154 & C244* from 100pF to 22pF. (* See Unexplained Circuitry below)

  5. Change R522 on card 10 to 8K2 to correct the output level for the >10K channel.  I paralleled a 9K1 1/4 W resistor across the 91K SMT resistor.  This is the original R37 input resistor for the 17 KHz filter and increases the gain from -1.8 to -20.

  6. Change R243 on card 5 to 220K to correct the output level for the 1K channel.  I paralleled a 300K 1/4 W resistor across the 820K SMT resistor.  This is the original R74 input resistor for the 920 Hz filter and increases the gain from -0.9 to -3.4.

  1. The programmed spectrum transfer switches are reversed.  This requires cutting two traces on the back of the motherboard and rewiring.  See the bottom of this page for details.

  1. The Programmed Outputs clip at 1.4V pk-pk.  The SSM2164/V2164 cannot drive current through a series resistor.  It is designed to drive a ground-referenced node of an op amp directly.  Two of the sections in each 2164 are driving the Prog A Out and Prog B Out through 33K resistors and these resistors need to be removed and replaced with a jumper.
              Card 1: R36 and R37
              Card 2: R103 and R104
              Card 3: R170 and R171
              Card 5: R270 and R271
              Card 6: R337 and R338
              Card 8: R423 and R424
              Card 9: R490 and R491
              Card 10: R557 and R558

296 build tips

  1. Solder the Molex connectors on the motherboard before installing the sliders.

  2. The sliders have tabs which in some positions could contact vias on the motherboard.  I insulated the motherboard where these tabs contact.  See below for details.

  3. Install all the components on the cards except the trimmers and Molex connectors.  Then split the cards and add the connectors and trimmers to each.

  4. The screw near R11 has very limited clearance so I used an insulating washer underneath.

Front panel build process
Here is my process for building the front panel.  There are a number of components to align and this process worked well.

  1. Install all the 3.5mm jacks.  Install the top row with the terminals facing up towards the top edge.  Install the middle row with the ground lug facing up and solder a common ground bus across all 16 jacks.  Install the bottom row so that the terminals and tip connection face away from the LED leads.

  2. Install all the banana connectors.

  3. Install each switch and solder one terminal.  Install a backing nut and internal tooth washer on each switch.  Install the front panel.  Use a long rod and screw the backing nuts flush to the panel. Reflow each single pin soldered so the switch will self-align to the panel.

  4. Install each 9mm potentiometer and solder just the wiper pin.  Install the front panel and align the shaft of each potentiometer in the hole and solder one support pin.

  5. Insulate the PCB and install the slider potentiometers.  Solder all pins.

  6. Push all the LEDs through nearly flush to the PCB.   The LEDs do not have a flatted side so the long lead fits on the round side of the silk screen.  The shoulder of the long pin is also angled.

  7. Solder wires to the 3.5mm jacks except the top row.  Twist multiple wires together loosely.

  8. Install the front panel.

  9. Use a long rod and make sure the switch backing nuts are flush against the panel.  Install and tighten the nuts (use heat shrink over the socket and cut out the opening to not scratch the panel).  Reflow the single soldered pin on each switch to relieve any stress.  Solder all pins.

  10. Make sure the alignment on each 9mm potentiometer is correct and solder all pins.

  11. Make sure the LED pins are straight, press it down until it seats in the panel, and solder the pins.

  12. Solder all the jack wires.


As I checked the linear potentiometers I noticed that some PCB vias are immediately below the metal tabs and could touch.  The metal case of the potentiometer is floating but I didn't want the possibility of contact. The metal tabs are longer than the plastic tabs on each end so the metal tabs directly contact the PCB.


I decided to add some tape insulation beneath the metal tabs as I don't like relying on solder mask to provide insulation and I solder the vias so they can be taller than the solder mask.  Long term the tape adhesive will loosen but the tape is sandwiched between the potentiometer and PCB and also increases the spacing to the PCB slightly.


Likewise the tabs on the 9mm Alpha potentiometers contact the PCB so I cut the top and bottom tabs off of Pot20 and Pot21 since there are runs directly beneath the tabs.


Build time for the motherboard was 2.5 hours. You can see the tape insulation beneath the sliders.  I installed the LEDs when I installed the front panel.


The panel took 2.75 hours to assemble and solder all the wires to the motherboard.  I used an insulating washer on the left screw since it is close to some vias.


The cards took 5 hours to assemble to the point of breaking them apart.  After breaking the boards apart I used a file lightly to clean the edges up.  Then I added the Molex connectors, did a final wash, and installed the ICs and trimmers.



I added 0.1 F decoupling capacitors on each of the cards at the edge connector to pins 13 (gnd), 14 (+15V) and 15 (-15V).


Total build time was 12 hours: 3.25 hours for the motherboard, 2 hours for the panel and wiring, and 6.75 hours for the cards.  Here are the finished cards.


The 296 took a total of 12 hours to build.




Calibration is straightforward. Use a DMM on the individual channel output and adjust each to <2mV with no signal inputs. If you can't get them to this level then sometimes excess flux on the PCB can be the cause. Do all 16 channels first.

The filter topology is designed around three cascaded single op-amp multiple feedback bandpass filters in a stagger tuned configuration. Each of the filters is a small frequency offset from the next to get a wide and flat passband with steep slopes. You adjust each of the three filters for maximum output at their specific frequency.

There are three trimmers per channel except for the <100 Hz channel. To adjust the frequency trimmers, monitor the individual filter output with an oscilloscope and apply the correct frequency input. Keep the pre-emphasis knobs at minimum (full CCW). Adjust the trimmer for maximum amplitude. The amplitudes will be different since the other trimmers for that channel may not yet be set. Also, there is some variation in overall amplitude between channels. (Note - if you have a two channel oscilloscope then monitor the output of your signal generator and trigger on channel 1 and monitor the individual filter output on channel 2. This will make the display a bit more stable).

There is a regular pattern to follow for calibration. Set the input frequency to what is shown for Trim #1 and adjust, then set the frequency for Trim #2 and adjust, and then set the frequency for Trim #3 and adjust. Then repeat for the second channel on that card. You soon learn the pattern of adjusting the lowest trimmer, then moving up two, then moving up two, then going to the next to the lowest trimmer, then moving up two, then moving up two. I kept a marker on the card I was adjusting so I didn't venture to either side which is easy to do. Calibration is pretty quick.

Trimmer Location Chart

For those that do not have a calibrated waveform generator for the calibration, SAModular has recorded wave files that you can download to use.


The following table is my measured outputs for the envelope follower CV output, the non-attenuated channel output, and the attenuated all output with the sliders set to 0 dB.  If you compare the non-attenuator output levels and ignore the <100 Hz and >10 KHz since those are not the center frequencies, the levels are all within +/-0.7 dB.  The attenuator outputs have some inherent variability with setting all the slider exactly at 0 dB but those outputs are all within +/- 0.8 dB.

Source Input EF Max Non-Attn Atten Out
Frequency Level Level Out Level 0 dB Level
(Hz) (Pk-Pk) (Volts) (Pk-Pk) (Pk-Pk)
30 2.00 7.94 2.35 2.35
100 2.00 2.30 1.12 1.36
150 2.00 6.90 3.44 2.32
250 2.00 9.70 4.24 2.48
350 2.00 9.70 4.40 2.64
500 2.00 7.90 3.84 2.08
630 2.00 9.50 4.40 2.48
800 2.00 9.67 4.53 2.58
1,000 2.00 11.86 5.25 3.29
1,300 2.00 10.29 4.78 2.90
1,600 2.00 10.10 4.55 2.35
2,000 2.00 10.29 4.85 2.54
2,600 2.00 10.29 4.78 2.51
3,500 2.00 11.44 5.15 2.46
5,000 2.00 10.09 4.50 2.64
8,000 2.00 11.83 5.15 2.54
10,000 2.00 4.90 2.46 2.38
11,000 2.00 11.10 5.04 2.80


 There is a nice calculator for this single op-amp multiple feedback bandpass filter at sim.okawa-denshi.jp/en/OPttool.php.



I swept VCO (yellow trace)  with a ramp (cyan trace) for the all signal input to the 296.  The magenta trace is the output with all the sliders in the 0dB position and the green trace is the 1 KHz EF output.


This image is the even comb outputs with the odd frequency notches.


This image is the odd comb outputs with the even frequency notches.


This image inverts and adds the even to the odd outputs so similar colors show as gray.  You can see how the two spectrums interleave nicely.


This images shows a notch filter with the 1 KHz slider set to minimum.


This image shows a bandpass filter with the <100 Hz and >10 KHz sliders set to minimum.


This image shows the Programmed All output with the frequency and width controls set to the 12 o'clock position.


This image shows the Programmed All output with the frequency control set to 9 o'clock and the width control set to 3 o'clock.


This image shows the Programmed All output bandpass filter with the frequency and width controls set to minimum and a 10 volt CV in the 1 KHz CV in.



This image shows the Programmed All output notch filter with the frequency control set to 12 o'clock and the width control set to 9 o'clock and a negative CV in the 1 KHz CV in.  Note that the channel CV adds to the frequency and width controls so in this case a negative CV will decrease the amplitude.


This image shows the Programmed All output bandpass filter with the frequency control set to 2KHz and the width control set to 9 o'clock.  I am using white noise as the input and have my scope in FFT mode.  The frequency control setting at 2KHz is fairly accurate.


These three images show the Envelope Decay time settings (short, medium, and long settings).



This is a video of the 296 used as a vocorder.  The programmed spectrum transfer switches are opposite of what is in the Buchla Synthesizer User Guide, November 16, 1981.  The microphone is plugged into the even input, the carrier is plugged into the odd input, and the output is from the programmed odd output.  You will note in the video that the right switch, and not the left switch, is up which is opposite the documentation and the original panel legend.


You can see the difference in the Programmed Spectrum Transfer legends (left) and these legends (right).


The programmed spectrum transfer switches S2 and S3 center traces are easily accessible on the back of the motherboard and the modification is to cut and swap the middle switch pins with wires.




Other Observations

Programmed Outputs / AH5011
I had one 296 in the shop that the width control didn't function past the first quarter turn. The width and frequency use the AH5011 analog switch which is hard to find. This particular module used the IH5011. The programmed controls generate two CVs that are used in window detectors on each of the filter. If the two CVs are within the window, that filter is turned on via a VCA that operates in a simple on/off mode. The programmed CVs are on edge pins 16 and 17. IC25C and IC25D generate a 0 to -10V CV and a -10V to 0V CV depending on the setting. The AH5011 is used as a simple variable attenuator using the device simply as P channel JFETs. A JFET is used as the lower leg of an attenuator with a 110K as the top leg. These are then buffered and inverted by IC27A and IC27B as 0 to +V and +V to 0 CVs. The issue is the attenuators were grossly non-linear.

A third JFET is used in the feedback loop of IC23A to linearize the entire circuit. This JFET provides negative feedback in another attenuator with R210 and R204 providing the negative voltage. Rather than select a different and hard to find JFET package, I experimented with the attenuator by adjusting the value of R204.  Whatever attenuation the JFET provided for feedback should match the response of the other two variable attenuators. I found that increasing R204 to about 33K really made the CVs respond appropriately. I also found very little difference between a 33K and simply leaving R204 out which is what my final solution was. The range and frequency controls now operate quite well.

Unexplained Circuitry
The 296 seems to be a faithful recreation of the original circuitry with the exception of changing the Programmed Outputs VCA from a SSM2020 to a 2164. However, there is one area of discrepancy. The input signals are buffered on card 7. On the original IC4B is unused and terminated as a voltage follower with no input. On this design IC43B is used to sum together the odd input at 1/15x and the even at 1/7x. This signal is then summed into the Programmed Odd and Even outputs through C243 and C244. C243 forms a high pass filter with a corner frequency of 1.2 MHz and C244 at ~40 KHz. The Programmed Outputs buffer rolls off at ~40 KHz so none of this makes any sense. I just delete R588, R589, C243 and C244. They make no sense to me.

Metal Can JFETs
A customer sent me his 296 with some dead Programmed Output channels. It was challenging since they were intermittent.  I could tell the filters were working correctly from the Attenuator Outputs. The VCA control voltages were not working right but I couldn't determine why. I ended up removing the 2164, the transfer JFET and even lifting the SMT leads on the op-amp. Then I found it. He used metal can J201s and the motherboard pins stick through the connectors and shorted to the can.  This is pin 19 which is Program B In.


Programmed CV Operation

The Programmed CVs are edge pins 16 (CV1) and 17 (CV2) and are controlled by the Frequency and Bandwidth knobs. These are calculated but come pretty close to what mine read (although I didn't do a comprehensive check). The nominal range is 0 to 8V and I suspect the voltages depend what IC was used for the AMC911 on card 4.



Programmed Outputs  Noise
This particular 296 calibrated well except Card5 filter A. The EG trimmer would not zero the output. I initially decreased the value of R277 to provide more range but the source of the issue was the output of the filter had low level noise. The EG circuitry is odd in that there is no negative feedback for the op-amp. Every negative excursion of the input signal slams the output to the negative rail and is isolated by the series diode feeding the next circuit. This addition noise simply caused this op-amp to "oscillate" with negative excursions.

However, when using the programmed outputs, and the width and frequency controls were turned such that this filter was activated, noise appeared on the outputs. I've tried to help others by email with similar situations and isolated the noise to a single card. My premise was that perhaps there was system noise that caused the VCAs to "stutter". The source of the noise was this same op-amp, but only one half. The filter comprised of the other half of the TL072 was quiet. I suspected layout, flux, or power supplies as the potential issue but in the end it was simply a defective op-amp. It operated correctly as a filter, but spewed out about 50 mV of white noise. I have never experienced that type of op-amp failure.

On another module on Card3 I found the LM339A comparator output had considerable noise which propagated through the system and showed up as noise at certain settings of the width and frequency controls. I found an open ground run to many of the components and the mis-wired 7K5 bias resistor was attempting to power the grounds through SSM/V2164. Correcting the bias resistors (#2 modification above) and jumpering pin 8 of the SSM/V2164 to edge pin 13 solved the problem.

I have helped many people who complain of noise on the programmed outputs. Some is "distortion"and "clicks and "thumps" when turning the bandwidth and frequency controls. I've never had one that exhibited the "clicks" and "thumps" but I have seen the distortion. It occurs when the desired frequency is just coming into the range of the controls and the signal level is relatively low. This scope photo shows the "hash" on the programmed output.


At this setting, if you unplug the input signal you can see the noise on the output.


The programmed output circuitry is ingenious and also odd design at the same time. The two program CVs control two comparators wired in parallel. At first glance this looks like a window comparator controlled by the two CVs. However, the feedback resistor is relatively low and is negative feedback which does not add hysteresis, but instead increases the voltage gap for oscillations.

When the comparators both go high, they are effectively  out of the circuit and the program CVs can now drive the output through the feedback resistor. This generates a control voltage for the VCAs so they are not simply gated on and off. The 47 nF capacitor across the 15K pullup is to dampen the oscillations at the switch point. Removing this capacitor show how significant these oscillations are as can be seen in this photo. I am driving the comparator input with a triangle wave.


This image shows the output of the comparator with the 47 nF capacitor and adjusting the two controls to the point where this noise is generated. This signal is used to control the VCA for the filter. There is one additional stage of filtering after the diode.


I increased the size of the 47 nF and could see a reduction in the amount of noise. This is with a 220 nF capacitor.


A 1 F capacitor quiets the noise even further.


Increasing this capacitor increases the time constant so decreases the responsiveness of the programmed CVs. It only happens at the filter thresholds which means the signal output is low, but by itself, it is clearly audible.  See the Programmed Noise Recommendations at the bottom of this page.


Another Module Programmed Outputs  Noise
On this unit there was clearly audible noise at normal levels with no signal input on the Programmed Outputs. Varying the Bandwidth and Frequency controls would result in areas of noise and quiet as some of the filters seemed to be more susceptible to this glitching. I found noise coincident with the oscillations on the power supply rails. There are no decoupling capacitors on this design and this version did not have all the modifications included. I added decoupling capacitors on each of the edge card connectors. I modified the 7K5 resistor on the 2164 and removed/replaced the 33K with a link. I added two decoupling capacitors to each of the 2164 power supply pins. I added decoupling capacitors across the Bandwidth and Frequency controls on the motherboard. On card 4 I added decoupling capacitors across the power supply pins on IC25 and IC27 which generate the Programmed CVs. On the filter card that generated the most noise I added a decoupling capacitor across the LM311 comparator. The result was I could no longer generate audible noise with no input by rotating the Bandwidth and Frequency controls.

This module did not have the 560 nF capacitors mod so I replaced the 32 capacitors with 560 pF. The Programmed Outputs looked relatively clean at higher amplitudes but as the output decreases by tuning slightly off frequency the outputs began to get noisy. Note that the output level here is relatively low at 300 mV pk-pk.


I decided to add 10 nF capacitors on the Programmed Output jacks. The series 1K forms a low pass filter with a cutoff above 15 KHz. It does knock down a considerable amount of the noise.


I also checked at 10 KHz at the same signal level.


The noise is similarly reduced with a small amount of phase shift at this frequency 


Without changing the 47 nF capacitors, one customer replied "Just put it in the case, put a sawtooth wave through it and its sounding amazing! No noise through the program output when sweeping the program frequency control. Job well done! Thank you!"


Programmed Noise Recommendations

In working to reduce the noise on this 296r, I discovered the zener diodes on card 7 are silk screened backwards (so the LEDs come on way too soon). Reverse them.

I made the following modification to improve programmed noise.

Add a 0.1 uf capacitor between edge pins 15 - 13, and 14 - 13 on every card.

Remove the 7K5 resistor on each filter card  (R31, R72, R139, R239, R306, R416, R459, and R526).

Add 0.1 uF capacitor between pins 8 - 9 and 8 - 16 on every 2164 IC.

Add a 0.1 uF capacitor between vias on each of the filter cards.

Add two 0.1 uF capacitors between vias on cards 4 and 7.

Add 10 nF capacitors on pins 1, 2, and 3 to ground on card 7.

The results are a significant reduction in noise. These next four scope photos have the width control set at 9 o'clock and I'm turning the frequency control clockwise to bring in a 630 Hz signal. I've kept the scope settings the same and tried to position the frequency control for the same setting. The reduction in noise is impressive.


Here are the card images showing these modifications. This is Card1 filter 1 which is unique from filters 2-8.


These modification are for the remainder of the filter cards 2-8 (Cards 2-3, Cards 5-6, and Cards 8-10)


These are the modifications for card 4


These are the modifications on the front of card 7. The red indicate the components I removed and the two zeners that have to be reversed. The yellow is one added capacitor on the front.


These are the modifications on the rear of card 7.