Retro Projekt – Mini Floppy Emulator

Last Updated on 25. Oktober 2026 by sfambachLink-Status: OK

Mal ein sehr schönes Projekt, denn es gibt eine Abdeckplatte in Form einer zweiten Platine. Ansonsten baut es wie die Gotek und viele andere auf dem FlashFloppyLink-Status: OK-Projekt auf.

Achtung, Controller: Der STM32F105R8T6 (64 KB Flash) funktioniert mit FlashFloppy nicht, die Firmware lässt sich zwar flashen, startet aber nicht. Es braucht mindestens 128 KB: STM32F105RBT6 / RCT6 oder den pinkompatiblen Artery AT32F415RCT7. Für reine PC-Laufwerke gibt es eine abgespeckte Version, die auch auf dem R8T6 läuft. Details unter Probleme.

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 mit einer (Kaffee-)Spende.

GitHub-Projekt – konkotgit/Mini-Floppy-EmulatorLink-Status: OK

Ansichten

Fakten

  • OLED-Display 128×32
  • 3 Tasten zum Navigieren
  • Buzzer
  • USB
  • Basis: Gotek-Schaltung mit STM32F105R (alternativ pinkompatibel AT32F415R), Firmware FlashFloppy
  • Images vom USB-Stick, ersetzt ein PC-Diskettenlaufwerk (34-polig)
  • Abdeckung als zweite Platine
  • Lizenz Hardware: nicht angegeben (kein Lizenzhinweis im GitHub-RepoLink-Status: OK)
  • Lizenz Software: FlashFloppy gemeinfrei (Public Domain), ausgenommen FatFs und STM32-USB-Bibliothek (FlashFloppy – Lizenz (COPYING)Link-Status: OK)

Schaltpläne

Dies sind die Schaltpläne des OpenFlops-Projekts. Ich vermute mal, dass diese sehr ähnlich sind, lege aber meine Hand hierfür nicht ins Feuer ;). Die Schaltpläne scheinen sowohl für die STM-Version (STM32F105R) wie auch für den Artery zu gelten, da diese pinkompatibel sind (AT32F415R-Serie (LQFP64)).

Quelle: https://github.com/SukkoPera/OpenFlops/blob/master/doc/schematics.pdfLink-Status: OK

Blockdiagramm

Quelle: https://github.com/SukkoPera/OpenFlops/blob/master/doc/gotek_usb-fde_block-diagram.jpgLink-Status: OK

Gotek USB-FDE - Blockdiagramm
Gotek USB-FDE – Blockdiagramm

Dokumentation

Pinout STM32F105R

Quelle: https://www.alldatasheet.com/datasheet-pdf/download/303545/STMICROELECTRONICS/STM32F105R8.htmlLink-Status: Unbekannt

STM32F105R - Pinbelegung
STM32F105R – Pinbelegung

Zusammenbau

Platine

BeschreibungWert
Gerber vorhanden Ja
GerberdateiGitHub-Link zu den GerberdateienLink-Status: OK
Bestellt woJLCPCB
Stück5
Preis + Lieferung + Steuer~14€ im Großpaket
BesonderheitenBleifrei, Farbe Schwarz
Daten zur Platinenbestellung

Hier konserviert die Gerberdateien, bitte auf der Originalseite schauen, ob es etwas Neueres gibt.

Bauteile

Die Bauteile habe ich beim schnellen Ali bestellt, der Preis für eine Einheit lag bei ca. 8,50€.

BauteilGrößeAnzahlBeschreibungPreis €WE
Platinen2,50
R1, R2SMD 0805, 22Ohm2Widerstand SMD0,10x
R3SMD 0805, 1kOhm1Widerstand SMD0,05x
(Zusatz) BOOT0TH, 10kOhm1Pull-down BOOT0 nach GND, flach auf der Rückseite an J4 (BOOT – GND), ersetzt die Stiftleiste J40,02
RN1, RN2TH, 8x1K2Widerstandsarray, TH, 8 x 1K – 9 Pin0,40x
C2, C3SMD 0805, 22pF2Kondensator0,12x
C1, C4 – C9SMD 0805, 100nF7Glättungs-Kondensator0,42x
U1SMD SOIC-14Link-Status: OK174LS07 – Logik IC0,30x
U2SMD, LQFP641AT32F415RCT7 Microcontroller (alternativ STM32F105RBT6 / RCT6, mind. 128 KB Flash; STM32F105R8T6 funktioniert nicht)2,50bestellt
U3SMD1LM1117-3.3, Spannungsregler0,03x
Y1TH, 8MHz1Quarz, TH, 8 MHz0,26
J1USB A, weiblich1USB A 0,24D
J24×1, Abgewinkelt1Eckanschluss 0,21D
J33×2 Pin Abgewinkelt16 Pol. Pinheader Pins Laufwerkswahl 0,15D
(Optional) J43×2 Pin1Programmieranschluss, würde ich weglassen. Anschlüsse nur einmal in die Löcher stecken, um es zu programmieren.0,15D
J517×2 Pin134 Pol Floppy Anschluss Abgewinkelt0,50D
J6Micro USB1(Optional) Micro USB Anschluss0,14–
J74 Pin, Abgewinkelt, Floppy1Floppy Stromanschluss0,21D
SW1-SW36x6x63Taster abgewinkelt0,66D
128×321Display, OLED, auf Pinout achten1,59D
Buzzer 5V, 6mm1Buzzer 5V, 6mmD
Summe10,55€
Bauteileliste

Aufbau

Varianten

Der Micro-USB-Anschluss scheint optional zu sein, wie auch der Programmieranschluss (siehe Bilder auf der GitHub-Seite). Ich würde sogar empfehlen, den Programmieranschluss wegzulassen, da dieser mit einem Taster kollidiert.

Reihenfolge

  1. Microcontroller + ICs
  2. Widerstände und Kondensatoren
  3. Anschlüsse und Pinheader
  4. Display
  5. Taster

Inbetriebnahme

Firmware

FlashFloppy – Firmware (GitHub keirf/flashfloppy)Link-Status: OK

GOTEK-Laufwerk flashen – STMicroelectronics (sax.de)Link-Status: OK

Flashen unter Linux

Der STM32 hat einen fest eingebauten seriellen Bootloader. Zum Flashen reicht deshalb ein USB-Seriell-Adapter mit 3,3-V-Pegel, ein ST-Link ist nicht nötig. avrdude funktioniert nicht, das Programm ist nur für AVR-Controller. Unter Linux nimmt man stm32flash.

  1. stm32flash installieren (siehe unten).
  2. Adapter auf 3,3 V stellen und anschließen, dabei TX und RX gekreuzt: TX des Adapters an RX der Platine (PA10), RX des Adapters an TX (PA9), dazu GND.
  3. BOOT0 auf +3,3 V legen: Am Programmieranschluss J4 liegen BOOT und +3,3 V nebeneinander (Bestückungsdruck J4: BOOT, +3.3V, TX, RX, GND, JC). Ist J4 bestückt, reicht ein Jumper. Ohne Stiftleiste geht ein Kabel, zum Beispiel vom 3,3-V-Pin des Display-Anschlusses. Dann USB anstecken; einen Reset-Taster gibt es nicht.
  4. Verbindung testen: Es muss „STM32F105/107“ angezeigt werden.
  5. Firmware flashen.
  6. Das BOOT0-Kabel abziehen, USB ab- und wieder anstecken, dann startet FlashFloppy.
sudo apt install stm32flash
stm32flash /dev/ttyUSB0
stm32flash -b 115200 -w flashfloppy-*.hex -v /dev/ttyUSB0

Fehler, die bei mir beim Flashen aufgetreten sind, stehen unter Probleme.

Meldet stm32flash „Permission denied“ für /dev/ttyUSB0, den Benutzer in die Gruppe dialout aufnehmen (sudo usermod -aG dialout $USER, danach neu anmelden).

Für den STM32F105R8T6 mit nur 64 KB gibt es eine abgespeckte Version nur für den PC, ohne Bootloader: FlashFloppy PC Tiny (GitHub sfambach/flashfloppy_pc_tiny)Link-Status: OK. Sie wird genauso geflasht, Updates laufen ebenfalls über diesen Weg. Auf dem R8T6 läuft sie: Nach dem Flashen zeigt das Display „FlashFloppy“ mit Version und „64KB“, die Taster reagieren. Auslesen mit Greaseweazle fehlerfrei, siehe Test.

stm32flash - FlashFloppy PC Tiny erfolgreich auf STM32F105R8T6 geflasht
stm32flash – FlashFloppy PC Tiny erfolgreich auf STM32F105R8T6 geflasht

Konfiguration

Für den PC kommt die Datei FF.CFG zusammen mit den Images (.IMG/.IMA) ins Hauptverzeichnis des USB-Sticks (FAT32). Das Display (SSD1306/SH1106, 128×32) wird zwar automatisch erkannt, steht hier aber zur Übersicht fest drin. Für die drei Taster gibt es nichts einzustellen. Die Laufwerkswahl J3 hat drei Jumperpaare, laut Bestückungsdruck MTR, DS1 und DS0 (DS0 liegt neben der USB-Buchse). Am PC steckt der Jumper auf DS1 (entspricht S1 beim Gotek). Hinter der Verdrehung im Kabel wird das Laufwerk A:, davor B:. Verbesserungsvorschlag: Die Beschriftung ist bei aufgesteckter Abdeckplatine nicht zu sehen und sollte zusätzlich auf die Unterseite gedruckt werden.

# FlashFloppy PC Tiny - Mini Floppy Emulator, IBM PC
# Copy to the root of the USB stick (FAT32), jumper S1.

## Drive
interface = ibmpc
host = pc-dos

## Display: SSD1306/SH1106 OLED 128x32 (I2C 0x3C/0x3D)
# Add -rotate to turn the view 180 degrees, -slow if the OLED blanks.
display-type = oled-128x32
oled-font = 6x13
oled-contrast = 143

## Buttons: left / right / select (3 buttons, no rotary encoder)
# Hold select on an image to open the eject menu (copy/paste/delete).

FF.CFG herunterladen (GitHub sfambach/flashfloppy_pc_tiny)Link-Status: OK

Eine leere 1,44-MB-Diskette lässt sich unter Linux mit dd if=/dev/zero of=BLANK144.IMG bs=1024 count=1440 anlegen und am PC mit format a: formatieren. Am Gerät erzeugt Kopieren und Einfügen im Auswurfmenü weitere Kopien davon.

Treiber

Keine Treiber nötig. Der Emulator verhält sich am PC wie ein normales Diskettenlaufwerk.

Test

Getestet habe ich FlashFloppy PC Tiny auf dem STM32F105R8T6, indem ich den Emulator mit einem Greaseweazle und FluxEngine ausgelesen habe (Format IBM PC, 1440 kB). Das Display zeigt das gewählte Image an, die Taster funktionieren.

  • Mit einem 1,44-MB-Image (MS-DOS 5.0) wurden alle 80 Spuren auf beiden Seiten fehlerfrei gelesen (alles grün). Test bestanden.
  • Am 8088-PC mit dem 8-Bit-ISA-FDC von KiselevLink-Status: OK als Controller wird der Emulator als Laufwerk erkannt, DOS 3.3 und DOS 6.22 booten vom Image. Vorher gab es „Error 40h“, weil das Kabel verdreht steckte (siehe Probleme).
  • Mit einem anderen Image waren die ersten Spuren rot. Das Image passte nicht zum eingestellten Format 1440 kB. Format in FluxEngine und Größe des Images müssen zusammenpassen.
  • Das Auslesen dauert relativ lange (einige Minuten). Das ist normal, denn FluxEngine liest jede Spur über mehrere Umdrehungen bei 300 U/min. Mit einem echten Laufwerk wäre es nicht schneller.
Mini Floppy Emulator mit FlashFloppy PC Tiny am Greaseweazle
Mini Floppy Emulator mit FlashFloppy PC Tiny am Greaseweazle
FluxEngine - Mini Floppy Emulator fehlerfrei ausgelesen, 1,44-MB-Image
FluxEngine – Mini Floppy Emulator fehlerfrei ausgelesen, 1,44-MB-Image

Anschließend noch am Kiselev 8088 getestet: Das Booten von DOS-3.31- und DOS-6.22-Images war, nachdem das Kabel stimmte, ohne Probleme möglich.

Mini Floppy Emulator am 8088 mit dem 8-Bit-ISA-FDC von Kiselev - bootet DOS 3.3 vom Image
Mini Floppy Emulator am 8088 mit dem 8-Bit-ISA-FDC von Kiselev – bootet DOS 3.3 vom Image

Sonstiges

Datenblätter

STM32F105R

Quelle: https://www.alldatasheet.com/datasheet-pdf/download/303545/STMICROELECTRONICS/STM32F105R8.htmlLink-Status: Unbekannt

Generelle Tipps

Lötstellen

Lötstellen gerade an den ICs nochmal genau, am besten mit dem Mikroskop oder Lupe, auf Kurzschlüsse und Kontakt prüfen. Durchmessen mit Multifunktionsmeter bzw. Durchgangsprüfer.

Bei kleinen Lötkontakten bei Durchlochbauteilen möglichst Flussmittel verwenden, macht das Leben einfacher und erhöht die Verbindungsqualität.

Probleme

Firmware startet nicht

Das Flashen hat geklappt, aber FlashFloppy startete nicht. Die Pinbelegung der Platine passt zu FlashFloppy (Gotek-Standard), das Display funktioniert am Arduino. Ursache war der Controller: Verbaut hatte ich einen STM32F105R8T6 mit nur 64 KB Flash. FlashFloppy braucht beim STM32F105 aber 128 KB (32 KB Bootloader, danach die Firmware und am Ende eine Seite für die Konfiguration). Das war mein eigener Fehler: Ich hatte mich vorher nicht informiert, wie viel Flash FlashFloppy braucht. Am Projekt liegt es nicht. Dessen Stückliste nennt nur „STM32F105R“ ohne Flash-Größe, die Anforderung ergibt sich aus FlashFloppy.

Lösung: Einen Controller mit mindestens 128 KB verwenden, also STM32F105RBT6 / RCT6 oder den pinkompatiblen Artery AT32F415RCT7 (bzw. RBT7), den FlashFloppy automatisch erkennt.

Alternative für reine PC-Laufwerke: Die abgespeckte Version FlashFloppy PC TinyLink-Status: OK passt in die 64 KB und läuft auf dem STM32F105R8T6. Damit lassen sich die R8-Chips weiter verwenden. Einschränkungen: nur IMG/IMA, nur OLED-Display und Taster, kein FlashFloppy-Bootloader (Updates nur seriell, siehe Flashen unter Linux). Neuerungen aus FlashFloppy passen nur, solange die rund 1,3 KB Reserve reichen. Die AT32F415RCT7 nehme ich für Laufwerke, die mehr können sollen (HFE, Amiga/Atari, Update per USB-Stick).

BOOT0 ohne Pull-down

BOOT0 geht nur auf den Programmieranschluss (J4) und hat keinen Pull-down-Widerstand. Ohne Verbindung nach GND startet der Controller unter Umständen den internen Bootloader statt FlashFloppy.

Lösung: Die Stiftleiste J4 nicht einlöten, sonst kann sie mit dem Taster kurzschließen. Stattdessen einen 10-kΩ-Widerstand flach auf der Rückseite zwischen den Lötaugen BOOT und GND einlöten. Zum Flashen die Kabel nur in die Löcher stecken und BOOT kurz auf +3,3 V legen, der Widerstand stört dabei nicht.

Flashen: „Failed to open port“

stm32flash konnte /dev/ttyUSB0 nicht öffnen, obwohl der Port existierte und die Rechte stimmten. Die Arduino-IDE lief noch und hielt den Port belegt.

Lösung: Alle Programme schließen, die den Port nutzen. Wer ihn hält, zeigt sudo fuser -v /dev/ttyUSB0.

Flashen: „Failed to init device, timeout“

Mit der Standardrate 57600 Baud kam keine Antwort, danach scheiterten auch 38400 und 19200. Ursache: Der STM32-Bootloader legt sich nach einem Reset auf die erste empfangene Baudrate fest. Nach einem missglückten Versuch klappen deshalb auch andere Raten erst nach einem neuen Reset.

Lösung: Vor jedem Versuch mit gestecktem BOOT0 neu starten. Die Platine hat keinen Reset-Taster, also USB abziehen und wieder anstecken. Danach gingen alle Raten von 9600 bis 115200.

Flashen: Ohne BOOT0 keine Ausgabe

Ohne BOOT0 kommt auf dem seriellen Port nichts an. Das ist normal, denn FlashFloppy gibt dort nichts aus.

Lösung: BOOT0 muss schon beim Einschalten auf +3,3 V liegen, erst dann stm32flash starten.

Flashen: Anzeige „Flash: Up to 256KiB“

stm32flash zeigt beim STM32F105R8T6 „Up to 256KiB“ an. Das ist nur die allgemeine Angabe für die Chip-Familie, der R8T6 hat trotzdem nur 64 KB. Für die normale FlashFloppy reicht das nicht.

Lösung: Keine nötig. Auf den R8T6 gehört die abgespeckte Version FlashFloppy PC Tiny.

Nach dem Flashen bleibt das Display dunkel

Nach dem Abziehen des BOOT0-Kabels blieb das Display beim ersten Einschalten dunkel. Erst nach erneutem Ab- und Anstecken erschien FlashFloppy. Vermutete Ursache: BOOT0 hängt ohne Pull-down in der Luft, der Controller startet dann zufällig im Bootloader (siehe „BOOT0 ohne Pull-down“).

Lösung: 10-kΩ-Widerstand zwischen BOOT0 und GND einlöten.

Fehler 40h am 8088: Floppy-Kabel verdreht

Am 8088 mit dem 8-Bit-ISA-FDC von KiselevLink-Status: OK meldete das BIOS „Error 40h“ (Seek failed). Ursache: Das Floppy-Kabel steckte verdreht. Die Pin-1-Markierung am Floppy-Anschluss des Mini Floppy Emulators stimmt nicht, die am Controller schon. Am Greaseweazle war das nicht aufgefallen.

Lösung: Pin 1 liegt auf der Seite, auf der die Taster sind. Die rote Ader des Kabels gehört also auf die Taster-Seite.

Fazit

BeschreibungWert
ErfolgreichJa
Preis pro Stück~11 €
Lötdauer1,5 Stunden
SchwierigkeitsgradMittel, wegen des Mikrocontrollers (LQFP64, feines Raster), sonst eher einfach
FunktionOK – ist nur halb so teuer wie die Gotek im Angebot
EinschränkungenProjekt nicht gut dokumentiert, aber schaffbar. Integriert sich nicht in einen Computer, ist eine externe oder Werkstatt-/Bastellösung.
Fazit zum Projekt

Verwandte Beiträge

Quellen

Retro Seiten

https://archive.orgLink-Status: OK – Alte Software, Magazine, Handbücher und viele mehr.

https://theretroweb.comLink-Status: Kaputt – PC Hardwareverzeichnis.

https://www.winhistory.de/index.phpLink-Status: OK – Dos, Windows Versions Beschreibungen.

http://www.win31.de/links.htm – Win 3.1x Tools und Tricks

Retro Foren

https://forum.classic-computing.de/forumLink-Status: OK – Deutsch/Englische Forum mit vielen Retro-Computer Enthusiasten.

https://www.vogons.orgLink-Status: OK – Hier habe ich schon viele Tipps zu Hardware gefunden, sie haben auch eine Treiber Verzeichnis.

https://www.dosforum.deLink-Status: OK – Forum mit strikten Regeln und sehr hilfreich in Bezug zu DOS, Windows-Fragen werden nicht gerne gesehen.

https://dosreloaded.deLink-Status: OK – Dos, Hardware Reparatur, Bios Dateien und mehr.

https://www.winhistory-forum.netLink-Status: OK Dos und Windows Geschichte.

Retro Shops

https://ram-co-shop.deLink-Status: Kaputt – PC Teile auch neuere, schon viel dort bestellt hat immer funktioniert.

http://www.amoretro.deLink-Status: OK – Verkauft auf EBay und hat ein nettes Verzeichnis alter Hardware

https://retroreiz.deLink-Status: OK – Atari, Nintendo, Sega und anderes.

https://www.retroworld.info/deLink-Status: Unbekannt – Aufkleber, Schilder und mehr.

https://retesa-nb.deLink-Status: OK – Alte Hardware rund um den PC

https://www.retro8bitshop.comLink-Status: Unbekannt – C64 lastig

Logbuch

DatumÄnderungAutor
25.10.2026Test am Kiselev 8088 ergänzt, Datenblatt AT32F415 in Quellen, Beitrag veröffentlicht
Treiber: keine nötig; Abschnitt nach „Konfiguration“ verschoben (Reihenfolge Firmware → Konfiguration → Treiber)
Fazit: Erfolgreich auf Ja gesetzt, Schwierigkeitsgrad angepasst
Test am 8088 mit Kiselev-ISA-FDC ergänzt (bootet DOS 3.3 und 6.22), Foto
Problem „Error 40h“ am 8088 dokumentiert: Pin-1-Markierung am Floppy-Anschluss falsch, Kabel war verdreht
sfambach
24.10.2026Neues Beitragsbild (fertiger Emulator mit Display)
Bilder des fertig aufgebauten Emulators in Ansichten ergänzt
Jumper J3 (MTR/DS1/DS0) und Belegung J4 nach Bestückungsdruck ergänzt, Verbesserungsvorschlag Beschriftung Unterseite
Am 8088 mit Kiselev-ISA-FDC als Laufwerk erkannt
Test mit Greaseweazle/FluxEngine dokumentiert
Konfiguration für den PC ergänzt (FF.CFG mit Download, Jumper S1, leeres Image)
sfambach
23.10.2026FlashFloppy PC Tiny auf STM32F105R8T6 geflasht (stm32flash, 9600 Baud), Fehler beim Flashen unter Probleme dokumentiert; FlashFloppy PC Tiny startet, Display zeigt Version und 64KB; R8T6 für reine PC-Laufwerke weiter verwendbar (Hinweis + Probleme); Ursache R8T6 als eigener Fehler vermerkt
Abschnitt „Flashen unter Linux“ (stm32flash, USB-Seriell-Adapter) und Link auf FlashFloppy PC Tiny für den R8T6 ergänzt
sfambach
10.10.2026Fehler gefunden: STM32F105R8T6 hat nur 64 KB, FlashFloppy braucht 128 KB. 10 neue Controller (AT32F415RCT7, LQFP-64) beim schnellen Ali für 25 € inkl. Versand und Steuern bestellt, Lieferung voraussichtlich 22.–27.10.2026. Hinweis, Probleme (u. a. BOOT0-Widerstand statt J4) und Bauteileliste ergänzt
Formaler Standard: Titel mit Gedankenstrich, Beitragsbild gesetzt (aus Galerie entfernt), Lizenz Hardware/Software und Infos aus dem Preview in Fakten ergänzt, Auszug gesetzt
Vermerk auf Preview 19070 ergänzt
Rechtschreibung korrigiert: Kommas, Bindestriche, Zusammenschreibung, fehlendes Wort
sfambach
09.10.2026Formale Überarbeitung: Alt-Texte/Bildunterschriften, Link- und Dateititel, Tippfehler, Bauteileliste nach Bauhöhe sortiert (Summe neu), Gerber-Hinweis, Quellen auf List of Sources/Weitere Quellen umgestelltsfambach
03.10.2026Logbuch-Tabelle auf Log-Liste umgestelltsfambach
30.06.2026Versucht, die Firmware aufzuspielen, leider ohne Erfolg.sfambach
29.06.2026Zusammengebaut und ein paar Inhalte hinzugefügtsfambach
09.04.2025Teile komplettsfambach
01.04.2025Bestellt beim schnellen Ali für 46,50€ (mehr als ich hierfür benötige)
Beitrag erstellt
sfambach
Logbuch