Arduino Uno - Floppy-Musik
Verfasst: Mo Dez 14, 2020 10:02 pm
Mit Diskettenlaufwerken zu Musizieren ist für uns Amiganer zwar ein alter Hut, das haben wir vor grob 15-20 Jahren schon ausgelebt – und wurde ja vor einiger Zeit wieder entdeckt.
Die PC’ianer haben ja mittlerweile aufgeholt und übertreiben es gleich mal mit teilweise 12 Laufwerken gleichzeitig...
Ich habe mich nun damit auch mal befasst und mir zum Einstieg das "Arduino Uno" zugelegt (etwa 20 Euro in Amazon, Bucht, usw - Empfehlung für zuverlässigen Lieferant nur per PM, zwecks 'Schleichwerbung')
Per Vorgabe sind 1-6 Diskettenlaufwerke gleichzeitig ansteuerbar.
Ich habe mir einige TUTs in Youtube angesehen, darunter:
http://www.youtube.com/watch?v=BfFFL0tE-3s
http://www.youtube.com/watch?v=w6tuMn5sPyM
... und viele mehr ...
Aber keines ist wirklich ausführlich genug oder auf dem aktuellen Stand, so muss man sich zu viel selbst zusammen reimen und Zeit aufbringen (mich hat die mangelhafte Beschreibung seitens der Software grob 5 Stunden meines freien Tags gekostet!!!)
Somit habe ich mich nun dazu entschlossen, hier ein HauZu aufzubauen das jeder, der mindestens 2 Drähte zusammenlöten kann, hinbekommen sollte
Denn, die Software bietet einige Fallstricke, denen auch ich unterlegen war.
Ganz wichtig! Ich beschreibe alles aus meiner Perspektive, habe alle Schritte an einem zweiten Rechner nach dieser Beschreibung hier nachvollzogen. Aber auch hier kann manches blind untergehen. Bitte um Hinweise, um das HauZu hier zu komplettieren!
Auch wäre nach erster Fertigstellung dieses HauZu ein weiterer gemeinsamer Thread nützlich, um alles Weitere zu besprechen.
Was man benötigt:
1. Das Arduino Uno
2. ein 5V Netzteil*²
3. Einiges an Drähten
4. Die Software!
- Adruino Software, Version 1.01 oder Version 1.03 (ca 90 MB)
- die TimerOne V9
- die MoppyDesk: https://github.com/SammyIAm/Moppy/ hier klickt Ihr auf [ZIP] um das aktuellste Archiv zu bekommen!
- Eie Java Entwicklungsumgebung (SDK) von hier zum Beispiel: http://www.oracle.com/technetwork/java/ ... index.html Ich habe die "Java Platform (JDK) 7u11" geladen, mit der funktioniert es.
(Agreement anklicken, dann die x86 oder x64 Version laden, ca 88MB)
- Netbeans: http://netbeans.org/downloads/ , hier reicht die "Java SE" mit ca 77 MB aus.
*²: abhängig der Anzahl der Floppys, sollte das schon ein paar Ampere liefern können. 6 Laufwerke, wie bei mir, zwingen ein 2A Netzteil in die Knie. Man glaubt nicht, wie viel ein Floppy an Strom ziehen kann, wenn der Stepper gequält wird
Um Midi Dateien (von denen die Laufwerke abdudeln) einfach zu bearbeiten, wird AnvilStudio empfohlen. Hier lassen sich dann die vorliegenden Midi Dateien anpassen:
- Anzahl der Kanäle / Spuren
- 'Pitchen' der Spuren (die Laufwerke können nur ein gewisses Frequenzband wiedergeben)
- Schneiden, Spuren umbelegen, usw usf.
Da ich damit auch erst angefangen habe, halte ich mich iMo noch an die Programme. Finde ich später ein besseres oder nützlicheres oder alternatives Programm, ergänze ich dies hier.
Das Arduino UNO Board und die Belegung:
D_0 - n.b.
D_1 - n.b.
D_2 - Laufwerk #1 - Pin 18
D_3 - Laufwerk #1 - Pin 20
D_4 - Laufwerk #2 - Pin 18
D_5 - Laufwerk #2 - Pin 20
D_6 - Laufwerk #3 - Pin 18
D_7 - Laufwerk #3 - Pin 20
D_8 - Laufwerk #4 - Pin 18
D_9 - Laufwerk #4 - Pin 20
D10 - Laufwerk #5 - Pin 18
D11 - Laufwerk #5 - Pin 20
D12 - Laufwerk #6 - Pin 18
D13 - Laufwerk #6 - Pin 20
GND - Gemeinsame Masse, an jedes Laufwerk Pin 17&19 bei Laufwerken mit reduzierten GND Pins, den nächst verfügbaren nehmen)
Über die "analogen Anschlüsse" können noch einmal weitere 3 Laufwerke angeschlossen werden:
A0 - Laufwerk #7 - Pin 18
A1 - Laufwerk #7 - Pin 20
A2 - Laufwerk #8 - Pin 18
A3 - Laufwerk #8 - Pin 20
A4 - Laufwerk #9 - Pin 18 !Funktionierte bei mir jedoch nicht!
A5 - Laufwerk #9 - Pin 20 !Funktionierte bei mir jedoch nicht!
In meinem Fall reichen mir aber auch 8 Laufwerke. Das entzerrt den Aufwand bei manchen Midi Dateien schon gewaltig.
Am Floppy selbst muss nur die 5V angelegt werden, die 12V (gelb) sind nicht nötig. (Evtl bei sehr sehr alten 3,5" Laufwerken, die aber schon wegen ihrer Rarität und der trägeren Mechanik bei der Auswahl aus dem Raster fallen)
(rot = +5V, schwarz = Gnd)
Weiter muss am Floppy noch der Drive-Select gebrückt werden, damit das Laufwerk auch die Steuerbefehle sofort akzeptiert und umsetzt. Hierzu einfach einen Jumper auf Pin 11+12 aufstecken.
(manche verlöten alles, ich bevorzuge es zu stecken. So kann man auch schnell mal ein Laufwerk austauschen usw)
Belegung Floppy-Anschluss:
Bei meiner Verdrahtung habe ich auf die "digitale" Seite des Arduino UNO eine Stiftleiste aufgesetzt, von geschlachteten Front-LEDs von alten Rechnern die 2poligen Kabels genommen, und aufgelötet.
Für den GND (Masse/Minus) nahm ich Jumper mit "offenem Kopf" (also jene, bei denen man Testkabel anklemmen könnte) und habe hier einen Draht angelötet der zum GND des Arduino führt. Hiermit verbinde ich nun Pin 17+19 an jedem Floppy.
Hier noch vom ersten Versuchsaufbau!)
Und hier mein fast fertiger erster Aufbau: Das alleine reicht natürlich nicht aus! Man benötigt noch einen passenden Resonanzkörper. Denn hier verhalten sich die Laufwerke wie ein Lautsprecher ohne Gehäuse. Ein Karton reicht anfangs vollkommen aus.
Mein endgültiges Projekt werde ich hier noch posten.
Die PC’ianer haben ja mittlerweile aufgeholt und übertreiben es gleich mal mit teilweise 12 Laufwerken gleichzeitig...

Ich habe mich nun damit auch mal befasst und mir zum Einstieg das "Arduino Uno" zugelegt (etwa 20 Euro in Amazon, Bucht, usw - Empfehlung für zuverlässigen Lieferant nur per PM, zwecks 'Schleichwerbung')
Per Vorgabe sind 1-6 Diskettenlaufwerke gleichzeitig ansteuerbar.
Ich habe mir einige TUTs in Youtube angesehen, darunter:
http://www.youtube.com/watch?v=BfFFL0tE-3s
http://www.youtube.com/watch?v=w6tuMn5sPyM
... und viele mehr ...
Aber keines ist wirklich ausführlich genug oder auf dem aktuellen Stand, so muss man sich zu viel selbst zusammen reimen und Zeit aufbringen (mich hat die mangelhafte Beschreibung seitens der Software grob 5 Stunden meines freien Tags gekostet!!!)
Somit habe ich mich nun dazu entschlossen, hier ein HauZu aufzubauen das jeder, der mindestens 2 Drähte zusammenlöten kann, hinbekommen sollte

Denn, die Software bietet einige Fallstricke, denen auch ich unterlegen war.
Ganz wichtig! Ich beschreibe alles aus meiner Perspektive, habe alle Schritte an einem zweiten Rechner nach dieser Beschreibung hier nachvollzogen. Aber auch hier kann manches blind untergehen. Bitte um Hinweise, um das HauZu hier zu komplettieren!
Auch wäre nach erster Fertigstellung dieses HauZu ein weiterer gemeinsamer Thread nützlich, um alles Weitere zu besprechen.
Was man benötigt:
1. Das Arduino Uno
2. ein 5V Netzteil*²
3. Einiges an Drähten
4. Die Software!
- Adruino Software, Version 1.01 oder Version 1.03 (ca 90 MB)
- die TimerOne V9
- die MoppyDesk: https://github.com/SammyIAm/Moppy/ hier klickt Ihr auf [ZIP] um das aktuellste Archiv zu bekommen!
- Eie Java Entwicklungsumgebung (SDK) von hier zum Beispiel: http://www.oracle.com/technetwork/java/ ... index.html Ich habe die "Java Platform (JDK) 7u11" geladen, mit der funktioniert es.
(Agreement anklicken, dann die x86 oder x64 Version laden, ca 88MB)
- Netbeans: http://netbeans.org/downloads/ , hier reicht die "Java SE" mit ca 77 MB aus.
*²: abhängig der Anzahl der Floppys, sollte das schon ein paar Ampere liefern können. 6 Laufwerke, wie bei mir, zwingen ein 2A Netzteil in die Knie. Man glaubt nicht, wie viel ein Floppy an Strom ziehen kann, wenn der Stepper gequält wird

Um Midi Dateien (von denen die Laufwerke abdudeln) einfach zu bearbeiten, wird AnvilStudio empfohlen. Hier lassen sich dann die vorliegenden Midi Dateien anpassen:
- Anzahl der Kanäle / Spuren
- 'Pitchen' der Spuren (die Laufwerke können nur ein gewisses Frequenzband wiedergeben)
- Schneiden, Spuren umbelegen, usw usf.
Da ich damit auch erst angefangen habe, halte ich mich iMo noch an die Programme. Finde ich später ein besseres oder nützlicheres oder alternatives Programm, ergänze ich dies hier.
Das Arduino UNO Board und die Belegung:
D_0 - n.b.
D_1 - n.b.
D_2 - Laufwerk #1 - Pin 18
D_3 - Laufwerk #1 - Pin 20
D_4 - Laufwerk #2 - Pin 18
D_5 - Laufwerk #2 - Pin 20
D_6 - Laufwerk #3 - Pin 18
D_7 - Laufwerk #3 - Pin 20
D_8 - Laufwerk #4 - Pin 18
D_9 - Laufwerk #4 - Pin 20
D10 - Laufwerk #5 - Pin 18
D11 - Laufwerk #5 - Pin 20
D12 - Laufwerk #6 - Pin 18
D13 - Laufwerk #6 - Pin 20
GND - Gemeinsame Masse, an jedes Laufwerk Pin 17&19 bei Laufwerken mit reduzierten GND Pins, den nächst verfügbaren nehmen)
Über die "analogen Anschlüsse" können noch einmal weitere 3 Laufwerke angeschlossen werden:
A0 - Laufwerk #7 - Pin 18
A1 - Laufwerk #7 - Pin 20
A2 - Laufwerk #8 - Pin 18
A3 - Laufwerk #8 - Pin 20
A4 - Laufwerk #9 - Pin 18 !Funktionierte bei mir jedoch nicht!
A5 - Laufwerk #9 - Pin 20 !Funktionierte bei mir jedoch nicht!
In meinem Fall reichen mir aber auch 8 Laufwerke. Das entzerrt den Aufwand bei manchen Midi Dateien schon gewaltig.
Am Floppy selbst muss nur die 5V angelegt werden, die 12V (gelb) sind nicht nötig. (Evtl bei sehr sehr alten 3,5" Laufwerken, die aber schon wegen ihrer Rarität und der trägeren Mechanik bei der Auswahl aus dem Raster fallen)
(rot = +5V, schwarz = Gnd)
Weiter muss am Floppy noch der Drive-Select gebrückt werden, damit das Laufwerk auch die Steuerbefehle sofort akzeptiert und umsetzt. Hierzu einfach einen Jumper auf Pin 11+12 aufstecken.
(manche verlöten alles, ich bevorzuge es zu stecken. So kann man auch schnell mal ein Laufwerk austauschen usw)
Belegung Floppy-Anschluss:
Bei meiner Verdrahtung habe ich auf die "digitale" Seite des Arduino UNO eine Stiftleiste aufgesetzt, von geschlachteten Front-LEDs von alten Rechnern die 2poligen Kabels genommen, und aufgelötet.
Für den GND (Masse/Minus) nahm ich Jumper mit "offenem Kopf" (also jene, bei denen man Testkabel anklemmen könnte) und habe hier einen Draht angelötet der zum GND des Arduino führt. Hiermit verbinde ich nun Pin 17+19 an jedem Floppy.
Hier noch vom ersten Versuchsaufbau!)
Und hier mein fast fertiger erster Aufbau: Das alleine reicht natürlich nicht aus! Man benötigt noch einen passenden Resonanzkörper. Denn hier verhalten sich die Laufwerke wie ein Lautsprecher ohne Gehäuse. Ein Karton reicht anfangs vollkommen aus.
Mein endgültiges Projekt werde ich hier noch posten.