In dieser Anleitung erkläre ich dir, wie du Steam Spiele von deinem Gaming PC über WLAN/Netzwerkabel auf deinen Raspberry Pi spielen kannst. Das hat den Vorteil, dass du deine Steam Spiele auf deinem Fernseher im Wohnzimmer spielen kannst, ohne das der laute und große Gaming PC auch im Wohnzimmer stehen muss.
Voraussetzungen:
- PC mit einer GeForce Experience kompatiblen Grafikkarte (GTX 600/700/900) oder neuer
- Raspberry Pi B oder Raspberry 2 mit eine laufenden Betriebsystem (z.B. Raspbian Jessie/Wheezy)
- High-End Wireless Router (802.11n dual-band empfohlen) oder per Netzwerkkabel verbunden
- Zugriff auf die Kommandozeile (direkt oder via SSH) des Raspberry
Wer keine Lust auf das einrichten hat und die 200€ mehr einem nicht weh tun, der sollte sich das NVIDIA Shield anschauen.
Inhalt
-
PC Einstellungen für Moonlight
Du benötigst die GeForce Experience Software. Diese wird eigentlich bei der Installation der Grafikkartentreiber mit installiert. Falls die Software noch nicht installiert ist, kannst du sie hier herunterladen (http://www.geforce.com/geforce-experience/download). Nach der Installation muss der Computer unbedingt neu gestartet werden!
-
Moonlight auf dem Raspberry Pi installieren
Als erstes musst du das Moonlight Repository zu deiner Repository Liste hinzufügen.
Öffne dazu die sources.list Datei mit dem nano Texteditorsudo nano /etc/apt/sources.list
und füge folgenden Text am Ende der Datei ein.
deb http://archive.itimmer.nl/raspbian/moonlight jessie main
Beende den Texteditor mit ctrl+x und bestätige das die Änderung gespeichert werden soll.
Aktualisiere die Paketliste und installiere Moonlight.
sudo apt-get update && sudo apt-get install moonlight-embedded
-
Moonlight Pair mit dem PC
Nach der Installation von Moonlight auf dem Raspberry Pi musst du den Raspberry und den PC koppeln (pair).
Dazu gibst du folgenden Befehl im Raspberry ein (Ersetze die IP mit der deines Gaming PC’s).moonlight pair 192.168.178.12
Jetzt musst du den Code am Raspberry Bildschirm in deinem PC mit Steam eingeben (es müsste ein kleines Fenster aufgegangen sein)
-
Moonlight starten
Verbinde den Raspberry mit einem Fernseher/Monitor. PC und Raspberry müssen eingeschaltet sein und über WLAN oder Netzwerkkabel mit dem selben lokalen Netzwerk verbunden sein.
Mit dem nachfolgendem Befehl startest du Moonlight auf dem Raspberry.moonlight stream <IP des Game PC>
Bei mir sieht der Befehl wie folgt aus
moonlight stream 192.168.178.12
Jetzt müsstest du auf dem PC und dem Raspberry die Steam Oberfläche sehen.
-
Xbox Controller am Raspberry Pi anschliessen (optional)
Ich benutze den XBox 360 USB am liebsten und beschreibe in diesem Abschnitt welche Einstellungen du vornehmen musst, um den XBox 360 Controller mit Moonlight zu verwenden. Dieser wird zwar standardmäßig erkannt, aber so schaltest du das nervige Blinken am Controller ab und die Steuerung verbessert sich.
Entferne xpad vom Kernel Mmodul
sudo modprobe -r xpad
Blacklist das xpad Kernel Module. Öffne die Datei “gamepad.conf” mit dem Nano Editor.
sudo nano /etc/modprobe.d/gamepad.conf
und füge diesen Text ein
blacklist xpad
Installiere xboxdrv (Xbox360 USB Gamepad Linux Treiber). Dieser ist kompatibel mit Xbox 1, Xbox 360 USB und Xbox 360 Wireless Gamepad.
sudo apt-get install xboxdrv
xboxdrv soll beim hochfahren des Systems automatisch mit gestartet werden.
Öffne dazu die Datei rc.local und füge folgenden Befehl am Ende ein. Beende danach den Nano Editor mit ctrl+x und bestätige die Änderung mit y.sudo nano /etc/rc.local
und füge folgende Zeile vor “exit 0” ein
xboxdrv --trigger-as-button --wid 0 --led 2 --deadzone 4000 --dpad-as-button --silent &
INFO: Die Option –trigger-as-button besagt, dass die hinteren Wippschalter als Knöpfe fungieren. Dies ist bei Rennspielen nicht erwünscht und diese Option sollte dann weggelassen werden.
Alle xboxdrv Optionen http://pingus.seul.org/~grumbel/xboxdrv/xboxdrv.htmlJetzt benötigt Moonlight noch eine map Datei, damit die Knöpfe vom Xbox Controller zugeordnet werden können.
Erstelle zuerst einen Ordner in dem du alle Moonlight relevanten Daten abspeicherst.mkdir ~/moonlight
Navigiere in den neu erstellten moonlight Ordner
cd ~/moonlight
und lade diese voreingestellte .map Datei herrunter.
wget https://raw.githubusercontent.com/RoelofBerg/moonlightpisteambox/master/xbox.map
Jetzt kannst du mit dem folgendem Befehlt Moonlight starten und lädst die .map Datei für den Xbox Controller mit.
moonlight stream -mapping xbox.map
-
Moonlight automatisch beim booten des Raspberry Pi starten
Falls du nicht mehr in dem moonlight Ordner bist, navigiere dort hin.
cd ~/moonlight
Erstelle eine SH-Script Datei mit dem Nano Texteditor
nano autostart.sh
und füge folgenden Text ein. Ersetzte [IP des Game PC] mit der IP deines PC.
#!/bin/bash #Wait until steam is reachable echo Verbindung zum PC wird hergestellt ... while ! nc -z -w5 [IP des Game PC] 47989 &>/dev/null; do :; done #Start moonlight echo …mit PC verbunden, starte moonlight cd ~/moonlight moonlight -mapping xbox.map stream [IP des Game PC]
Mach das Script ausführbar.
chmod +x autostart.sh
Mit diesem Befehl kannst du testen ob dein Script funktioniert.
./autostart.sh
Wenn alles funktioniert solltest du jetzt Steam auf deinem TV sehen.
Begib dich zurück zur Console in dem du oben rechts auf den Ausschalten-Knopf in Steam klickst und “Big Picture verlassen” wählst.Um das Script beim hochfahren ausführen zu können, schalten wir die Passwortabfrage beim booten ab und loggen den Benutzer pi an.
sudo raspi-config
und wählen dann unter Punkt 3 “Boot Options” die Option B2 “Console Autologin Text console, automatically logged in as ‘pi’ user” (funktioniert so nur bei Raspbian Jessie). Wie du dich unter Raspbian Whezzy automatisch anmeldest wird in diesem Beitrag erklärt.
Ab jetzt wird der Benutzer
pi
nach dem booten automatisch eingeloggt, ohne ein Passwort eingeben zu müssen. Das kannst du mitsudo reboot
testen.Jetzt musst du noch das “autostart.sh” Script nach dem Anmelden ausführen lassen.
Öffne die Datei profile
Befehl für Jessie:sudo nano /etc/profile
Befehlt für Wheezy
sudo nano /etc/rc.local
und füge diesen Text am Ende der Datei ein.
. ~/moonlight/autostart.sh
Beende den Nano Texteditor mit ctrl+x und bestätige die Änderung mit y.
Nach einem Neustart solltest du jetzt automatisch eingeloggt sein und moonlight sich starten.
Liste aller Moonlight Optionen/Parameter
Ersetze [options] mit den gewünschten Befehlen. Du kannst mehrere benutzen, musst sie aber durch ein Leerzeichen trennen.
moonlight [options] host
Actions:
map
erstelle ein mapping file für gamepad
pair
Koppel dieses Gerät mit dem PC
stream
Stream PC zu diesem Gerät
list
Liste von verfügbaren Spielen und Programmen
quit
Beende den Stream
help
Zeige alle Optionen
Global options:
config [config]
Lade eine Konfigurationsdatei
save [config]
Speichert eine Konfigurationsdatei
Streaming options:
720
verwende 1280×720 Auflösung (standard)
1080
verwende 1920×1080 Auflösung
width [width]
Horizontale Auflösung (standard 1280)
height [height]
Vertikale Auflösung (standard 720)
30fps
verwende 30fps
60fps
verwende 60fps (standard)
bitrate [bitrate]
setze die Bitrate in Kbps
packetsize [size]
setze die max Paketgröße in Bytes
app [app]
Name einer zu streamenden App
nosops
GFE darf nicht die Spieleinstellungen verändern
localaudio
Audio lokal
keydir [directory]
\tLoad Verschlüsselungscode von einem Ordner laden
I/O options:
mapping [file]
verwende [file] als Gamepad mapping Konfigurationsdatei (muss vor -input)
input [device]
verwende [device] als Eingabegerät. Can be used multiple times
audio [device]
verwende [device] als ALSA Audio Ausgabegerät (standard sysdefault)
Moonlight schließen
Du kannst mit dieser Tastenkombination das Moonlight Programm beenden, falls es sich mal aufhängt.
Ctrl
+Alt
+Shift
+Q