PPG 1020: Digital keyboard?

The PPG 1020 is known as the stable successor of the 1002 synthesizer. This was achieved by use of a special oscillator architecture that combines digital octave division and a closed-loop approach including a VCO. The VCO covers the whole range(4 keyboard octaves + approx one more for the “digital modulation” feature), but being within a closed loop, it is stabilized to some degree. The details will be topic of a later blog post. For now we only need to know that we need a digital word that determines the octave and a control voltage to drive the VCO to one out of 12 semitones.

Even without the use of a processor (the 1020 does not have a computer of any kind) it would be straight forward: scan the 49 keys, somehow divide the number of the pressed key modulo 12, the result will be the (already digital) octave number, the remainder drives a DAC to generate the CV.

This “somehow” was actually done by using synchronously counting registers – a chain of 2 binary counters, one turning over at 12, the other incrementing whenever the first one turns over, and a chain of shift registers scanning the keys. The first “high” (pressed key) in the serial pulse train from the shift registers will latch the counter outputs in the next cycle, so we have a low-note priority here.

The counters mentioned above drive the octave control word and a digital-to-analog converter built from two 4051 multiplexers and a chain of accordingly weighted resistors. The reference voltage to that chain is generated on the main board and derived from the setting of the tune knob and the pitch bend slider.

For modulation purposes, an offset is digitally imposed. Since the modulation source from the main board is an analog control voltage, analog-to-digital conversion is necessary. A discrete A/D converter was built from a constant current source generating a linear voltage ramp on a capacitor. This slope is than compared with the modulation voltage in order to reset the above mentioned counters, thereby shifting the generated octave control word and the control voltage. With this approach it is possible to modulate the pitch across an octave border, whereas the analog part of the oscillator control would be limited to variation within an octave.

The comparator in this A/D converter is built from discrete transistors, yet integrated into a CA3086. The same circuit, but under processor control, can be found on the analog panel board (ANIN) of the Wave Computer 360!

Here’s the component side of the keyboard PCB:
PPG 1020 keyboard PCB components side

While the copper areas in the right top and middle right are of no electrical use, the long copper stripe on the lower edge is actively driven by a delayed clock signal. One might wonder what the reason for this could be – a view on the solder side and some circuit analysis reveals the secret:
PPG 1020 keyboard PCB solder side

Every key has a 2x1cm big copper area connected to the J-wire on the opposite side. Electrically, each key is capacitively coupled to a delayed clock signal – a signal that is logical “0” whenever the shift registers sample the key lines. This loose coupling is easily overriden by a J-wire touching the bus bar, which is connected to the positive supply voltage by a resistor of just 1k.

The last question about this is: was this only done to eliminate the need for 49 pull down resistors (the shift registers are CMOS devices and would not work properly with open inputs), or were other aspects like debouncing in mind?

A 3.3meg resistor added between one key line and ground suggests that the capacitive pull-down idea did not work 100%.

 

Oberheim FVS-1 restoration project

Featured

A nice, but completely not working Oberheim Four Voice came to the workshop some time ago.

First of all, the power supply had to be repaired and converted to 230V mains voltage by using a toroid transformer.
It has been mounted to a small sheet of Al metal to avoid drilling additional holes into the Obie.

After repair and installation of the power supply PCB, the main part of the restoration might begin

(PSU photos to follow)

Every module on the front panel will undergo a thorough treatment: all potentiometers will be removed, opened, cleaned, lubricated and tested. PCBs will be cleaned, checked for cracked solder connections, switched will be cleaned and lubriatced. Electrolytic capacitors will be replaced, and as this model used a special type of film capacitors which tend to crack (sometimes called tropical fish caps due to their color stripes indicating their capacitance value), also the film capacitors will be replaced. Actually several have broken apart from their leads by the slightest touch, so they are no way reliable for continued service. Poor fish.

 

The polyphonic keyboard assigner

This module scans the 61 key keyboard and assigns the generated CV and gate signals to the 4 SEM modules according to the adjustments made on the front panel.

Actually, it should do so, upon arrival, no single gate pulse was seen, nor a correct CV.
A defective 723 caused most of the logic to be without supply. But once energized, a hand full of dead CMOS chips paved the way to a working assigner.

[Photo to follow]

The Programmer

A special module of the four voice is its programmer. It allows to set up various parameters and store them into an internal memory with 16 places, separately for each SEM.
It also features two ADS envelope generators for the SEM’s VCA and for modulating the VCF.

The parameters are:

  • frequency setting (offset to other sources) for both VCOs and the VCF
  • A-D-S for both envelope generators
  • Frequency of an internal LFO, individual to each SEM (called “vibrato”)
  • Amount of LFO to OSCs (1+2 simultaneously)
  • Amount of 2nd envelope to VCF frequency (called “modulation”)

The voltages are converted by a 6 bit A/D converter and then into a bit stream to be either stored into 2 1024 bit SRAMs or bypassed around the memory in manual setting. Due to this, testing and troubleshooting of most parts of the circuits is possible in real time.

Every of the 2 channel boards of the programmer features 4 proprietary envelope generator ICs which are said to be a predecessor of the famous CEM 3310. It is far away from being compatible though, and the custom Oberheim ICs also have an additional VCA integated to the envelope chip.

This photo shows the programmer stacked together, with the channel 3&4 board on top. Some CMOS ICs as well as several LM324 had to be replaced here. The cermet presets are kept in place, while the rarely used carbon track presets are to be replaced.

One potentiometer on the programmer’s front panel unfortunately had a severe crack in the resistive track, so I had to mix up parts of the original potentiometer with the track of a brand new 24mm Alpha brand pot.

A set of new T1 3/4 light bulbs completed the programmer.

The output mixer

The Four Voice has an active output mixer with individual volume and pan controls. Apart from cleaning the potentiometers, two of the used µA741 op amps were defective, one had zero output, the other a large offset.
I decided to use NE5534 with approproate compensation here, whereas all other op amps remain original for sound reasons.

The SEM

The hearts – the FVS has four of them – is the famous Oberheim SEM synthesizer module. Once intended for enthusiasts as an add-on to their modulars, it has all relevant connections on Molex connectors on its back side. Several of them are internally routed to other modules, but a modification of this FVS is also in preparation, making it into a modular hybrid.

First of all, the SEMs need to be restored to a working state. Potentiometer cleaning is a bit more complicated because of the special pots used for coarse and fine setting of the VCO frequency.
Here’s how this potentiometer looked when disassembled:

 

After potentiometer and switch maintenance the SEMs will be “re-capped”, tested and repaired where necessary.

I got one working SEM in a break-out case in addition to verify things which was told to sound a lot better than the SEMs of a Two Voice that I have not looked at so far.
So I compared the SEMs from the FVS with the stand-alone SEM and found that the single SEM was lacking a 150nF capacitor in the gate input circuitry that were present in the FVS SEMs.
I wonder which impact this capacitor might have on sound – it clearly slows down the slope of the gate signal to the trigger circuit and envelope generator.
Will it affect the “snappiness” of a short attack time to an audible extent? Hard to say from the circuit, probably from simulation, but to make things clear I will do some testing once the first SEM is up and running.

Here’s the additional capacitor (no comments on my artwork!)

SCI Pro One – another approach to MIDI

Back in 2007 I developed a replacement PCB for the Pro One’s CPU, not knowing of parallel work on the other side of the ocean.
I planned it to be mounted below the main PCB, just where the old CPU was, but on the other side, but accidently made the PCB too big so that I had to use flat cable to install it.

Some five years later I got another Pro One in need for a new CPU but also for MIDI, so I re-designed the PCB, still with a DIP CPU so that it still needs to be mounted below the mainboard, but now with the correct dimensions.
Keeping in mind that there a much smaller plug-in replacements on the market, I left it this way to allow for DIY building of those daring to solder SMD resistors, but not fine pitch processors.

Here’s the result:

Except from emulating all of the original Pro One’s functions, it can…

Normal and Retrig Mode:

  • use keyboard and MIDI IN in parallel
  • send every key press via MIDI OUT (also in Normal mode, where only lower notes will sound due to low note priority)

Arpeggiator Mode (which has priority over Sequencer Mode in this version, by the way):

  • use keyboard and MIDI IN in parallel during normal and latch mode
  • send the note on/off’s via MIDI OUT as they are played by the arpeggiator, including additionaly hold notes in latched mode

Sequencer Mode:

  • use keyboard or MIDI IN for sequence entry while recording, transpose with keyboard or MIDI IN while playing
  • sends notes via MIDI OUT when local keys are pressed while recording and the notes as they are played while playing
  • offers two independent 100 note memories
  • sequencer memory is non-volatile (saved once leaving the record mode)

The MIDI channel is set by holding down one of the first 16 keys while turning the Pro One on. Every other key will set omni mode.

For the MIDI note assignment I relied on the user’s manual of the Pro One showing the keyboard scale from C0 to C3.
Therefore, the lowest C corresponds to midi #24.

While working on a Rev.1 Pro One one should always keep in mind that the PCB-mounted mains tranformer is much too heavy for the PCB and that the track clearance on the primary side is much too low to comply with any safety standard or electrical code. In this particular case, the transformer was already damaged and had to be replace anyway. This photo shows a possible solution: screw terminal for power cord, protective earth securely bolted to case, fuse in series with mains, double-pole switch with double isolation, toroid tranformer bolted to chassis. The original power connector to the main board has been rewired and re-used.

Sliding again

As if disassembling and cleaning all linear pots  of this ARP 2600 is not enough to deal with, several levers were also broken and missing, together with the caps.

Amadeus from drucke3d.de made a 3D CAD model from the parts of a broken slider pot, evaluated the best production method and had some new levers sintered for me.
The caps could be made on a typical 3D printer.

All parts cleaned, waiting for assembly

Eveything lubricated and put back together

Good sliding action and no dropouts anymore. Mission accomplished 🙂

 

Wave Thinking

Today I analyzed a PROZ84 board from a 2.3 with some “odd” sounds.
There was audible distortion, varying with the pitch and the partial wave number.

The oscilloscope revealed (sorry, no image here) that in cases of highest distortion levels only every other sample appeared on the DAC outputs, while the others were at ~0 volts. Half of the partial wave samples having a value of zero is hardly a problem of the wavetable playback, but most likely to be caused by wrong data in the wave RAM.

It turned out that one of the 74S257’s multiplexers outputs in the write circuit had a stuck low output on RAM address line A0, so only even samples were actually written into RAM, with the odd locations containing what is left in the DRAM’s capacitors – in this case, 0.

 

Update for the Wave 2 modern display firmware

Lately LCD modules showed up that do not comply with the unwritten standard that returning the cursor to home position on a non-shifted display will not take longer than 40 microseconds. The datasheet of the HD44780 controller chip clearly says 40µs up to 1.64ms, with the latter being common for un-shifting shifted displays. A display taking longer than approx 53µs for executing the home command, erratic behaviour will occur.

As the controller originally used in the Wave 2 does not know about shifting, the problem was solved by using a command to explicitely set the cursor position to 0 (zero) instead of the home command.

Here’s the result: