Retro Projekt – DiskBuddy 64

Last Updated on 5. July 2026 by Suffocation

USB zu IEC Adapter zum Unschluss eines C64 Diskettenlaufwerks an einen PC oder MAC. Der Adapter kann zum Testen der Laufwerke oder zum Sichern von alten Disketten verwendet werden..

Ich habe die Stick-Version aufgebaut, es gibt auch noch eine mit micro USB Anschluss und DIN6 Rund Buchse, mir gefiel diese Variante aber besser.

Link to the project

Nur zur Klarstellung das Projekt ist nicht mein geistiges Eigentum sondern wurde vom Entwickler mit hohem zeitlichen Aufwand realisiert und der Allgemeinheit zur Verfügung gestellt. Sollte das Projekt gefallen zollt dem Entwickler doch mal euren Respekt mit einem Like oder vielleicht sogar einer (Kaffee) Spende.

Github – DiskBuddy64
Nachfolgeprojekt – Disk Master64

Views

Facts

  • USB zu IEC (Commodore Serial Device) Adapter
  • USB Anschluss für den PC oder MAC
  • Din 6 Rund Stecker für den Anschluss and die C64 Floppy
  • Schalter zum Programmieren der Firmware

Circuit diagrams

Disk Buddy 64 – Schaltplan – What

Documentation

Die serielle Schnittstelle des C64, basierend auf dem seriellen IEC-Bus, dient primär dem Anschluss von Peripheriegeräten wie Diskettenlaufwerken und Druckern in einer Reihenschaltung. Der 6-polige DIN-Anschluss überträgt Daten softwaregesteuert über das KERNAL, was aufgrund von Designbeschränkungen zu geringen Übertragungsgeschwindigkeiten führt, die oft durch Schnelllader kompensiert wurden. Mehr Informationen finden Sie auf der Seite c64-wiki.de

Structure

Record

DescriptionWorth
Gerber available Yes
Gerber fileLink
Ordered whereJLCPCB
Piece10
Price + Tax and Delivery15€
Special featuresLeedfree, Black
PCB order data

Here the Gerber files are stored, please check the original page to see if there is anything newer.

Components

Die Bauteile habe ich beim schnellen Ali und ein Teil bei LCSC bestellt der Preis für eine Einheiten liegt bei ca. 6€ ohne Verbrauchsmaterialien und Arbeitszeit.

ComponentSizeNumberDescriptionPrice €Stock
Record1Meine sind von JLCPCB1,50x
C210u, 06031Kondensator SMD CL10A106MA8NRNC0,10x
C1, C3, C4100n, 06033Kondensator SMD CC0603KRX7R9BB1040,30x
LED1LED06031Power LED Rot KT-0603R0,20x
R1,R21K, 06032Widerstand SMD0,20x
SW1SW-SMD_K3-2380S-E11SMD Schalter mit seitlichen Kontakten0,20x LCSC
U1AT-Tiny 412-SSN,
SOP-8_150MIL
1Atmel-Tiny 412-SSN1,40x LCSC
U2CH430N,SOP-8_150MIL1USB – Serial Treiber0.40x LCSC
USB1USB A, Stecker1USB A Anschlussstecker0,20x
X1Din rund 6 Pol, male1DIN6 Rund Stecker 1,00x
X2Kabel, 4 Pol0,5mDatenkabel für Stecker X10,50x
Bauteile Gesamt14Summer6,00€
Bill of materials

Structure

Variations

Wer denkt den Atmel Controller vor dem Auflöten beschreiben zu müsse, oder später mi einem Klipp, der irrt. Der Atmel Tiny 412 ist mit einer UPDI Schnitstelle ausgestattet und der verbaute Schalter ermöglicht es, ihn über die USB Schnittstelle zu programmieren. Wer mehr dazu erfahren möchte, für den habe ich einen kleinen Beitrag im Sonsiges Kapitel angehängt.

Order

  1. SMD Widerstände und Kondensatoren
  2. SMD ICs
  3. SMD Schalter
  4. SMD LED – nicht weil es in die Reichenfolge passt wondern weil die so nervig zu löten sind, leicht kleben gerne an der Pinzette und sind gepolt ….
  5. USB-A Anschluss und Kabel für den Dinstecker
  6. Din-Stecker an Kabel löten

Commissioning

Driver

Unter Mac und Linux werden keine Treiber benötigt, unter Windows kann es nötig sein den CH340 USB Treiber zu installieren.

Den Treiber gibts unter https://github.com/storef/ch341.driver. Die aktuelle Version habe ich hier konserviert, holt sie euch besser von der Originalseite die Version könnte aktueller sein.

Firmware

Im projekt sind einige Python dateien Enthalten die es einfach machen den Adapter zu programmieren und zu nutzen. Es gibt auch eine Oberflächenanwendung die mit dem folgenden Befehl gestartet werden kann.

python3 diskbuddy-gui.py 

Die UI starten den Adapter auf UPDI stellen und den Knopf Flash Firmware auswählen.

C64 disk Buddy - Oberfläche
C64 disk Buddy – Oberfläche

Danach nicht vergessen den Schalter wieder auf serielle Kommunikation einstellen.

Application

Mit der bereits gezeigten App können Images von Disketten gespeichert werden oder von gespeicherten Images zurück auf Diskette geschrieben werden.

Miscellaneous

Pinout IEC Anschluss

Source: https://blog.projectgalen.com/2020/05/20/c64-128-port-pinouts/

Data sheets

CH340N

Source: https://cdn.sparkfun.com/assets/5/0/a/8/5/CH340DS1.PDF

AT-Tiny 412-SSN

Source: https://www.mouser.de/datasheet/3/282/1/ATtiny212_214_412_414_416_DataSheet_DS40002287A.pdf

Das Unified Program and Debug Interface (UPDI)

Mit der Einführung moderner AVR®-Mikrocontroller-Familien wie den tinyAVR® (Serien 0, 1 und 2), megaAVR® sowie den leistungsstarken AVR® Dx hat Microchip die klassische In-System-Programmierung (ISP) grundlegend abgelöst. An deren Stelle tritt das innovative Unified Program and Debug Interface (UPDI). Während ältere Generationen für den Programmiervorgang oft vier bis sechs dedizierte Pins blockierten, revolutioniert UPDI das moderne Platinendesign durch eine extrem minimalistische Eindraht-Architektur.

Die gesamte Kommunikation erfolgt bidirektional im Halb-Duplex-Verfahren über eine einzige, dedizierte Datenleitung und basiert auf dem standardisierten, asynchronen UART-Protokoll. Dieser hocheffiziente Ansatz spart wertvolle I/O-Pins am Mikrocontroller ein. Besonders bei kompakten Gehäuseformen – wie dem ATtiny im winzigen 8-Pin-Layout – entscheidet dies oft darüber, ob ein Projekt überhaupt realisierbar ist. Neben dem reinen Schreiben und Lesen des Flash-Speichers ermöglicht UPDI über dieselbe Leitung auch ein hardwarenahes On-Chip-Debugging (OCD) in Echtzeit.

Technische Kernpunkte der Schnittstelle

  • Eindraht-Architektur: Die Kommunikation läuft vollständig über eine einzige Datenleitung (UPDI_DATA) plus Bezugsmasse (GND).
  • UART-Protokoll: Da die Schnittstelle intern auf einer asynchronen seriellen Verbindung aufbaut, bleibt der Hardware-Aufwand für Programmiergeräte minimal.
  • Maximale Pin-Effizienz: Eingesparte Programmierpins stehen in der fertigen Schaltung uneingeschränkt als funktionale Ein- und Ausgänge für Peripherie zur Verfügung.

USB-Programmierung in der Praxis

Da moderne PCs und Notebooks keine nativen UPDI-Schnittstellen besitzen, wird die Verbindung im Entwicklungsalltag über USB hergestellt. Dafür haben sich zwei gängige Lösungswege etabliert:

Variante A: Der USB-zu-TTL-Seriell-Konverter (Kostengünstige DIY-Methode)

Hierbei greift man auf einen gewöhnlichen USB-Seriell-Adapter zurück, beispielsweise mit einem weit verbreiteten CH340-, CP2102- oder FT232-Chip. Der entscheidende Kniff für die Eindraht-Kommunikation: Die Sende- (TX) und Empfangsleitung (RX) des Adapters werden über einen einfachen Widerstand (ca. 4,7 kΩ) oder eine Diode miteinander verbunden und an den UPDI-Pin des Chips geführt. Etablierte Softwaretools wie pymcuprog or AVRDUDE steuern den Controller dann direkt über einen virtuellen USB-COM-Port an.

Variante B: Dedizierte Hardware-Programmer

Für professionelle Ansprüche unterstützen offizielle Werkzeuge wie das Atmel-ICE oder das PICkit 4 das UPDI-Protokoll nativ über USB. Sie bieten den Vorteil, dass sie nahtlos in Entwicklungsumgebungen wie Microchip Studio oder MPLAB X integriert sind und echtes Live-Debugging unterstützen. Alternativ existieren spezialisierte, günstige USB-Adapter wie der Adafruit UPDI Friend oder clevere DIY-Projekte auf Basis eines Arduino Nano („jtag2updi“).

Weiterführende Quellen & Dokumentation

Für tiefergehende technische Spezifikationen, detaillierte Schaltungsvorschläge und die praktische Software-Umsetzung stehen Ihnen folgende Fachquellen zur Verfügung:

Offizielle Dokumentation von Microchip

Softwaretools & Praxis-Community

  • AVRDUDE Handbuch (SerialUPDI-Sektion): Das offizielle Benutzerhandbuch (PDF) des mächtigen Open-Source-Tools, das die native UPDI-Ansteuerung über Standard-COM-Ports detailliert erklärt.
  • Python Utility pymcuprog auf GitHub: Das offizielle, schlanke Kommandozeilenwerkzeug von Microchip, ideal für automatisierte Flash-Vorgänge direkt aus Skripten heraus.
  • Praxis-Guide im Elektronik-Labor: Eine praxisnahe, deutschsprachige Schritt-für-Schritt-Anleitung, die zeigt, wie man mit einfachsten Mitteln einen funktionierenden USB-UPDI-Programmer selbst baut.

General Tips

Soldering points

Check the solder joints on the ICs again carefully, preferably with a microscope or magnifying glass, for short circuits and contact. Measure with a multimeter or continuity tester.

For small solder joints on through-hole components, use flux if possible; it makes life easier and increases the quality of the connection.

Problems

Bis jetzt keine 😉

Conclusion

DescriptionWorth
SuccessfulYes
Price per piece~6 €
Soldering time1 hour
FunctionKlasse -Einfache Programmierung des Atmel und durch die UI insgesamt einfache Bedienung
Is it worth itJa – Es gibt auch andere IEC Adapter aber in Verbidung mit der UI werden dies um Längen geschlagen auch wenn sie vielleicht günstiger sind.
RestrictionsWeitere Funktonen müsste in die UI programmiert werden, sollten beispielsweise ein RAW auslesen gewünscht sein.
Conclusion to the project

Related Posts

Sources

To the project

Github

Parts list

Gerber files

Retro pages

https://archive.org – Old software, magazines, manuals, and much more.

https://theretroweb.com – PC Hardware Directory.

https://www.winhistory.de/index.php – DOS, Windows Version Descriptions.

Win 3.1x Tools and Tricks

Retro Forensics

https://forum.classic-computing.de/forum – German/English forum with many retro computer enthusiasts.

https://www.vogons.org – I have found many tips on hardware here, they also have a driver directory.

https://www.dosforum.de – Forum with strict rules and very helpful regarding DOS, Windows questions are not welcome.

https://dosreloaded.de – DOS, hardware repairs, BIOS files and more.

https://www.winhistory-forum.net DOS and Windows history.

Retro Shops

https://ram-co-shop.de - PC parts, including newer ones, have ordered a lot from there and it's always worked.

http://www.amoretro.de – Sold on eBay and has a nice directory of old hardware

https://retroreiz.de – Atari, Nintendo, Sega and others.

https://www.retroworld.info/de – Stickers, signs and more.

https://retesa-nb.de – Older PC hardware

https://www.retro8bitshop.com – C64 tricky

Logbook

DateDescription
24.12.2025Post Created
02.01.2026Teile bei LCSC und AE bestellt. SMD Teile soweits vorhanden aufgelötet
14.01.2026Ali Teile Angekommen
16.01.2026LSCL Teile angekommen
22.01.2026Komplette alle Teile Vorhanden bis auf CH340, in anderem Projekt Pack zu DumpMaster vorhanden.
04.07.2026Eine Platine aufgebaut und infos zusammen gesucht. Pinout für IEC gefunden mit dem man was anfangen kann. IBN war echt einfach.
05.07.2026Restliche platinen gelötet, nochmal auf Platte erwärmt damit sie besser aussehen. Beitrag finalisiert und veröffentlicht.
Revision history