Cassette Interface Assistance

Tony Duell ard.p850ug1 at
Tue Feb 28 11:43:35 CST 2017

On Tue, Feb 28, 2017 at 5:12 PM, Tapley, Mark via cctalk
<cctalk at> wrote:
> On Feb 28, 2017, at 9:55 AM, Jim Brain via cctalk <cctalk at> wrote:
>> Analog, which is my nemesis, curses me again.

I fail to see how anyone can be a good digital designer and not
understand analogue

>> I have a cute idea for a cassette port project for the Tandy line of computers
>> (the ones with the cassette port).  I have a Coco 3 on the bench, so I scoped
>> the output line while doing 'csave "jim"'.  The signal looks to be just under 1V
>> PtP (0-1V on the scope), and rests at about .3V when not sending data.

That sounds about right. IIRC the CoCo 3 uses a custom chip that contains a
6 bit DAC for this. Older machines just use a couple of TTL output
port lines and
a few resistors. The CoCo3 service manual suggests the output is 1V peak-to-peak

>> I have tried 6 different ways to boost the signal to 5V digital, to no avail, and so
>> I ask humbly if someone with analog knowledge might be able to assist.
> Warning, I am not an electrical engineer at all, only opinionated.
> What about:
> (analog out) -> A/D conversion -> tight software loop -> D/A conversion -> (analog in) ?

Oh for $deity's sake. Why does everyone now insist on using a million components
when a dozen will do? I stick to classic computers to get away from this. In any
case it won't help that much. You should have some analgue 'signal conditioning'
circuitry before the ADC (to get the input signal into the right
voltage range for
the ADC), ditto after the DAC. Otherwise you are wasting the performance of said

To get back to the problem. What do you _actually_ want the output to become? An
analogue signal or a digital one?

An op-amp will boost the signal. Look at the LM324 (a very cheap and common
part, I have chosen it because the input voltage range goes down to 0 so you
can run it off a single 5V supply). You could use it as a *5 amplifier by adding
2 or 3 resistors.

If you want a digital signal then look at a comparator chip like the LM339. This
compares the voltages on the 2 inputs, the output changes state as they pass
each other (if you see what I mean). So you cassout signal to one
input, a stable
voltage of, say 0.5V on the other. There are couple of gotchas with
this chip. The
first is that it has open collector outputs, so you need a pullup
resistor. The second
is that it tends to oscillate at switchover. You can add hysteresis
with a couple
of resistors to prevent this.

Where do you get the 0.5V reference from? Well, if your 5V supply is stable you
can use that, divided down with a couple of resistors. Say 9.1k and 1k in series
across the supply, comparator input to the junction. Or perhaps 0.7V from a
forward biased silicon diode (diode cathode to ground, anode to +5V via a 4k7
or so resistor, take the 0.7V from the diode anode).

Do you have 'The Art of Electronics'? If not buy it. Yes, it's expensive But it
explains all this and more.


More information about the cctech mailing list