Magazine Archive

Home -> Magazines -> Issues -> Articles in this issue -> View

A Digitally Addressed Transposer

for Your Analog Keyboard or Sequencer

Article from Polyphony, April/May 1978


Have you ever been playing your keyboard, or using the sequencer and wished you could change keys at will, any time you wanted, and do it knowing it will be exactly where you want it? From the key of 'C' to the key of 'G' just like that. Well, I have had need of such a black box. About a year ago, I started building up some circuits to do this but did not know if anyone else had need of it so I quit beating my brains out and put it on the shelf.

About a year later Paia comes up with the digital keyboard, and my breadboard comes off the shelf. I now have a black box that not only transposes in any one of thirteen keys, but has a 64 note memory that can be programmed and called for at will.

There are going to be a lot of people out there who will buy digital keyboards and later put it under computer control. Transposing and other goodies will be easy to do. But there are many people out there who are happy with their present keyboards, or may not be able to afford a computer. All I wanted to do is transpose and I didn't want a computer. So I thought I would pass this information along to anyone who would be interested.

I will show in the following paragraphs how this circuit was developed. Figure #1 shows a basic block I started with.

FIG. 1


About eight IC's and all I had was a circuit that, when you pushed a button, held it in the latch and addressed a 4 to 16 line IC, which in turn selected a pot through one switch of the 4016's.

The thirteen push button keyboard is encoded to a BCD code. It then goes to a 4 bit latch. The BCD code is presented to a BCD addressable 4 to 16 line decoder which addresses one of the 4016 switches.

To reduce the IC count, I replaced the 4-4016's with a single CMOS analog multiplexer CD4067. But, go out and try to find or buy one of those CD4607S. You can't find them. Well, if you can't find a 4067, and you don't want to use 4 4016s, then what? Well, how about those 4051s? Gee, where have I seen that chip before? A 4051 is an 8 channel multiplexer. For its operation details, read April, '76 Polyphony. That will work real well, and you don't need a 4 to 16 line decoder because the 4051 is BCD addressable. So now the circuit looks like Fig. 2.

FIG. 2


Now we are down to four ICs but still we push one button, get one note change. That's OK, but can we go one step more? Yes. What if we could find an IC that would store more than one note at a time? Well, there is one I ran across, it's called a FIFO! A what? A FIFO. That is short for First In First Out. Again I say, what is that? A 3341 is a 64 word x 4 bit memory that works in a First In First Out mode. The input and output are completely independent or asynchronous. You can put in 1 word, 10 words, 40 words or all 64 words and walk away and clock them out tomorrow if you want at any speed you want. That's really neat. Well now, that changes our block diagram to look like Fig 3.

FIG. 3


However, you have a problem in that with 64 words to move around, you have housekeeping problems. Well, it's really not a problem on the 3341. You have data input, shift in, data output, and shift out commands. So what does that mean? Any time you push a button on the data keyboard, you enter data on the input pins and at the same time you enter a "shift in" command. You did the same with the latch as in fig 1 and 2, but how do you get it out? Very easy. Clock it out with a clock on the "shift out" pin. For every clock pulse in, out comes the data, one at a time, and they come out in the order you put them in — FIFO. Really neat.

FIG. 4


That means you enter a key change, and clock it out. "Clock it out with what?" you say. Well, how about a sequencer? Look at the patch in Fig 4 and think how it might sound if I punch in thirteen keys on the data keyboard and clock them out. (Note: I have not mentioned that each resistor on the outputs of the 4051 are in series with your Control Voltage that goes with the VCO. Remember, when you put a pot in a series with the control voltage line, it lowers the frequency of the VCO. So, this device switches pre-set pots tuned to half-steps in and out of the circuit.)

Step 1. Set the sequencer for a chromatic progression from C to C... CDEFGABC.

2. Enter data on transposer by pushing buttons 1-14. This will instruct the transposer to sequentially step up by one half-step until the passage has shifted up one octave.

3. Connect trigger input of transposer to the stage #1 gate on the sequencer.

4. CV out of sequencer to input of transposer, out of transposer to VCO.

5. Hit run on sequencer.

6. Sequencer should go from 1-8, then trigger transposer, repeat 1-8, and so on, until the sequencer output raises one octave and shuts off.

Figured out how it would sound? Well, if it was patched correctly, the sequencer would produce a progression of notes that would play a whole scale — starting on C, D, E, F, up to C, then get a trigger pulse. This shifts out the next data change BCD code — which changes resistors, which changes keys to the next half-step. The sequencer repeats 1-8 again and so on. So your 8 step seq. is now 8 x 13 or 104 steps long! WOW.

Besides the thirteen keys on the data enter keyboard, I have put on one more — #14. When this is entered, it outputs a slight negative voltage. This can be labeled "No output", "Pause", or whatever. This is necessary because after the FIFO has emptied its data, the last bit remains on the output pins. So, if the sequencer is still running, it will output the same thing over and over again. So, at the end of your data entered, if you want no output from the VCOs, just push #14 and when the sequencer is done playing your tune, it will flip a negative voltage to the VCOs and cut them off. I find it works well, with no pop or anything. There is also a reset button, so if you enter data from the keyboard and make a mistake, push reset and start over.

When all 64 words are filled, there is an input ready pin that goes high. This is used to turn on an LED, as a visual indication that all 64 words are filled.

There is one more feature I put on. This transposer can of course be plugged into a keyboard, and you can transpose while you are playing. Yes, I know you have a pitch control on the keyboard and VCO, but what if you had two tracking VCOs and wanted to change one while you were playing. Easy. Plug one VCO directly to the keyboard CV and the other VCO into the transposer. Push key #13 which is straight through, and tune both VCOs to the same pitch. Now, one problem. How do you shift out data? You can enter it in from the data keyboard, but how do you get it out? Well, built on the board is a fast read out clock — just a simple 555. With this running, it will shift out data faster than you could ever push data in. So as you are playing, you can hit a new key and transpose while you play. Fig. 5 shows the complete schematic.

FIG. 5A
(Click image for higher resolution version)


CIRCUIT DESCRIPTION:



FIG. 5B
(Click image for higher resolution version)

Diodes 1-25 are used to encode the data keyboard into a BCD code for the 3341. R1-R4 are pulldown resistors for the 3341's TTL input. R5 and C1 are used to put a pulse on the desired input pins of the 3341 whenever a key is pushed down. But remember, we have to have a "shift in" command. By "OR"ing the BCD pins through four more diodes, and conditioning them through Q1 and IC2, we get a shift in pulse of about 8 milliseconds when any key is pushed down. (The keyboard and diodes can be built as a separate module and a 6 conductor wire brought out from the keyboard to the transposer.) After 64 words have been stored, LED1 lights up. Q2 serves the purpose of turning on LED1 when pin 2 of the FIFO goes high. It also blinks on for every "shift in" command to verify that data has been entered. Now we have the chip full of words. We have to get them out. We can do this one of two ways. First you can clock it out from an external sequencer or other clock. With S2 in the "external" position, apply a positive-going pulse to the input of J3. For every clock pulse in, you get a shift out of the FIFO. For sequence use, this external trigger comes from one of the stage gate jacks of the sequencer. It can be made to trigger anywhere you want. I think normally it would be #1. The transposer shifts on the leading edge, so when your sequencer has finished the last stage and returns to #1, the rising gate output from stage #1 will trigger the transposer and change keys. This happens so fast that you don't hear any delay in VCOs, VCA, transposer, or anything.

Next, if you want to use the transposer with your keyboard, remove the signal from J3, and place S2 in "internal" position and the 555 will run and do the shifting out for you. LED2 should come on, indicating the clock is running.

FIG. 6

After a BCD code has been outputted from the FIFO, it must control the on/off switches of the 4051, and that is easy to do. Since the 4051s have 8 switches and we need 14, you must use two. But, how do you turn one off and one on, and visa versa? Well, these 4051s are also BCD addressable with 1-2-4 BCD input. It has a Z output, and an Enable line (Pin 6) that turns all switches off when E = Logical 1, or 5 volts. Let's look at IC #6 and count — 1, 2, 3, 4, - - 7. The BCD at the output of the FIFO looks like Fig #6.

Note: 8 'C', the inversion of this is a '1' so let's apply this to the 'E' input of IC7. Thus, IC7 is off and IC6 is up and running. Now let's put in an eight. So what happens, 8 goes high. The inversion of '1' is '0' so 'E' on IC7 goes low and IC7 is up and running and IC6 is off. The BCDs are paralleled on both 4051 and each receives a count from 0-7. We are almost done.

Inputs and outputs. The 'z' out of each 4051 are tied together and brought out to 108 for buffering and is used as the new C.V. out. 108 also has an offset adjust as is used in the present VCO current converters. The inputs of the 4051 have pots in series with them that set the half steps with the exception of position #1 and #14. #1 is a straight through and #14 is the blank, or 'No output', or 'Pause output', call it what you may. The other side of the pots are tied together and labeled V.C. in. And there you have it??!!! (Note: TTL chips were used for 102, 3, and 4 because they were in my junk box, I suppose CMOS can be used just as well. Power requirements are +9v, -9v, +5v.)

Set up and calibration:

1. Check voltages for proper voltages of +9v + 5v -9v.

2. Place S2 on internal position, LED2 should light, indicating the 555 is running.

3. If you have a scope, check pin 6 of IC4, 74121, for shift out pulses.

4. Push key "C2" on data enter keyboard and use scope or VTVM and check for all '0' on data output pins of FIFO. This should address IC #6 and switch 1 should be closed. Plug up a fixed bias or keyboard control voltage to the VC input, there should be control voltage on the output.

5. Also check for '0' volts on 'E' input (pin 6) of IC6 and 5 volts on 'E' of IC7 (pin 6).

6. Now, with control voltage in, from keyboard, and a VCO hooked up to control voltage out, you should hear your note.

7. Press another key on data enter and this should change BCD code and resistors, and pitch should drop.

8. Calibration of pots: Use the patch shown in figure 7.

FIG. 7


9. Set S2 on "internal". Push 'C' above middle 'A' on keyboard. Push C2 on data enter keyboard. Adjust the fixed bias going to transposer until you zero beat VCO #1 with VCO #2.

10. Push 'B' below 'C on keyboard and push 'Bl or #1 on data keyboard and adjust R.100 for zero beat.

11. Press A# on keyboard, and A# or #2 on data keyboard, and adjust R101.

12. Continue through all 12 pots.

13. There is one more adjustment, offset bias.

14. I guess the best way to do this is now connect the transposers CV into keyboard. (Fig. 8) Press C2 on data keyboard and adjust for zero beat between the two VCOs when high 'C' on keyboard is pressed.

FIG. 8


15. Press 'C' below middle 'A', and now press C1 on data keyboard, VCO1 should drop by one octave, if out of tune adjust offset bias.

16. Repeat steps 13-16.

There are a few options which can be used in some parts of the original circuit. The fast read out clock can be changed from a 555 to a 7413. The 555 has been used in many projects I have made, and they have all given good performance, but they all put noise on the B+ line. This is why I had to run it off of +9 volts, then drop it down with a zener diode. The 7413 does not do this, so it uses less parts.

FIG. 9 MODIFIED CLOCK


Added notes on the operation of the 3341... if you have loaded the 3341, and are now clocking it out, you can also enter new data at the same time, however, you can not put in data when LED is on, this indicates a "full house". However, when the light goes out, you may enter new data..

Also added to this unit was a circuit that turned off the "sync" pulse that comes out of the sequencer. Some VCAs may pop if they are improperly calibrated, and if key #14 is depressed, feeding a negative voltage to the VCOs; this should kill the VCOs. But your Sequencer is still triggering the AR or ADSR, so the VCA may pop if not balanced. So... if you route the sequencer trigger pulses to the transposer, play games with it, and bring it out again, it will function as before, but when #14 is depressed, the VCOs cut off AND no trigger pulses come out. Here is the circuit for that... See figure 10.

FIG. 10 TRIGGER CUT-OFF CIRCUITRY


This does add to the cost of the unit, and is not really required, however, it can add a nice touch to the project.

All parts including FIFO and keyboard can be bought from "James Electronics" for about $25.00 to $30.00.


More with this topic


Browse by Topic:

Electronics / Build



Previous Article in this issue

Expanding the Patchability of the Mini-Moog

Next article in this issue

Patches


Publisher: Polyphony - Polyphony Publishing Company

The current copyright owner/s of this content may differ from the originally published copyright notice.
More details on copyright ownership...

 

Polyphony - Apr/May 1978

Donated & scanned by: Mike Gorman

Feature by Larry Pryor

Previous article in this issue:

> Expanding the Patchability o...

Next article in this issue:

> Patches


Help Support The Things You Love

mu:zines is the result of thousands of hours of effort, and will require many thousands more going forward to reach our goals of getting all this content online.

If you value this resource, you can support this project - it really helps!

Donations for May 2025
Issues donated this month: 0

New issues that have been donated or scanned for us this month.

Funds donated this month: £0.00

All donations and support are gratefully appreciated - thank you.


Magazines Needed - Can You Help?

Do you have any of these magazine issues?

> See all issues we need

If so, and you can donate, lend or scan them to help complete our archive, please get in touch via the Contribute page - thanks!

If you're enjoying the site, please consider supporting me to help build this archive...

...with a one time Donation, or a recurring Donation of just £2 a month. It really helps - thank you!
muzines_logo_02

Small Print

Terms of usePrivacy