Half-Life, der EGO-Shooter, der erstmals 1998 von dem Entwickler Valve veröffentlich wurde, läßt sich heute auf dem Raspberry Pi spielen. Möglich macht es der Spiele-Engine Xash3D, eine Half-Life-kompatible Engine von GoldSource (GoldSrc). Wie Ihr das Installieren könnt, zeig ich euch jetzt. Entweder loggt Ihr euch via PuTTY auf dem Raspberry Pi ein oder macht es direkt am Gerät, Emulationstation mit F4 verlassen. Linux und Mac Benutzer können sich wie gewohnt über das Terminal via SSH verbinden.

1. Um Fehler, möglicher fehlender Pakete innerhalb des Systems, zu vermeiden.

sudo apt install libfontconfig1-dev

2. Xash3D engine kompilieren.

cd
git clone --recursive https://github.com/FWGS/xash3d
cd xash3d/engine
git clone https://github.com/FWGS/nanogl
cd ..
git clone https://github.com/ValveSoftware/halflife
mv halflife hlsdk
mkdir -p build
cd build
cmake -DHL_SDK_PATH=../hlsdk/ -DXASH_VGUI=no -DXASH_NANOGL=yes -DXASH_GLES=yes ..
make

3. Kopieren der benötigten Datei(en)

mkdir -p ~/HL
cp engine/libxash.so ~/HL
cp game_launch/xash3d ~/HL
cp mainui/libxashmenu.so ~/HL

4. Half-Life SDK komilieren

cd
git clone https://github.com/FWGS/hlsdk-xash3d
cd hlsdk-xash3d
mkdir -p build
cd build
cmake ../
make

5. Kopieren der benötigten Datei(en)

cp cl_dll/client.so ~/HL
cp dlls/hl.so ~/HL

6. Überflüssige buildordner löschen

cd
rm -rf hlsdk-xash3d xash3d

7. Half-Life konfigurieren
Kopiere den valve Ordner des Originalen Spieles (CD oder Steam) in deinen HL Ordner.

Steam: C:\Programme (x86)\steam\steamapps\common\halflife
CD: C:\Programme\HalfLife\

oder wohin ihr das auch immer Installiert habt

kurze Einleitung in die Struktur:

valve # Half-Life 1
gearbox # Opposing Force
bshift # Half-Life – blueshift

nano ~/HL/valve/liblist.gam

ändere folgende Zeile ab

von: gamedll_linux "dlls/hl.so"
nach: gamedll_linux "hl.so"

abspeichern und beenden mit STRG+X

8. Starter für Emulationstation einrichten

nano /home/pi/RetroPie/roms/ports/Half-Life.sh

Inhalt:

#!/bin/bash
cd $HOME/HL
LIBGL_FB=1 LIBGL_BATCH=1 LD_LIBRARY_PATH=/home/pi/HL:. ./xash3d -console -debug
clear

abspeichern und beenden mit STRG+X

9. Emualtionstation neustarten

über SSh-Verbindung:

killall emulationstation
sudo openvt -c1 -s -f emulationstation

direkt am Gerät:

emulationstation

Have Fun

Teilen:

Das einrichten des Raspberry Pi Systems Raspbian (Debian) stellt so manch einen schon vor einem großes Rätsel. Dabei ist es kein Hexenwerk das Tastaturlayout einzustellen, sowie SSH zu aktivieren. Mit nur wenigen Griffen ist das in weniger als einer Minute erledigt und das Projekt kann begonnen werden.

Auch wenn sich das kompliziert anhören, lesen mag, so ist es Kinderleicht die Console (TTY) zu bedienen. Fangen wir doch an mit dem Beenden von der Emulationstation bei RetroPie. Mit der F4-Taste beenden wir die Emulationstation (ES) und betretten die Console (TTY) des Grundsystemes unter RetroPie.

(Bild: SSH-Verbindung über einen Linux-Computer)

Als zweiten Schritt müssen wir in die Raspberry Pi Konfiguration, um  Tastatur, Locale und SSH einzustellen, hierfür tippen wir einfach

sudo raspi-config

ein. Achtung, da das englische Tastaturlayout aktiv ist findet Ihr den Bindestrich oben auf der [?]-Taste.

Ist man im Konfigurationstool, so wird auch gleich auf die “4 Localisation Options” navigiert und mit ENTER bestätigt.
Weiter geht es mit “I1 Change Locale” und dort sucht Ihr die drei “de_DE” Einstellungen heraus und aktiviert sie mit der Leertaste.

Ist dieses getan so kann mit der [Tab]-Taste auf OK gewechselt und mit ENTER bestätigt werden. Im nächsten Bild bei der Auswahl von dem Unicode suchen wir die de_DE Option und bestätigen mit ENTER. Es folgt eine Auflistung der geladenen Sprachpakete. Wieder Im Konfigurations Tool gehen wir nochmals auf “4 Localisation Options” und anschliessend auf “I2 Change Timezone”

Das Geografische Gebiet ist, wie man schwer erraten kann, “Europe” und bei der Zeitzone ist es “Berlin”, sofern keine andere deutschsprachige Stadt dort vorhanden ist, die in eurer Nähe ist.
Als nächstes landen wir wieder im Konfiguration Tool und gehen sofort nochmals in die “4 Localisation Options” und auf “I3 Change Keyboard Layout”.

Im ersten Bildschirm bleibt die Einstellung auf “Generische PC-Tastatur mit 105 Tasten”

Im zweiten Bildschirm steht alles “English”, mit dewr Pfeiltaste navigieren wir ganz nach unten auf “Other” und bestätigen mit ENTER.
Nun müssen wir ganz nach oben navigieren auf “German”.
Einen Bildschirm weiter bei “AltGr” einfach ENTER drücken, das selbe nochmal bei der Compose Einstellung und mit NEIN anworten bei der Frage nach X-Server Tastwenkombination.

Das war die Tastaturlayout-Einstellung des Raspberry Pi Grundsystem Raspbian.
Und wenn wir schonmal in dem Konfigurations Tool sind. können wir auch gleich noch die SSH aktiveren, damit wir solche Einstellungssache auch bequem per PC, Tablet, whatever machen können.
Dazu einfach auf “5 Interfacing Options” gehen und auf “P2 SSH”, da easy auf gehen und mit ENTER bestätigen. Jetzt nur noch mit der [Tab]-Taste auf FINISH wechseln und rebooten bestätigen und alles ist Perfekt.

Nun könnt ihr euch mit der IP-Adresse und den Logindaten des Raspberry Pi’s mit PuTTY (Windows), Terminal (Linux/Mac) auf eure RPi zugreifen.

Teilen:

Oftmals kann sich nicht mehr erinnern was man eigentlich für ein Gerät gekauft hat, RPi 3B oder wars doch der 3B+? Da man nicht ständig Lust und Laune hat das Gehäuse zu öffnen, um nachzusehen, kann man das Softwaremäßig rausbekommen. Meistens wird der Modelname gesucht, aber viele andere Informationen, wie Prozessor, CPU, SoC, Serial und Revisionsnummer, sind oft gefragt.



Für RetroPie (Raspbian Systeme)
Windows über PuTTY:

wget -q -O - "https://www.freddyblog.de/uploads/tools/info_paste.sh" | bash

Für RecalBox/Batocera (Builderoot Systeme)
Windows über PuTTY:

wget -q -O - "https://www.freddyblog.de/uploads/tools/info.sh" | bash

Teilen:

RetroPie hat keinen Standard Treiber für die PS4-Controller mit an Board oder in den eigenen Quellen. Dieser kann aber manuell installiert werden um den Wireless Controller ans laufen zu bekommen. Über USB-Kabel funktionieren die meisten Controller problemlos und der PS3-Wireless-Controller hat einen Treiber im RetroPie-Setup-Script drin.
Ich beschreibe hier dien Weg der Installation und das pairsen des PS4-Controllers über die TTY (Console/Shell) mit dem Kommandozeilenbefehl “bluetoothctl”.

1. In der Emulationstation F4 drücken um diese zu Beenden oder wahlweise über eine SSH-Verbindung (da kein F4).

Windowsuser können dazu das Tool PuTTY verwenden
(Standard Logindaten – user: pi Password: raspberry [ACHTUNG: Bei englischsprachigem Tastaturlayout ist das Y auf der Z-Taste, also vertauscht])

2. Systemquellen aktualisieren und Treiber installieren

sudo apt update
sudo apt install python3-dev python3-pip
sudo pip3 install ds4drv

Fehler sollten keine auftauchen, wenn doch bitte mit Posten.

2.1 PS4 Controller mit USB verbinden und die PS-Taste drücken, dann zum Test

sudo ds4drv --hidraw --led 000008

eingeben und beobachten. PS4 LED sollte dabei blinken

STRG+C Beendet den Test (Traceback Meldung kommt – stammt vom Pythonscript, keine Panik)

3. Treiber mit dem boot laden

sudo nano /etc/rc.local

vor exit 0 eintragen: /usr/local/bin/ds4drv –hidraw –led 000008 &

STRG+O und mit J bestätigen (bei englischsprachigem Tastaturlayout ist das Y auf der Z-Taste, also vertauscht)

STRG+X (zum Beenden)

4. Neustarten des Systems

sudo reboot

5. PS4 Wireless Controller mit RPi pairsen

Wieder in der Emulationstation F4 Taste drücken oder über SSH-Verbindung (ohne F4).

bluetoothctl

eingeben und PS4-Controller vom USB trennen und in den Pairing-Modus bringen (share und PS Taste gedrückt halten bis blinkt)

eingeben von Kommandos:

scan on
agent on #Controller sollte nun als Wireless Controller mit MAC angezeigt werden
pair MAC
trust MAC
connect MAC

hierbei ist es empfehlenswert die MAC-Adresse des Controllers zu kopieren und immer mit SHIFT+STRG+V einzufügen

Controller LED leuchtet dann dauerhaft, wenn alles richtig und ohne Errors abgelaufen ist. Nicht lange warten, sonst ist der Pairing-Modus wieder aus.

Ist das erledigt verlassen wir den Bluetooth-Modus mit „exit“.

6. PS4 Controller einrichten.

Ist man den Weg gegangen mit der F4-Taste am Anfang, so kommt man mit dem Befehl „emulationstation“ wieder in die Emulationstation.
Bei SSH-Verbindung ist das nicht notwendig.

Sollte bereits ein Controller eingerichtet sein, so kann man mit diesem über das Start-Menü (Main Menu) in die „Configure Input“ gehen und den eben gepaarten Controller einrichten.

Das wars auch schon. Hat man nun einen zweiten PS4 Controller so kann man diesen ebenfalls auf diese weise paaren, die Konfiguration sollte da bei die selbe sein, wenn nicht muss dieser Controller ebenfalls gemappt werden.

H A V E F U N ! ! !

Teilen:

Das Gerät misst 3.2cm, mit Analog Stick knapp 6cm an Höhe und ist 18 cm lang. Das Prinzip dieses Bauwerkes ist recht simple, oben und unten befinden sich zwei zurechtgeschnittene Plastik Platten. Die obere schützt die Steuerplatine mit den 3.5 IPS Display, Tastern und den etwas verunglimpften Lautsprechern (die hätte ich ehr auf der Innenseite angebraucht).
Das Raspberry Pi wird über die gesamte GPIO Leiste und einen HDMI doppel Stecker verbunden, der Sound kommt über die HDMI Schnittstelle.

An der linken Seite unterhalb der Taster befinden sich weiter vier Drucktaster an der Steuerplatine, um die Einstellungen des Displays und der Lautstärke zu machen. Auf der Rechten Seite unter dem Analogen Stick haben wir die Akku LEDs und darüber den On/OFF Schalter. Noch weiter höher kommen die Schultertasten und dazwischen befindet sich der Kopfhöreranschluss, sowie die Ladebuchse des Gerätes. Der Stecker ist ein Micro-USB Type-B.

Ich habe RetroPie auf einer Test-SD Karte und die Themes GBZ35-dark gewählt. Da diese Optimal für den Einsatz von 3.5 Zoll Displays gemacht ist, gibt es auch keine Probleme mit der grafischen Ansicht in den einzenlnen Systemen.

Spielen läßt es sich ähnlich wie ein PSP, Dingoo A320 oder GameKing. Das Design ist jedoch ehr der PSP angepasst, mit den rundlichen Seiten.

Galerie:


Teilen:


Was früher in Spielhallen zuhauf stand und unser Geld verschlang, ist heute im heimischen Wohnzimmer neu eingezogen. Die Idee ist nicht neu und hat schon viele Leute zum Basteln bewegt. Dennoch wollt ich das Feeling selbst erleben einem „alten“ Arcade Automaten neues Leben einzuhauchen. Im Grunde genommen wurde er komplett neu gebaut. Mit den heutigen Möglichkeiten ist es schon einfacher als wie vor 15 Jahren das Ganze zu realisieren.

Der Automatenkörper ist nach dem Vorbild eines Starcade Bartop von Galactic, mit kleinen Veränderungen an der Steuerungspanel und Steuerungspanelfront gefertigt worden. An der Frontseite verzichtete ich auf einige Taster und setzte stattdessen ein 16×2 LCD Display zur Temperaturüberwachung, plus einen Ein und Ausschalter für das System ein.

Das Herzstück und ausführende Organ des Bartop Automaten ist ein Raspberry Pi 3 Model B mit einem Controlblock Zusatzmodul für die Arcade-Taster und Joysticks, welches den Genuss der klassischen Spiele zum Leben erweckt. Ein Miniverstärker, der direkt an dem HDMI-Ausgang des Raspberry Pi hängt, sorgt für einen klaren Sound. Coolness bewahren im inneren des Automatenkörpers 2 80x80mm große Lüfter auf der Rückseite, neben dem Hauptschalter. Für eventuelle Wartungsarbeiten am System selbst ist zusätzlich eine USB-Buchse montiert worden.

Materialliste

Zum Projektaufbau gibt es noch eine Galerie, diese könnt ihr hierüber erreichen.

Ich bin stolz auf die Erfahrungen, die ich beim Bau gesammelt habe. Sie waren sehr lehrreich und es haben sich viele neue Erkenntnisse aufgetan. Und dennoch wird es eine explizite Bauanleitung von meiner Seite aus nicht geben! Dies hat folgende Gründe: Ich will niemandem den Spaß und die Freude, es mit eigenen Ideen zu verwirklichen, nehmen. Das Nachbauen nach Anleitung verdirbt einem nur die Lust am ganzen Projekt. Lediglich Tipps und Anregungen sind mit diesem Beitrag, hoffentlich ausreichend, geliefert.

Teilen:

Viele scheinen nicht mit dem init.d scripten klar zu kommen, daher hier noch einmal der Autostart-Script zu netdata für Raspberry Pi.

sudo nano /etc/init.d/nd_start.sh

#!/bin/sh
### BEGIN INIT INFO
# Provides: netdata 
# Required-Start: $local_fs $network 
# Required-Stop: $local_fs $network 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# Description: netdata Autostart-Script, bootstarter
### END INIT INFO
USER="root"
DIR="/usr/sbin"
#Switch case fuer den ersten Parameter
case "$1" in
    start)
        #Aktion wenn start uebergeben wird
        echo "Starte netdata..."
        su $USER -c "${DIR}/netdata"
        ;;
    stop)
        #Aktion wenn stop uebergeben wird
        echo "Stoppe netdata..."
        su $USER -c "killall netdata"
        ;;
 *) #Standard Aktion wenn start|stop nicht gegeben wird
 echo "Benutzung: {start|stop}"
 exit 1
 ;;
esac
exit 0


sudo chmod 755 /etc/init.d/nd_start.sh
sudo update-rc.d /etc/init.d/nd_start.sh defaults
sudo reboot

nach dem Neustart sollte netdata bereits funktionieren und über den Browser erreichbar sein.

Teilen:

Und noch ein weiteres Toool für Überwachung des Raspberry PIs. RPI-Monitor, von Xavier Berger, zeigt CPU-Belastung, RAM, Speicher, Temperatur und Netzwerk an.
Zur installation fügt man einfach nur die Repositories ein und holt sich den GPG-Schlüssel.

sudo apt-get install apt-transport-https ca-certificates
sudo wget http://goo.gl/vewCLL -O /etc/apt/sources.list.d/rpimonitor.list
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 2C0D3C0F
sudo apt-get update
sudo apt-get install rpimonitor
sudo /etc/init.d/rpimonitor update

Browseraufruf: localhost:8888 oder IP:8888

rpi_monitor

Teilen:

Archlinux für Einplatinen PCs wie Raspberry Pi und Banana Pi. Hier eine Anleitung wie dies in kurzen Schritten geht.

Archlinux SD-Vorbereitung Banana Pi

MicroSD Karte sollte in Fat32 formatiert sein
Download Image Link
Image entpacken und im Terminal
sudo dd bs=4M if=/path/zum/image of=/dev/sdx
anschliessend
sync
um das ganze zu beenden

SHDC Karte in den Banana Pi stecken und starten
Login für “root” ist root:root und Standard User alarm:alarm

[collapse]
Archlinux SD-Vorbereitung Raspberry Pi

als root anmelden (ohne sudo arbeiten)

2 Partitionen werden gebaucht (fdisk oder cfdisk)

1. Partition boot 100MB
2. Partition root rest

erstellen des FAT Systems

# cd /mnt
# mkfs.vfat /dev/sdX1
# mkdir boot
# mount /dev/sdX1

erstellen des EXT4 Systems

# mkfs.ext4 /dev/sdX2
# mkdir root
# mount /dev/sdX2 root

Downloaden des root Systems
(Das Image für Raspberry Pi 2 und 3 ist gleich, sprich das selbe)
# wget http://archlinuxarm.org/os/ArchLinuxARM-rpi-2-latest.tar.gz
# bsdtar -xpf ArchLinuxARM-rpi-2-latest.tar.gz -C root
# sync

boot Dateien auf erste Partition bewegen

# mv root/boot/* boot

Beide Partitionen unmounten

# unmount boot root

SHDC Karte in den Raspberry Pi stecken und starten,
Login für “root” ist root:root und Standard User alarm:alarm

[collapse]
Einrichten des Systems

Als erstes PW ändern
passwd

#Tastaturlayout
echo LANG=de_DE.UTF-8 > /etc/locale.conf
echo LC_COLLATE=C >> /etc/locale.conf
echo KEYMAP=de-latin1 > /etc/vconsole.conf

nano /etc/locale.gen
de_DE.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15

#Alle drei entkommentieren, abspeichern beenden.

locale-gen

#Zeitzone
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime

#Systemquellen aktualisieren
pacman -Sy

#keyring initiatisieren
pacman-key --init

#keyring schlüsselbund
pacman -S archlinuxarm-keyring
pacman-key --populate archlinuxarm

#Tastaturlayout für GUI
nano /etc/X11/xorg.conf.d/10-keyboard.conf

Section “InputClass”
Identifier “Keyboard Defaults”
MatchIsKeyboard “yes”
Option “XkbLayout” “de”
Option “XkbVariant” “nodeadkeys”
EndSection

Desktop
=======
Zu wählen gibt es LXDE, XFCE4, GNOME und KDE

Hier im Test XFCE4…!

Installation
grafiktreiber: $ pacman -S mesa xf86-video-fbdev #(Optional: xf86-video-vesa)
touchtreiber: $ pacman -S xf86-input-evdev
xserver: $ pacman -S xorg-xinit xorg-xinit xorg-server xorg-server-utils #(Optional: xterm)
DE: $ pacman -S xfce4 #(Optional: xfce4-goodies)
gibs auch hals script
curl https://raw.github.com/adimania/arch-desktop-environments/master/XFCE-Arch-RPi.sh | bash
DM: $ pacman -S slim
$ systemctl enable slim.service
$ systemctl enable graphical.target

Starten
$ xinit /usr/bin/lxsession

Autostart (nach Eingabe in DM)

~/.xinitrc

#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x “$f” ] && . “$f”
done
unset f
fi
exec startxfce4

Autostart (ohne DM/Displaymanager/loginmanager)

~/.bash_profile

[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx

[collapse]
Neuen Benutzer einrichten

# useradd -m -g users -G wheel,audio,video,optical,games,storage,power,lp -s /bin/bash NEWUSER

ANMERKUNG: die Option -m erzeugt ein home-Verzeichnis für den angelegten
USER, das ist bei einer externen home-Festplatte nicht von Nöten und kann
weggelassen werden.

passwd NEWUSER
pacman -S sudo
nano /etc/sudoers

suche Zeile : root ALL=(ALL) ALL
darunter: NEWUSER ALL=(ALL) ALL

speichern (strg+x j ENTER-Taste)

Standardnutzer löschen
killall -u alarm
userdel alarm
rm -R /home/alarm

[collapse]

Teilen: