I was constructing a device to play a modified stylophone remotely and automatically. Using a 16 way analogue switch, the 24-pin 4067 chip, I designed a device where any one of 15 intervals on a 2-octave tonic sol-fa scale would be triggered by changing the chip’s 4-bit binary input.
First of all, I had used a physical control, a 16 position binary or hexadecimal rotary controller; what I needed next to find was chips that could be made to output sequences of 4-bit binary numbers.
There are several of these, and I went for the 4516, which is a pre-settable binary counter. It can, if left alone, repeatedly count upwards from 0 – 15, outputting numbers in binary form (’0 0 0 0′ to ’1 1 1 1′) on the pins marked ‘Q1′ to ‘Q4′ in the diagram below at the speed of a pulse connected to its clock input (Pin 15); or downwards from 15 – 0. But by pre-setting a certain number, in binary form, on 4 extra binary inputs, marked ‘P1′ – ‘P4′ in the diagram, it can also be made to count upwards from this number to 15; or downwards from this number to 0.
This is how the 4516 is usually represented in circuits:
Q1 – Q4, as mentioned above, are the outputs, and P1 – P4 are the inputs for the number the count starts from, both in the form of a binary number. The ‘Preset Enable’, pin 1, is usually held low (0v): when it’s taken high (+v) the number on the inputs P1 – P4 is loaded in and the next count starts from that number. ’Preset Enable’ is sometimes referred to as ‘Load’ for this reason. The ‘Carry Out’ is normally high, but goes low when the count ends.
The ability to count downwards from a set number would be useful for an arpeggiator, which could be set to repeat a sequence with a length of 2 – 16 notes, using the rotary encoder, described in Part 1, connected to the 4 binary inputs to preset the sequence length.
The circuit for this device was extremely simple, requiring only the rotary encoder, a momentary switch to tell the 4516 to load the sequence length number, an on/off switch and two inverters from a 40106 (which has 6 in it altogether) . One of the inverters was connected as an oscillator, which was connected to the 4516′s Clock input: this determines the speed at which notes sound; the other inverter was connected between the ‘Carry Out’ and ‘Preset Enable’ pins: the ‘Carry Out’ is normally high, so the inverter keeps the ‘Preset Enable’ low; when the count ends the ’Carry Out’ goes low and the inverter sends a ‘high’ pulse to the Preset Enable, reloading the start number.
Pin 10 is connected to 0v in this circuit, which tells the 4516 to count down, not up: this was the easiest way to make sure it counted the right number of notes in the sequence.
In fact, counting up or down would result only in a scale or part of a scale being played, so I made the output a bit more interesting by reversing the 4 outputs. Instead of connecting the A output of the 4516 to the A input of the 4067, the B output to the B input, etc., I connected it so that A B C D were connected D C B A. In essence this meant that consecutive notes in the sequence would not be consecutive notes in the scale, which I thought would be more interesting.
This produced method 2 of controlling the Stylophone: automatic arpeggiation.
The third method of controlling the Stylophone automatically used 3 more of the inverters in the 40106 which had been used for the 4516 clock and ‘Carry Out’ inverter. The inverters were wired as oscillators.
This was the idea that came from the ‘Slacker Melody Generator’, described at http://electro-music.com/forum/viewtopic.php?t=27239&postorder=asc&start=50. Each of the 4 oscillators is connected to one of the 4 inputs of the 4067; each runs at a different speed, changing the value on that input from low to high, or 0 to 1. The different successive combinations of 0s and 1s produces a random melody, which can be changed by adjusting the speed of the oscillators, increasing or decreasing the rate at which each particular input changes from ’1′ to ’0′.
The reason the four oscillators have two capacitors each is simply because the original circuit I used suggested values of 220n; I soldered these in place, but the oscillators seemed to run too fast for my liking, and it was easier to add new ones in parallel than take the old ones out and replace them. The result of putting capacitors in series is the opposite of putting resistors in series – instead of the overall value decreasing, it increases; the capacitance is larger and the oscillators run slower.
Having put the 4067 and the five DPDT switches in place, I then had to connect the relevant input/outputs to 24 different resistors, in a chain (or ladder) like the original one inside the stylophone. I suppose it would have been possible to calculate the exact resistances, but I had some time ago obtained a hundred 10k presets for about 7p each, for exactly this kind of situation, so decided to use those and tune it by ear.
This took some time, but at the end of it I had a substitute resistor chain for the SoftPot Stylophone and some methods of controlling it automatically.
It then occurred to me that with this arrangement, all this extravagance could only control one stylophone at a time, so I had a think about how to connect more instruments (and possibly instruments other than stylophones!).
The way to do it, it seemed to me, was to use the binary inputs to the 4067 as an output: any device could then be controlled, just by installing the 4067 and the five ‘major/minor’ switches in it – or perhaps some other suitable arrangement.
So I added two 5-pin DIN sockets as outputs, the five terminals being A, B, C, D and 0v. Each of the four A, B, C, D outputs was buffered, using four of the six buffers in a 4050. The 4050 is similar to its sister chip, the more well-known 4049; but whereas the 4049 inverts its outputs, the 4050 doesn’t. This chip has even cleverer properties, which I will be using in a later project, but here I used it to ensure the binary outputs were of sufficient strength to make their way through a connecting cable and satisfactorily operate external circuitry.
I also added at this stage Clock In and Clock Out sockets, which would enable Bigfoot to set the tempo of a piece involving different instruments, or follow the tempo set elsewhere. These two input/outputs passed through the remaining two buffers on the 4050.
The final thing was to add two more 5-pin DIN sockets, this time as inputs. This would enable external circuitry to control the 4067s. I had several more ideas of suitable external devices which could be used to do this, and I hope to be able to get around to making these quite soon.
The only other unusual component needed to get all this to work was a suitable master switch, to select the various external and internal inputs to the 4067s. This had to have 4 poles – the A, B, C, D binary inputs – and 5 positions. 4 pole, 3 way rotary switches are easy to come by, but 4 pole, 4 or 5 way are not. Fortunately, I was able to source a 4 pole, 5 way switch on eBay from a supplier in Hong Kong for just a couple of quid, so everything was in place.
With a circuit like this – just a handful of chips and a few external components – you either get a neatly laid out PCB or a rats’ nest of wiring. I ended up with a rats’ nest of wiring . . . however, it worked, even when crammed into the case, with the addition of an extra section underneath the ‘big foot’ I had selected.
This picture shows the two binary input sockets on the left. The 5 way switch is the knob on the front of the Bigfoot, just the right of centre in this picture.
Due to a certain amount of experimentation along the way, some changes of mind about the functions, and some difficulties in getting all the switches and sockets to fit, there were some extraneous holes which I had drilled in the case. The plastic frogs are there to hide the holes. I also added a square of velcro on the back where I could attach a battery holder, as I had done with a number of previous projects.