PiLocoBuffer als WiThrottle Server konfigurieren

Diese Schritt-für-Schritt-Anleitung zeigt einen möglichen Weg den PiLocoBuffer als WiThrottle-Server mit JMRI zu konfigurieren. Der Rasperry Pi ist für diesen Zwecke der idealer und kostengünstiger Kleincomputer und viel leistungsfähiger als die bei üblichen LN-WiFi-Adaptern (z.B. Digitrax PR3, Uhlenbrock 63860, Yarmorc YD7001) verwendeten Wemos – die in den Regel mit einer Hand voll WiFreds am Limit sind. Der Pi verwendet als Betriebssystem Debian das auf Linux basiert. Die Bedienung ist nicht jedem geläufig – daher diese Anleitung für Nicht-Informatiker im Kochbuchstil…man nehme….

Ich arbeite dabei ganz bewusst mit der grafischen Oberfläche auf den Pi (da das Vorgehen die meisten von Windows gewöhnt sind). Bei Linux/Debian erfolgt die Programminstallation über Konsoleneingaben – ganz anders als bei Windows. Die teilweise erstmal etwas kryptisch erscheinende Befehle sind alle hier aufgelistet und können per drag-and-drop übernommen werden.

Experten werden einen anderen Weg (ohne grafische Oberfläche, nur mit Konsoleneingaben) gehen. Für die ist die Anleitung natürlich nicht gedacht – die kennen sich ja sowieso mit Linux aus.

Was brauchen wir:
– Rasbery Pi 4 Model B mit 2 GB RAM (!!! keinen Pi 5!!!),
4 GB geht auch, braucht es aber nicht
– PiLocoBuffer aus der FREMO-Bestellaktion
– Schnelle Micro-SD-Karte 32 GB, ggf. Adapter auf SD-Karte – abhängig vom
Kartenslot des Windows PC
– Leistungsfähige Stromversorgung für den Pi (5V, 3A z.B. original Pi-Netzteil)
– Adapter oder Adapterkabel Mico-HDMI auf HDMI oder was euer Monitor hat
(wird nur zur Einrichtung benötigt)

Zuerst müssen wir das Raspberry Pi OS auf der SD-Karte mit dem offiziellen Raspberry Pi Imager erstellen. Das machen wir ganz normal am Windows-PC.

https://www.raspberrypi.com/software/

Model P4 auswählen

Dann beim Betriebssystem (OS) nicht das vorgeschlagene sondern nach unten scrollen bis Pi OS (other)

In den Menu Pi OS Legacy 64-bit Bullseyes Full auswählen.

Die SD-Karte auswählen.
Nun müssen wir noch Einstellungen vornehmen:



In den Allgemeinen Einstellungen eine individuellen Hostnamen vergeben (auf dem Treffen sollten nicht alle nur „lbserver“ heißen).

Es macht auch Sinn, eine individuellen User-Namen/PW zu erstellen. Das ist zwar nur für den SSH-Zugang relevant, der Pi motzt dann später immer und fordert auf, das Standardpasswort zu ändern.

Dann brauchen wir zur Einrichtung noch ein WiFi mit Internetzugang.

Dann Speichern, die Anwendung der OS-Änderungen mit „Ja“ aktivieren und das Überschreiten der SD-Karte bestätigen und die Software beginnt die Daten auf die SD-Karte zu übertragen und dann zu verifizieren. Wenn die Verifizierung durchgelaufen ist kommen Aufforderungen am Bildschirm: Man solle die SD-Karte formatieren – einfach ignorieren und die SD-Karte entnehmen und in den Pi einschieben.

Nun muss der Pi konfiguriert werden – dazu müssen wir auf die Kommandozeile des Pi kommen. Dafür gibt es unterschiedliche Wege: Direkt am Pi oder über SSH/VCN. SSH/VCN möchte ich hier nicht beschreiben. Es erfordert zusätzliche Software (PuTTy, IP-Scanner, …) und wer sich genauer auskennt weiß sowieso wie das geht.

Wir arbeiten nun direkt am Pi und schließen dazu den Pi an einen Bildschirm (mit Adapter Micro-HDMI) + Maus + Tastatur an. Er hat ja genug USB-Buchsen. Das ist alles nur temporär für die Einrichtung!
Wir der Pi mit Strom versorgt denn fährt er hoch und zeigt einen schönen Sonnenuntergang (wenn es ein Fischerboot ganz in Blau gehalten ist habt Ihr das falsche OS erwischt – nochmal von vorne). Mit dem Browser (Weltkugel links oben) können wir nun testen ob der Pi Internet hat und diese Seite auf dem PI aufrufen.

www.us-trains.info/

Alles was beim Pi auf Admin-Ebene gemacht wird erfolgt über das Terminal >_, 4. Eintrag in der linken oberen Ecke. Admin-Befehlen ist i.d.R. sudo vorgestellt. Alle Befehle können mit markieren, rechte Maustaste-> copy und in Terminal dann ebenfalls mit rechter Maustaste und paste eingefügt werden. Man braucht also nix abzutippen.

Die Einrichtung gliedert sich in vier Teile.

1. LBServer installieren

Dann geht es gleich im Terminal los

sudo apt install pkg-config avrdude libsystemd-dev

d-

mit „Y“ fortsetzen.
Nun holen wir uns das Config-Zip über das Teminal:

wget https://sourceforge.net/projects/loconetovertcp/files/PiLocoBuffer/config/PiLocoBufferConfig_0.1.zip

Der Download landet dann im Stammverzeichnis des aktuellen Users. Über den File Manager dort das zip markieren, rechte Maustaste und „Extract Here“. Dann wir ein neues VerzeichnisPiLocoBufferConfig_0.1 erstellt. Dort liegen dann die Programmdateien von PiLocoBuffer.

Dann geht es wieder im Terminal weiter (da wir wieder als Admin aktiv werden müssen):

cd PiLocoBufferConfig_0.1
sudo make FIRMWARE_VER=2023-04-15 LBSERVER_VER=0.14 all

Nach eine Neustart (geht auch über das Terminal sudo reboot) sollte nun etwas auf dem Bildschirm des PiLocoBuffers erscheinen – wird es aber in 95% der Fälle nicht! Nun ist erstmal drehen im Uhrzeigersinn am Poti (10k) links neben dem roten Knopf angesagt – drehen, ja weiter drehen, und weiter drehen,… – es können auf 25, 50, 100 Mal sein bis da langsam etwas erscheint. Mit dem andere Poti kann dann noch die Helligkeit passend eingestellt werden.

2. JAVA und JMRI Installieren
Java installieren:

sudo apt install default-jdk

im Lauf der Installation muss man wieder mit „Y“ bestätigen. In Installation dauert ein paar Minuten – Geduld!

Nun hole ich mir das neuste JMRI -am schnellsten wieder über die das Terminal
wget https://github.com/JMRI/JMRI/releases/download/v5.6/JMRI.5.6+R89a87446cb.tgz

Der Download landet dann im Stammverzeichnis des aktuellen Users, dort mit dem File Manger das tgz markieren, rechte Maustaste und „Extract Here“. Dann wir eine neues Verzeichnis JMRI erstellt. Dort liegen dann erstmal die Programmdateien von JMRI.

So sollte es dann aussehen

Weiter im Terminal

cd ~/JMRI
./CreateJmriApps.sh -d

Nun sollte auf dem Desktop die „PanelPro.desktop“ erscheinen.

Wir wollen ja, daß der PiLocoBuffer automatisch startet, wenn er eingeschalten wird (wenn Morgens auf dem Treffen der Strom eingesteckt wird) . Also wieder ins Terminal:

cd ~/.config
mkdir autostart
cd autostart
ln -s ~/Desktop/PanelPro.desktop PanelPro.desktop

sudo reboot

4. JMRI configurieren

DecoderPro startet nun und will konfiguriert werden. Verbindung zum LbServer einrichten – sprich Digitalsystem Digitrax auswählen, Verbindung Loconet über TCP und den Localhost ( 127.0.0.1) als Serveradresse, DSC100 und speichern.

Nun über Bearbeiten -> Voreinstellungen in der rechten Leiste Reiter WiThrottle wechseln den WiThrottle Server bei Startup zu aktivieren.

5. Startverzögerung für JMRI
Nun gibt es noch eine Besonderheit. Wenn man das ganze System (Fritzbox/Zentrale/PiLNBuffer) gleichzeitig einschaltet (also wenn einer auf dem Treffen die komplette Stromversorgung des Arrangements einsteckt) fährt der unter Umständen das JMRI schneller hoch, als die FritzBox das LAN bereitstellt. D.h. JMRI findet beim Start keine LAN/WLAN-Verbindung. Somit können sich die WiFreds nicht anmelden.

Daher macht es Sinn den Start des JMRI etwas zu verzögern.

Durch den 1. Start von JMRI wird im Homeverzeichniss der Ordner .jmri automatisch erstellt. Der Ordner ist aber „Hidden“ und wird erst angezeigt, wenn man „show Hidden“ aktiviert. In den Ordner befindet sich die Datei „PanelProConfig2.properties“. Die Datei kann man nun editieren:

<entry key=“autoStartTimeout“>30</entry>
<entry key=“autoStart“>false</entry>

RESERVERVERFAHREN

Damit wir JMRI von Desktop (und damit auch mit Autostart) öffnen können sind jetzt noch einige Arbeit im Terminal nötig, da wir über den File Manager nicht auf das nötige Verzeichnis /opt zugreifen dürfen.

sudo mv JMRI /opt

Nun müssen wir „nur“ noch eine deskop-Verknüpfung „basteln“ das ist leider eine Mega-Aufwand gegenüber Windows.

Auf dem Desktop erstellen wir eine Textdatei, rechte Maustaste „New File“ und vergeben den Namen „PanelPro.desktop“. Dann öffnen wir die Datei wieder über rechte Maustaste und „Text Editor“

Dann müssen wir folgendes in die Datei hineinschreiben:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=PanelPro
Icon=/opt/JMRI/resources/PanelPro.gif
Exec=/opt/JMRI/PanelPro
Categories=Application
Terminal=false

3. Autostart einrichten

Wir wollen ja, daß der PiLocoBuffer automatisch startet, wenn er eingeschalten wird (wenn Morgens auf dem Treffen der Strom eingesteckt wird) . Also wieder ins Terminal:

cd ~/.config
mkdir autostart
cd autostart
ln -s ~/Desktop/PanelPro.desktop PanelPro.desktop

sudo reboot

JMRI will nun einen Neustart und damit ist der PiLocoBuffer nun Einsatzbereit.

Schreibe einen Kommentar

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