Audio Cassette to Bluetooth Interface (both ways)?

Who is sharing them that way and what are they using to create them? Use the same solution they are using!
The system is already all digital, including the tape storage, except for the actual reading/writing of the magnetic flux. That is, by the laws of physics, analog. Nothing there is “audio” except by accident. The signal going to and from the tape is digital. It just happens to be at audio frequencies. It isn’t stored as audio on the tape, although the tape would sound like a horrible screeching noise if you played it in an audio player.
If you truly want to record this digital data as an audio .wav file, it isn’t that hard. But it IS making it way more complex than it needs to be, and a lot less efficient as well. The digital tape was one of the greatest advantages of those computers that used it (Sharp, Commodore).
You could certainly send the digital data over bluetooth or something else as actual audio data and record it. I’m not sure exactly how to go about that, but it’s a reasonable thing to do and well within the capabilities of bluetooth. But then when you record it with normal CD audio standards, each single bit of recorded data will take up 132 bytes in the .wav file on average, plus the overhead of the file itself.
But I suppose this hobby isn’t about being practical. Have fun!

BTW, my knowledge of the Arduino platform is fairly non-existent. I think it’s 3V logic level (meaning, we could easily repurpose the 5V line from the cassette unit, maybe even better the +12V motor line – and I guess, a voltage divider would be all what was required for this.) Is there a dedicated shutdown sequence (like on the on the Pi) or is it simply power up and down? If so, this could really be a simple drop-in replacement for the cassette unit.
However, the +5V for the sense signal and the 5Vpp for the read signal are above the logic level of the Arduino and some additional circuitry will be required, if I understand this right.

These are typically just audio captures of the original cassettes.
(However, there’s also a more recent “MZF” format for the use with emulators, but not all software is available in this format. If you want to try some of the more esoteric stuff, like the Fortran system – and who wouldn’t want to try this? :slight_smile: – it’s only WAV-files.)

Edit, correction: I just found two versions of Fortran as digital MZF-files.

OK. Things are much clearer now. I didn’t know there was already a lot of stuff done that way.
So, first off the most common Arduinos are 5V devices. Those are also cheapest and usually smallest. They mostly use Microchip (Atmel, rip) ATMega328 chips. They would interface really nice to the 5V logic in the computer and can get their power from it. They don’t take much. And no, there is no fancy startup/shutdown; apply power and go. They take a about a half second or so to get going because of the bootloader code.
The two 5V lines you mention are logic inputs. The Arduino will put out almost it’s full supply voltage on a lightly loaded pin, which would be 5V. Even at 3v3 it would be enough (>2.0) for the TTL inputs in the computer. I think the “sense” line is an input to the computer to let it know the play button is pressed so it knows it can read or write the tape. The 12V motor line could be sensed as you said with some resistor dividers.
You could most likely fit all the electronics into a cassette shell. There are some pretty small arduinos (nano, mini.) You can get really small bluetooth adapters, too. I don’t know a whole lot about bluetooth, but sense its biggest use is probably sending audio, that shouldn’t be a problem. The arduino could format the signal from the computer to what the bluetooth adapter needs to send audio, and convert the bluetooth audio to what the tape read signal is expecting. Shouldn’t be hard to find how to do that, but I don’t have any experience with it. That way you could record and play the wav files on a PC.
Personally, what I myself would do, would be put an SD card on the arduino and store all the wav files locally. You could probably even put an LCD and a couple buttons on it, still fitting into a cassette shell, to select the file you wanted. That might be a bit challenging, but should be reasonably possible.

EDIT: BTW, I would still recommend interfacing to the digital logic rather than to the tape head. You would need to go inside anyway for the sense and motor lines.

I don’t know about the bluetooth part, but can offer some details on the data end of things. Ed’s Audacity suggestion and other techniques to use that audio data were written up in a 2016 Hackaday article and the CASSette IO Utilities are software to do this for pocket computers. The later is especially attractive because it essentially parses what is largely Kansas City Standard (KCS) or variations of it into readable text files on your modern-day machine (and text to audio as well). If you’d prefer hardware decoding, there is a 2018 Hackaday article called “Reading Old Data Tapes, The Hard Way” using discrete components for KCS format data, but I would imagine those lessons learned are applicable to other formats as well (the forum software only allows two links per message so you have to do your own search for that article).

1 Like

Good memory! Here it is:

That restriction is automatically lifted fairly early on: you should see a new badge on your account soon, I think.

Get to trust level 1 by…

  • Entering at least 5 topics
  • Reading at least 30 posts
  • Spend a total of 10 minutes reading posts

If anyone is interested in true digital recording on tape, there is a series of two articles in the Feb and Mar 1977 issues of Byte Magazine. “The Digital Cassette Subsystem,” Part 1 and Part 2 on pages 24 and 36, respectively. A lot of good details on how digital recording works and how it differs from analog/audio recording. Circuits included!

1 Like