[Raspberry] Gadget-CDROM

Ich fand auf Github (wo auch sonst) ein interessantes Projekt für meinen Raspberry Pi Zero, welches aus diesem Gerät ein virtuelles CDROM Laufwerk für den USB Anschluss macht, das bedeutet, man kann verschiedene Images Dateien (ISO Files) auf der Speicherkarte im Raspberry ablegen, und wählt dann manuell aus, mit welcher Datei man dann den Computer starten möchte, sprich Windows 10 Installation, Linux Installation, Recovery Datenträger, was auch immer. Bisher verwendete ich dafür Vorort beim Kunden ein IODD-2531, welches mir auch weiterhin wunderbare Dienste leistet.

Die Lösung mit dem Raspberry ist identisch, das ganze System ist wesentlich kleiner und handlicher, aber leider ohne Gehäuse, und etwas anders zu bedienen, aber es funktioniert einwandfrei.

Was wird benötigt?

  • ein Raspberry Pi Zero mit Stiftleiste
  • ein OLED Display 1.3inch von Waveshare
  • eine entsprechend große SD Karte für das Betriebssystem des Raspberry und für die Image Dateien (ISO Files), ich verwende eine 64GByte Karte Class 10
  • ein USB Kabel vom Raspberry Pi Zero zum Computer, USB-A Stecker auf Micro USB Stecker

Zuerst installieren wir wie gewohnt das Betriebssystem das Raspberry auf die Speicherkarte, ich verwende dazu den Raspberry Pi Imager um das Raspberry Pi OS Lite auf die Speicherkarte zu schreiben. Danach kopiere ich manuell zusätzlich noch die Datei ssh und wpa_supplicant.conf mit auf diese Speicherkarte, damit der Raspberry automatisch WLAN Zugriff hat, und ich per SSH Konsole auf den Raspberry zugreifen kann.

Zur kurzen Erläuterung: die Datei ssh ist eine leere Datei ohne Inhalt, sobald sich diese Datei auf der Speicherkarte befindet, ist ein Zugriff per SSH auf den Raspberry möglich, und die Datei wpa_supplicant.conf enthält die Konfiguration für den Zugriff auf das WLAN.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE

network={
ssid="WLAN SSID"
psk="WLAN Passwort"
key_mgmt=WPA-PSK
}

Die roten Einträge so anpassen wie das eigene WLAN Konfiguration ist.

Nun per SSH, ich nutze MobaXterm, auf den Raspberry zugreifen, und erstmal das System aktualisieren:

  • sudo apt update
  • sudo apt upgrade

Danach mit sudo raspi-config unter 7 Advanced Options den Befehl A1 Expand Filesystem ausführen, um die Speicherkarte den vollen Speicherplatz zu geben, und den anschließenden Neustart durchführen lassen.

Nun die weitere Installation:

  • sudo apt install -y p7zip-full python3-rpi.gpio python3-smbus python3-spidev python3-numpy python3-pil fonts-dejavu ntfs-3g
  • nun die Datei /boot/config.txt bearbeiten und ganz am Ende den Befehl dtoverlay=dwc2 einfügen
  • nun die Datei /etc/modules bearbeiten und dort den Eintrag dwc2 einfügen
  • erneut sudo raspi-config ausführen, 5 Interfacing Options auswählen, P4 SPI auswählen, und mit Yes bestätigen
  • cd /opt
  • sudo git clone https://github.com/tjmnmk/gadget_cdrom.git
  • sudo ln -s /opt/gadget_cdrom/gadget_cdrom.service /etc/systemd/system/gadget_cdrom.service
  • sudo systemctl enable gadget_cdrom.service
  • cd gadget_cdrom
  • sudo ./create_image.sh
  • hier nun die Kapazität festlegen, wie viel Speicherplatz für die ISO Files zur Verfügung stehen soll
  • Neustart Raspberry

Nun sollte das Display zu Leben erweckt sein, und kann wie folgt bedient werden:

  • Key1 – Aktiviert das ausgewählte Image
  • Key2 – Deaktiviert das aktuell gewählte Image
  • Key3 – wechseln des Modus (HDD Mode, Image Mode, USB Mode)
  • Joystick runter – nächstes Image in der Liste wählen
  • Joystick hoch – vorheriges Image in der Liste wählen
  • You can switch between HDD mode, virtual cdrom mode, and virtual flash drive mode.
  • HDD mode – in that mode your Raspberry Pi is basically USB flash drive connected to your computer.
  • CD mode – in that mode you select some iso you uploaded to Raspberry Pi in HDD mode, and the rpi will pretend to be that cdrom.
  • USB mode – the rpi will pretend to be a flash drive, presenting the usb .img you selected.

Zusammengefasst: Im HDD Mode erscheint der Raspberry als Laufwerk  RPiHDD im Explorer unter Windows und kann mit den ISO Dateien befüllt werden, im CD bzw. Image Mode kann die ISO Datei ausgewählt werden, welche verwendet werden soll.

Datei auswählen und bestätigen, PC Neustart auswählen, im Setup auswählen von welchen Gerät gestartet werden soll, und nach kurzer Zeit erscheint das gewünschte Programm auf dem Bildschirm.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.