Arduino Tape Drive

Hello, new to the forum. I was wondering if its possible to connect a tape head to the arduino and have it write any data at all that can be read back when replayed. Just want to start off as simple as I can because I don't know how to design electronic circuits very well yet, trying to learn. I'm guessing that using the analog pins are best for simplicity. Has anyone done this yet?

Tapes, let me see I'll have to Google that and jog my memory as to what they are :slight_smile:

Unless you have a real good reason to use 10-yea-old technology I'd use an SD card these days.

I'm guessing that using the analog pins are best for simplicity.

Short of using a stack of external analogue hardware I doubt there's any way you can interface directly with a tape head. If you find one with a digital interface and know what interface then you may be able to do it.


Rob

I meant cassette tapes, I was wanting to simply amplify the signals from the tape head and set an analog input threshold, a high signal being 1, low signal being 0, and a medium signal being blank spaces between each bit to separate the bits. If this ends up successful I was going to move up to building a little arduino hard disc. The reason I want to do it is to see if I am capable of doing anything with electronics other than flashy lights and spinning motors.

rawsd:
I meant cassette tapes, I was wanting to simply amplify the signals from the tape head and set an analog input threshold, a high signal being 1, low signal being 0, and a medium signal being blank spaces between each bit to separate the bits. If this ends up successful I was going to move up to building a little arduino hard disc. The reason I want to do it is to see if I am capable of doing anything with electronics other than flashy lights and spinning motors.

To have any reasonable chance of success of doing what you are wanting to do, you are going to have to gain much more experience with electronics; you are attempting a jump from walking, to flying an airplane. It isn't as simple as you think it is. Once you gain the knowledge, you will understand how complex it actually is.

Heck - even just recording a signal and reading it back (ie, using the Arduino to generate tones or whatnot, recorded onto the tape via microphone/line-input, then reading the output back from the tape using the earphone or speaker outputs) would take quite a bit of learning; look into what had to be done back in the old-days with 8-bit computers and tape cassette recorders to get an idea; the circuits, while not overly complex to a seasoned hobbyist, were still not something a beginner should attempt (and ultimately, having access to a scope would help immensely). The main issue is dealing with wow and flutter and other issues with the tape transport that subtly change the frequency characteristics of the recorded sound, making reading back the data difficult (sometime impossible - if the tape has issues due to environmental factors). Even if you solve the hardware end of things - there's still the software to write (back in day, there existed ICs and such designed for this kind of work, but those are long gone unless you luck into an old surplus source); to gain any level of accuracy and amount of data storage, you'll want to encode/decode the data properly (there's various schemes for this in regards to the audio signal to gain the most bpi possible on a cassette tape - which isn't really much to begin with).

For a beginner - the best hope you would have would be to generate and decode DTMF (touch-tone) signals, and record those (again, using a cassette recorder with microphone and earphone jacks); you can easily generate DTMF tones with the Arduino, but to decode them, it is probably best to use something like a LM567 tone decoder IC. Note that in none of this have I said anything about a direct interface to the playback/record head of a tape player - that is well beyond your ability right now.

Maybe you can find some old Commodore64 tape drive, they used some sound encoding, thought they had all amps in place but not sure ... too long ago :slight_smile:

Cheers,
Kari

..in mid eighties we experimented with direct driving the head from a ttl output (via a resistor) and reading back from the head via a simple amplifier and a schmitt trigger. I think it will work, you must use a special coding like nrz. This is the fastes way, you can write ~10kbits/sec (we used a standard cassette recorder).