Arduino und Python: Bastler nimmt Audiokassette als Speichermedium für Retro-PC

Die Kassette kann nicht nur Lieder speichern, sondern auch Bitmuster. Ein Bastler baut dafür eine Schnittstelle mit 1,5 KBit/s Datenrate.

Artikel veröffentlicht am ,
Kassetten speichern auch Daten, nicht nur Neunziger-Hits.
Kassetten speichern auch Daten, nicht nur Neunziger-Hits. (Bild: Pixabay.com/Montage: Golem.de)

In Zeiten, in denen Bits elektronisch auf Flash-Speichern geschrieben werden, geht der Bastler Zack Nelson in der Zeit zurück. Er baut als Hobbyprojekt (via Hackaday) einen Retro-Computer, der Daten von einer Audiokassette lesen und auf diese schreiben kann. Dazu konstruiert er ein spezielles Interface, das ein eigentlich analoges Signal kodiert und dekodiert, sodass es als digitaler Bitstream genutzt werden kann. Dabei helfen ein Arduino Nano und die Programmiersprache Python.

Stellenmarkt
  1. Sachbearbeiterin / Sachbearbeiter IT-Sicherheit für die Sparte Organisation und Personal (w/m/d)
    Bundesanstalt für Immobilienaufgaben, Bonn
  2. IT Support Specialist (m/w/d)
    NetCare Business Solutions GmbH, Neustetten
Detailsuche

Zunächst ist es wichtig, ein Audiosignal für die Bitspeicherung aufzubereiten. Laut Nelson kann das Magnetband einer Audiokassette im Bereich von 400 bis 4.000 Hz Signale verarbeiten. Deshalb führt das Interface die differentielle Manchester-Kodierung ein, die den Signalausgang mindestens ein mal pro Bit umkehrt. Dadurch soll gewährleistet sein, dass ein Signal von 1.000 Hz sicher und fehlerfrei auf dem Medium gespeichert werden kann.

1,5 KBit/s sind drin

Außerdem versendet das System Pakete nach dem relativ simplen 8-n-1-Muster, mit einer Null als Start-Bit, acht Datenbits und einem Stop-Bit. Für den Schreibprozess stellt Nelson ein Python-Script bereit, das auch von Interessenten auf Github eingesehen werden kann.

Das Signal wird vor der Dekodierung von etwa 1 Volt auf 5 Volt verstärkt. Anschließend definiert Nelson zwei Grenzwerte: Geht das Audiosignal über 2,6 Volt, soll das als digitale 1 gelten. Bei unter 1,5 Volt wird eine 0 dargestellt. Ändert sich der Zustand nicht, dann soll das Signal bei etwa 2,5 Volt verweilen. Die Pufferzone von 0,1 Volt nach oben und 1 Volt nach unten soll der Rauschminderung dienen und so eventuelle Bitfehler vermeiden.

Golem Karrierewelt
  1. Linux-Shellprogrammierung: virtueller Vier-Tage-Workshop
    20.-23.03.2023, Virtuell
  2. Green IT: Praxisratgeber zur nachhaltigen IT-Nutzung (virtueller Ein-Tages-Workshop)
    30.11.2022, virtuell
Weitere IT-Trainings

Auf dem Arduino Nano wird ein kodiertes Signal anschließend dekodiert. Ein Python-Script hört das Synchronisationssignal ab und kann so die Intervalle erkennen, in denen Bits über die serielle Schnittstelle gesendet werden. Mit dieser Methode kann das Interface immerhin eine Symbolübertragungsrate von 3.000 Baud - durch Manchester-Kodierung also etwa 1.500 Bit pro Sekunde (1,5 KBit/s) - erreichen.

Die Ressourcen, Scripts und Dokumentationen stellt der Bastler auf Github zur Verfügung, sollten sich Interessenten finden, die Daten ebenfalls auf Kassetten schreiben möchten.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Askaaron 26. Okt 2021

Ein Arduino ist das genaue Gegenteil von "Retro" - die erste Version davon kam erst 2005...

gelöscht 25. Okt 2021

Vielleicht ist der Redakteur eher jüngeren Jahrgangs... (sorry wenn es nicht so ist!)

x2k 25. Okt 2021

Mit moderner Technik bzw einem komplett neuen laufwer könnte man ja mal drüber nachdenken...

marcelpape 25. Okt 2021

Jetzt weißt du, wie Tandberg Data als Abspaltung vom ursprünglichen Tandberg...



Aktuell auf der Startseite von Golem.de
Cybermonday
CPU-Kaufberatung für Spieler

Wir erklären, wann sich ein neuer Prozessor wirklich lohnt und wann man doch lieber warten oder in eine Grafikkarte investieren sollte.
Von Martin Böckmann

Cybermonday: CPU-Kaufberatung für Spieler
Artikel
  1. Facebook-Mutterkonzern: Meta muss 265 Millionen Euro Strafe zahlen
    Facebook-Mutterkonzern
    Meta muss 265 Millionen Euro Strafe zahlen

    Die Datenschutzbehörde in Irland hat das vierte hohe Bußgeld gegen den Facebook-Konzern Meta in gut einem Jahr verhängt.

  2. Netzwerkprotokoll: Was Admins und Entwickler über IPv6 wissen müssen
    Netzwerkprotokoll
    Was Admins und Entwickler über IPv6 wissen müssen

    Sogar für IT-Profis scheint das Netzwerkprotokoll IPv6 oft ein Buch mit sieben Siegeln - und stößt bei ihnen nicht auf bedingungslose Liebe. Wir überprüfen die Vorbehalte in der Praxis und geben Tipps.
    Von Jochen Demmer

  3. Black Week - E-Learning-Pakete zum halben Preis
     
    Black Week - E-Learning-Pakete zum halben Preis

    Nur noch bis Mittwoch, 30. November! Geballtes IT-Know-how durch E-Learning-Kurse - für nur 50 Prozent des regulären Preises!
    Sponsored Post von Golem Karrierewelt

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Monday bei Media Markt & Saturn • Nur noch heute: Black Friday Woche bei Amazon & NBB • MindStar: Intel Core i7 12700K 359€ • Gigabyte RX 6900 XT 799€ • Xbox Series S 222€ • Gamesplanet Winter Sale - neue Angebote • WD_BLACK SN850 1TB 129€ [Werbung]
    •  /