Second part of the great build-yourself-a-tape-MIDI-interface thingy.
More moves towards our MIDI-tape interface. Andy Honeybone solders on with part two (yes, we said solders).
THE VILLAGERS had had enough. The flashing lights from the lofty laboratory, the power failures, the missing animals and the terrible blood chilling cries gave them cause to band together and storm the Making Music research headquarters.
"What do you want?" asked Honeybone, a sad wretch whose life was dominated by music technology and drink. The leader of the rabble was pushed to the front. "You've kept us waiting a month", he said "for the second installment of the Tape-MIDI interface, you fiend. What have you got to say for yourself?" Honeybone winced. He could delay no longer. "OK, I'll describe the fsk demodulator, troubleshooting, setting up and how the MIDI clock is reconstituted".
The demodulation of the fsk signal back into a digital clock is performed by the phase locked loop (PLL) chip — the 565 — and a few op amps. First, the signal from the tape is amplified by a factor of ten and passed through a high pass filter with a corner frequency of around 500Hz. This ensures that a low level sync signal can be recovered without it being lost in low frequency tape noise. The op am which deals with this processing is a low temperature dual type (1458C) which is unity gain stable. The filter network is of a linear phase configuration with a minimum settling time for a pulse input. The 3n7 capacitor is a parallel combination of a 2n7 and a 1n.
The inputs of the PLL chip are biased to about half the supply voltage and the signal is applied to the phase comparator. The VCO within the PLL locks onto the incoming frequency and its control voltage is fed to a low pass filter. The VCO tracks between the two frequencies of the fsk signal and a corresponding DC shift results. The 311 comparator converts this shift into a high or low logic state.
The inputs to the transmitter buffer on the UART chip are hard-wired to the MIDI clock value represented by the hex number &F8. The Transmitter Buffer Register Load (TBRL) line of the UART is connected to the output of the 311 comparator. When this line is low, the MIDI clock value is read into a buffer; when the line goes high, the buffer is transmitted serially. As a result, the bursts of the two fsk frequencies are converted into loading and firing the MIDI clock byte.
All that's left is to describe the remaining MIDI output current drivers. The 'THRU' output is taken from the collector of the 'IN' optocoupler. Two inverters from a 7404 package are used to shape the pulse and feed it via a current limiting resistor to the MIDI socket. A further current limiting resistor connected to 5 volts also goes to the socket to supply the juice to the MIDI input at the other end of the cable. MIDI 'THRU' and 'OUT' sockets have the centre pin (2) earthed. MIDI 'IN' sockets should not be earthed as this would undo the isolation of the opto link and create hum loops. The MIDI 'OUT' circuitry is identical except for a shared inverter.
It's best to construct the unit in small easily tested bits or else you could end up in a mess. I'm assuming that you have a small power supply giving 5 and 12 volts. If you're capable of attempting this project, then I'm sure it's something you can sort out for yourselves.
The crystal clock and dividers are a good place to start building and if you have access to a 'scope you're laughing, otherwise you could listen to the fsk output to confirm things were ticking. Next, wire up the MIDI 'IN' isolator and the UART. At this stage you can feed the unit with a MIDI clock and check with a meter that the &F8 byte is appearing at the outputs. If this is not the case, first check that your sync source is sending clock bytes only and, if that's OK, try adjusting the collector resistor on the input optocoupler.
The MIDI clock decoder and monostable can then be built and a 'scope or audio check on the fsk output will confirm success (a clean whistle changing to a buzzy tone when a MIDI clock is connected). This done, the next stage is to build the rest and record a good long length of fsk sync signal (-7dB) for setting up.
The only adjustment is to set the free running VCO frequency using the variable resistor which should initially be set about half way. With a drum machine set to MIDI sync and connected to one of the outputs of the unit, start the tape with the pre-recorded fsk signal. Remember to press 'start' on the drum machine and adjust the resistor until the machine runs evenly (ie without going berserk and changing patterns on its own).
Now for some tips on using the interface. Fsk sync tones in general are susceptible to dropouts, recording and playback levels and differences in record and playback speeds. Also tape splices are out. The sync signal should be recorded straight with no dbx, Dolby or any other processing. If you are working in a big multitrack studio, allow for a guard track next to the sync track to prevent it leaking into the music. With a four track home recorder, try to record a very low level sync track (-15dB worked well with this unit) but check that the sync can be read for the length of the song before you record any 'once in a lifetime' performances. Tempo changes can be 'played' manually during the recording of the sync track — the unit has no problem following on playback. Finally, don't expect the unit to be able to generate a reliable clock from a sync code that starts right at the beginning of the song. At least 5 seconds sync ahead of the start is needed to allow the unit and tape machine to stabilise.
Even if tape sync is not for you, the unit contains the necessary building blocks for a MIDI to 24 ppqn clock converter (output of the 4001, pin 3) and, with a little interface circuitry, a 24 ppqn to MIDI clock converter. No praise, please — just throw money.
Feature by Andy Honeybone
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!