RaSCSI - Raspberry Pi als Ersatz für SCSI-Laufwerke
-
- Retro
-
Tom -
4. Januar 2022 um 16:29 -
2.605 Mal gelesen -
0 Kommentare
Mal wieder Raspberry Pi
Es gibt eigentlich mittlerweile nichts wozu ein Raspberry nicht verwendet wird wenn es um elektronische Projekte geht. Ein weiteres, allerdings sehr interessantes Projekt ist RaSCSI. RaSCSI ist ein Emulator für SCSI-Geräte. Das können zum Beispiel Festplatten oder CD-ROM-Laufwerke sein. Durch das Vorhandensein von Wifi (wenn man einen entsprechenden Raspberry verwendet) ergeben sich ganz neue Anwendungsszenarien.
Zu finden ist das Projekt übrigens auf GitHub: https://github.com/akuker/RASCSI
Wie es funktioniert
Der Einstieg ist nicht ganz so einfach wie bei anderen Lösungen wie zum Beispiel SCSI2SD da es keine fertig betriebsbereiten Lösungen zu kaufen gibt. Man muß sich die erforderlichen drei Komponenten selbst besorgen und zu einer funktionierenden Einheit zusammen setzen.
Benötigte Komponenten:
- RaSCSI-Board für Raspberry
- Raspberry Pi
- Software
- Optional: USB-Stromversorgung
- Optional: Externes SCSI-Gehäuse inkl. Kabel
Es gibt mehrere Quellen für ein Board, ich empfehle hier jedoch Amigakit:
Die beste Konfiguration des RaSCSI-Boards
Zum einen ist die Hardware dort, inkl. Versand, am günstigsten. Zum anderen kann man das Board konfigurieren. Ich habe hier die Option mit Molex-Anschluß und OLED-Display genommen. Das OLED-Display bietet den Vorteil das man die IP-Adresse des Raspberry immer schnell zur Hand hat und man sieht welche Laufwerke angemeldet sind.
Den Molex-Anschluß halte ich für sehr sinnvoll da man ihn so in ein externes SCSI-Gehäuse packen und direkt darüber versorgen kann. Das selbe gilt für den Einbau in einem PC, hier kann man direkt vorhandene Kabel zur Stromversorgung verwenden. Ohne Molex-Anschluß müßte man den Raspberry „irgendwie“ per USB-Netzteil mit Strom versorgen.
Welcher Raspberry ist der Richtige?
Beim Raspberry gibt es mehrere Optionen. Ich habe einen Raspberry Pi 2B und 4 getestet. Bei der Leistung der Datenübertragung gab es hier keinen wesentlichen Unterschied so das man sagen könnte das sich ein leistungsstarker Raspberry Pi 4 auf jeden Fall lohnen würde. Im Gegenteil, ein alter Raspberry Pi 2 reicht völlig aus. Wer Wert auf W-Lan legt kann sich einen Raspberry Pi Zero WH kaufen. Vorsicht, ein Raspberry Pi Zero W hat keinen Header das den man das RaSCSI-Board aufstecken könnte, darum „WH“ wählen wenn nicht selbst löten kann oder will.
Ein Raspberry Pi 3 ist völlig ausreichend.
Jetzt fehlt nur noch die Software
Die wird auf die SD-Karte aufgespielt und in den Raspberry gesteckt. Am besten nimmt man eine 32 oder 64 GB große Karte. Das sollte bei Retrosystemen dicke ausreichen. Es sollte auch nicht die langsamste Karte sein, lieber ein paar Euros mehr ausgeben, die Kosten sind ja eh vernachlässigbar.
Um die ganze Sache einfacher zu machen gibt es ein fertiges Image inklusive RaSCSI-Software zum Herunterladen auf der GitHub Projektseite:
Danach lädt man sich den Raspberry Pi Imager:
und installiert die Software auf die SD-Karte. Danach kann man das RaSCSI-Board auf den Pin-Header stecken, den Raspberry per Ethernet verkabeln und starten. Am besten schließt man den Raspberry auch gleich ans Netzwerk an und aktualisiert alle Softwarekomponenten.
Dazu meldet man sich mit „pi“ und „raspberry“ an. Aber Achtung, als Standard ist ein US-Keyboard eingestellt, das y befindet sich dort an der Stelle wo sich das „z“ befindet. Als Passwort muß man auf einer deutschen Tastatur „raspberrz“ eingeben, sonst funktioniert es nicht. Danach aktualisiert man das Betriebssystem mit den Befehlen:
sudo apt update
und danach
sudo apt dist-upgrade
und neu starten:
sudo reboot
Anschließend kann man sich um RaSCSI kümmern. Nach dem Anmelden führt man folgende Befehle aus:
cd /RASCSI
./easyinstall.sh
siehe auch die Originaldokumentation Link: https://github.com/akuker/RASCSI/releases
Hier wählt man dann Option 1 und wenn man OLED-Display hat, noch die 3 hinterher. Die Installation dauert ein ganzes Weilchen, also nicht ungeduldig werden und einfach abwarten.
Sicherheit
Die Standardinstallation besitzt keine Art von Sicherheit. Jeder der die IP-Adresse kennt (OLED-Display), der kann auch auf den Webserver zugreifen und Laufwerke löschen, usw. Optional kann man noch das Webinterface absichern, da ich aber auf Retrosystemen keine wichtigen Daten liegen habe, verzichte ich an der Stelle auf diese Option.
Nach der Installation führt man am besten noch mal einen Neustart mit sudo reboot durch.
RaSCSI in der Praxis
Das RaSCSI besitzt mehrere Status-LEDs, genau gesagt, vier Stück. Zwei davon zeigen die Stromversorgung mit 3,3 und 5 Volt an. Eine LED leuchtet so bald RaSCSI bereit steht und eine LED zeigt die Aktivität auf dem SCSI-Bus an.
Von Oben nach Unten: Aktivität - RaSCSI läuft - 3,3V - 5V
Nach dem Start kann man die Konfiguration im Webinterface vornehmen in dem man diese über die IP-Adresse aufruft. Hat man ein OLED-Display braucht man sie nur ablesen, ansonsten muß man im Router oder in der Netzwerkkonfiguration nachsehen. Ich habe übrigens das OLED-Display ausgelötet da ich es nach außen führen will. Sonst muß man jedes mal das Gehäuse aufschrauben, das erscheint mir doch ein wenig unpraktisch. Leider hat Amigakit das Display direkt aufgelötet. Ein Stecker hätte es an der Stelle eigentlich auch getan.
So sieht die Oberfläche aus die uns nach dem Start begrüßt:
Eigentlich so weit selbstklärend. Unter dem Punkt "Create Empty Disk Image File" kann man seine Laufwerke anlegen. Die kann man dann oben in der Liste in die Geräteliste einfügen. Anschließend das Speichern der Konfiguration nicht vergessen, sonst muß man die Laufwerke nach jedem Neustart erneut manuell in die Geräteliste einfügen.
Über die Oberfläche kann man auch die Laufwerke direkt herunter- oder hochladen. So lassen sich die Laufwerke bequem sichern oder wiederherstellen.
Leistung im Vergleich zu SCSI2SD V5
Etwa in der selben Leistungsklasse ist ein SCSI2SD V5 angesiedelt. Ich habe beide Lösungen am internen SCSI-Anschluß eines Amiga 3000 (CPU 68060 / 50 Mhz) und an dem Anschluß einer CyberStorm MKII in einem Amiga 4000 (CPU 68040 / 40 Mhz) getestet. Die verwendete CPU spielt demnach bei SCSI keine so große Rolle da die Daten per DMA übertragen werden.
Die Ergebnisse sehen mit Sysspeed wie folgt aus:
Schwachpunkt Leistung
Durch Leistung kann RaSCSI leider nicht überzeugen. Die Benchmarks zeigen das RaSCSI gegenüber SCSI2SD V5 deutlich langsamer ist und das spürt man auch. Ein 22 MB großer Ordner bracuhte fast 6 Sekunden länger zum Kopieren. Während das SCSI2SD V5 die Aufgabe in knapp 21 Sekunden erledigte, benötige RaSCSI fast 27 Sekunden dafür. RaSCSI ist also nicht nur in der Theorie langsamer.
Am SCSI-Controller der CyberStorm hingegen erreicht RaSCSI fast annähernd die Leistung von SCSI2SD V5 im Amiga 3000. Und das obwohl hier eine schwächere CPU vorhanden ist.
So ganz erklären kann ich mir die Ergebnisse nicht. Wie man sieht kann RaSCSI deutlich schneller, aber wohl nur wenn es am richtigen Controller hängt. Mit dem internen SCSI-Controller des 3000er scheint RaSCSI leider nicht zu harmonieren.
Auf der anderen Seite muß man sich natürlich auch die Frage stellen ob es bei 30 Jahre alter Hardware auf die ein oder andere Sekunde ankommt. Es zeigt jedoch das beim RaSCSI noch einiges an Optimierungspotential vorhanden ist.
Schwachpunkt Bootzeit
Da beim RaSCSI erst mal ein komplettes Linux gebootet werden muß dauert es seine Zeit bis die Laufwerke von RaSCSI bereit gestellt werden können. Bei mir sind das gute 25 Sekunden die bei einem Kaltstart vergehen bis die grüne LED aufleuchtet und signalisiert das der RaSCSI-Deamon läuft.
Das ist für normale Systeme natürlich viel zu lang und es reicht nicht aus direkt von RaSCSI booten zu können. Zumindest beim Amiga nicht. Hier muß man mindestens ein mal einen Warmstart durchführen bis auch die Laufwerke am Controller verfügbar sind.
Fazit
Bei RaSCSI handelt es sich um einen extrem flexiblen SCSI-Simulator mit viel Potential und aktiver Weiterentwicklung. Der Einstieg ist für Laien nicht ganz einfach aber durchaus machbar. Hat man die Hürden genommen hat man eine gute Lösung für viele Anwendungsfälle. Ich habe beim Artikel auch nur an der Oberfläche gekratzt um Neugier zu wecken. Wer sich intensiver mit RaSCSI beschäftigt wird viele weitere Anwendungsszenarien für sich entdecken können.
Schwachpunkte sind derzeit die Leistung die hinter bereis etablierten Lösungen zurück bleibt und die lange Startzeit bis die Laufwerke einsatzbereit sind.
Meine Empfehlung ist RaSCSI in ein externen Gehäuse zu packen. So kann man es schon mal starten und warten bis es hoch fährt und spart sich einen Warmstart. Zudem kann man so Gebrauch vom flexiblen Medienmanagement machen das im Zusammenspiel mit mehreren Hostrechnern erst richtig zum Tragen kommt. Als interne Lösung ohne weitere Anbindung ist RaSCSI fast zu schade.
Kommentare