RailPi - Warum mit Kanonen auf Spatzen schießen?

Alle Fragen und Probleme zur Konfiguration und um den manuellen Betrieb
machmalpause
Posts: 13
Joined: Fri Jan 21, 2022 12:18 pm

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by machmalpause »

Hi Detlef,
das hört sich spannend an.
Ich war nämlich neulich am Grübeln, welche Ressourcen CAN2LAN in Kombination mit RailControl (oder anderer Software) auf einem headless Server wohl benötigt, und ob ich meine kleine Raspi-Farm möglicherweise um einen Raspi 4B für die Modellbahn erweitern sollte .
Die von dir gemessenen Werte sind derart traumhaft niedrig, dass mein 3B ganz gut mit der geplanten Anlage zurechtkommen sollte. Dann schraube ich jetzt mal den CAN-HAT drauf und stöpsele das Gehäuse zusammen.
Viele Grüße,
Franky
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

RailPi - Version 2 Installationsanleitung

Post by _DB_ »

Hallo zusammen,

ich finde den neuen RailPi Vers.2.0 zu spannend, als ihn euch noch weiter vorzuenthalten.

Daher lege ich die Vorab-Version der Installationsanleitung schon mal ins Forum.

Sollten sich Fehler oder Ungereimtheiten eingeschlichen haben, bitte ich um rasche Rückmeldung - ich werde es schnellstmöglich korrigieren.

Eine spannende Zeit bei der Installation. Die Kapitel 1 und 2 der Doku zum RailPi Vers. 1.1 bleibt (noch) aktuell - ihr findet die Doku hier: download/file.php?id=61

Bis dann - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
machmalpause
Posts: 13
Joined: Fri Jan 21, 2022 12:18 pm

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by machmalpause »

Hi Detlef,
wo finde ich die V2 denn ?
Grüße, Franky
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by _DB_ »

Hallo Franky,

uups - schon wieder den Anhang verbummelt... Aber eigentlich wollte ich nur prüfen, ob und wer den Beitrag als erster liest ;)
RailPi Vers.2.0.pdf
Spar nicht mit Kritik - kann nur besser werden!

Viele Grüße aus Herne - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
machmalpause
Posts: 13
Joined: Fri Jan 21, 2022 12:18 pm

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by machmalpause »

Hallo Detlef,
wie praktisch, dass ich heute noch nicht am RailPi herumgebastelt habe ...
Werde morgen deine Anleitung mal komplett durchkochen, dann melde ich mich wieder bei dir.
Bis denne, und schonmal vielen lieben Dank für deine Mühe.
Viele Grüße,
Franky
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by bertr2d2 »

Hallo Zusammen,

ich lese hier gerade von WLAN Problem im Zusammenspiel von RPi mit can2lan. can2lan braucht ein Interface mit IPv4 Adresse um UDP Nachrichten an die Broadcast-Adresse zu senden. Im Init-Skript (/etc/init.d/can2lan) wird von eth0 ausgegangen. Dies sollte man anpassen. Wenn man z.B. WiFi nutzt, dann muss man wlan0 eintragen.
Bei neueren Versionen von can2lan (akt. 1.5) kann man mehrere Interfaces angeben:

Code: Select all

...
can2lan ... -b wlan0,eth0
...
Die Interfaces wlan0 (Wifi) und eth0 (LAN) werden dann reihum abgefragt, ob bzw. bis sie eine gültige Adresse haben. Das erleichtert etwas die Konfiguration und ggf. Wechsel der Anschlussart.

Gruß

Gerd
vikr
Posts: 58
Joined: Thu Jul 08, 2021 7:37 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by vikr »

Hallo Gerd,
bertr2d2 wrote: Thu Jan 27, 2022 12:35 pmBei neueren Versionen von can2lan (akt. 1.5) kann man mehrere Interfaces angeben:

Code: Select all

...
can2lan ... -b wlan0,eth0
...
konntest Du schon Erfahrungen mit can2lan in einer ESP32-Umgebung sammeln? Falls ja in welcher?

MfG

vik
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by bertr2d2 »

Hallo vik,
vikr wrote: Thu Jan 27, 2022 3:33 pm konntest Du schon Erfahrungen mit can2lan in einer ESP32-Umgebung sammeln? Falls ja in welcher?
nein, ich habe noch keine Erfahrung mit ESP32 im Modellbahnumfeld. Aber ich wüsste nicht was gegen ein reibungsloses Funktionieren sprechen würde. Soweit ich weiss hat Gustav Wostrak (CANguru Entwickler) auch etwas can2lan ähnliches entwickelt. Er nennt es CANguru-Bridge. Sein ESP-NOW Ansatz zur Anbindung von Knoten finde ich zudem interessant.

Gruß

Gerd
machmalpause
Posts: 13
Joined: Fri Jan 21, 2022 12:18 pm

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by machmalpause »

Hallo Detlef,

Ich habe deine RailPi V2 Anleitung (DietPi OS) auf einem Raspi3 inzwischen mehrfach nachgekocht.
Anfangs hatte ich als Linux-Einsteiger ein paar Probleme, aber inzwischen scheint das DietOS gut zu laufen.

Deine Anleitung ist sehr verständlich geschrieben und gut strukturiert. Hier ein bissl Feedback, um das du gebeten hast.

1. S5: Vielleicht für Newbies eine kurze Erläuterung, dass der Raspi für die Installation ans LAN (Ethernet) angeschlossen sein muss. Hilfreich wäre für Newbies ein kurzer Hinweis oder Verweis, wie die IP Adresse gefunden werden kann (z.B. im Router), und vielleicht ein link mit einer kurzen Erläuterung zum Einloggen per SSH auf PC / Mac / Linux ?
2. S5: Erste Meldung bei der Konfiguration: 'Serial Console' aktivieren ?
3. S5: Zuerst das Menü 'DietPi-Config' aufrufen, dann Punkt 1-6 abarbeiten, dann EXIT
4. S13: Nach der Konfiguration des CAN Adapters muss neu gebootet werden ?
5. S15: Als 'dietpi' anmelden könnte noch klarer hervorgehoben sein
6. S15: die Leerzeilen mit ':' löschen
7. S15: FEHLER beim Verteilen der erzeugten Programme ?:
dietpi@RailPi:~/railroad$ cd
--> cd wechselt ins falsche Verzeichnis, denn die Dateien für 'make' wurden im Verzeichnis railroad/can2udp/src angelegt
8. S15: FEHLER beim Kopieren von gleisbild.cs2 ?:

sudo cp ../files/maerklin/config/gleisbild.cs2 /var/www/ html/gleisbild.cs2
--> erwartet can2lan.init die Datei nicht im Verzeichnis /var/www/html/config/ ?

Ich hoffe, du findest diese Anregungen / Fragen hilfreich.

Ich selbst werde erst einmal bei einer etwas umfangreicheren Raspi-OS Distro bleiben, denn ein vertrauter Desktop und/oder VNC ist für's Experimentieren als Anfänger schon sehr hilfreich. In den nächsten Tagen möchte ich dann ausprobieren, ob ich auf dem DietPi auch den Rocrail Server installiert bekomme.

Für den späteren schnellen und stabilen (Dauer-)Betrieb von RailControl auf einem Raspi könnte das DietPi die ideale Wahl sein !

Viele Grüße,
Franky
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by _DB_ »

Hallo Franky,

vielen Dank für die umfangreichen Hinweise. Ich werde mein Dokument heute noch überarbeiten!

Viele Grüße aus dem heute (in diesem Falle glücklicherweise) verregneten Herne - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
vikr
Posts: 58
Joined: Thu Jul 08, 2021 7:37 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by vikr »

bertr2d2 wrote: Sat Jan 29, 2022 6:44 am
vikr wrote: Thu Jan 27, 2022 3:33 pm konntest Du schon Erfahrungen mit can2lan in einer ESP32-Umgebung sammeln? Falls ja in welcher?
nein, ich habe noch keine Erfahrung mit ESP32 im Modellbahnumfeld. Aber ich wüsste nicht was gegen ein reibungsloses Funktionieren sprechen würde. Soweit ich weiss hat Gustav Wostrak (CANguru Entwickler) auch etwas can2lan ähnliches entwickelt. Er nennt es CANguru-Bridge. Sein ESP-NOW Ansatz zur Anbindung von Knoten finde ich zudem interessant.
Danke für den Hinweis, ich werde mir das Kapitel in seinem Buch nochmal genauer ansehen...
Aber eigentlich wollte ich bei der Arduino-IDE bleiben...

MfG

vik
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Version 2 in Vorbereitung

Post by bertr2d2 »

Hallo Detlef,
_DB_ wrote: Tue Jan 25, 2022 5:20 pm Auf diesem RailControl-Leitrechner habe ich äußerst großzügig dem CAN2LAN-Dienst die beiden Kerne 1+2 für Echtzeitbetrieb zugeordnet, RailControl läuft auf Kern 3 mit normaler Priorität und SSH- und Webserver laufen auf Kern 4, ebenfalls mit normaler Priorität.
can2lan zwei Kerne zuzuweisen halte ich für übertrieben :-) can2lan ist im Grunde nur ein primitiver Vermittler zwischen CAN <-> (W)LAN. Da werden keine komplizierten Berechnungen gemacht.
Ich glaube, das o.g. Setup eher kontra produktiv ist, weil hier künstlich Resourcen beschränkt werden. Wenn Du ein ein performantes System haben willst (geringe Latenz) ist IMHO ein preemptiver Kernel (auch Low-Latency Desktop genannt) der bessere Ansatz. Es geht ja letztendlich darum, das Ereignisse bestimmte Reaktionen mit möglichst geringer Verzögerung auslösen.

Gruß

Gerd
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by _DB_ »

Hallo Gerd,

ich halte es auch für übertrieben :) - aber da der RailPi eh nix zu tun hat...

:lol: irgendwie muss man die 4 Kerne ja unterbringen...

Ich hab mir so vorgestellt, daß es folgende Aufgaben sind, die der RailPi absolvieren muss:
- CAN2LAN - dieser Dienst bekommt einen Kern mit max. Prio
- Webserver - auch dieser Dienst bekommt einen Kern mit max. Prio
- RailControl - auch diese App kann über htop auf eine hohe Prio (ohne Kernzuordnung) gebracht werden - aber es sind ja auch noch 2 Kerne übrig

Auf jeden Fall läuft meine Anlage jetzt prächtig. Und Effekte, daß ein Zug einfach mal unkontrolliert weiterfährt, weil ich bei einem anderen Zug irgendwelche Lokfunktionen betätigt habe, konnte ich seitdem nicht mehr beobachten. Zuvor unter PiOS und ohne diese 'Tuning-Maßnahmen' leider ja und viel zu oft.

Und die Leistungsaufnahme von lediglich 1,5 Watt zeigt ja auch deutlich, daß ich ihm zwar höchste Prio einräume, er aber dieses Potential gar nicht ausschöpft. Trotzdem stelle ich den lebenswichtigen Prozessen das Potential zur Verfügung... Bis jetzt hat sich's bewährt.

Mal gucken, wie ich in ein paar Tagen/Wochen/Monaten darüber denke ;)

Viele Grüße aus Herne - ich mach mal mit der Überarbeitung meiner Doku über 'RailPi's auf Diät' weiter - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by _DB_ »

ach ja: ehe ich es vergesse: vielen Dank für den IMHO-Tip. IMHO kenne bislang noch nicht - vielleicht wird's dann einen RailPi Vers. 3 geben...
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by bertr2d2 »

Hallo Detlef,

Dein Dokument ist toll ! Ich finde es sehr lobenswert, wenn sich Leute die Zeit nehmen um Beschreibungen zu erstellen und damit anderen den Einstieg zu erleichtern.

Ich habe nur eine Anmerkung: Du verwendest wahrscheinlich das Interface von Waveshare.
Wäre gut wenn Du das bei der Konfiguration erwähnen würdest. Denn der Eintrag:

Code: Select all

dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=23
ist spezifisch für diesen Adapter. Die meisten anderen MCP2515 basierenden Interfaces verwenden einen anderen IRQ-Pin. Hier sieht der Eintrag so aus:

Code: Select all

dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25
Wenn Du den Waveshare Hat verwendest: Warum konfigurierst Du nur ein CAN Interface ?
Hier ist die originale Beschreibung: Waveshare 2-CH CAN HAT

Gruß

Gerd
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by _DB_ »

Hallo Gerd,

vielen Dank für Deine Anmerkungen - ich habe Deine Tips bereits in die noch nicht gepostete Überarbeitung der Doku aufgenommen.

Du bist ja lustig: Die Doku findest Du lobenswert... Und Deine Arbeit? Ohne Dich und Teddy gäbe es nicht nur die Doku nicht...

Aber vielen Dank für Dein Lob. Das motiviert. Morgen werde ich dann die neue Version 'Installation RailPi Vers. 2.1' posten.

Du hattest ganz recht, ich nutze - übrigens auf Deine Empfehlung hin - das Waveshare-CAN HAT und bin damit sehr zufrieden. Ich habe mich deshalb auf die Konfiguration lediglich eines Kanals beschränkt, weil ich
- faul bin
- noch recht grün hinter den Ohren bin und beide Kanäle gleichzeitig selbst noch nicht ausprobiert habe
- den Text gerne kurz und übersichtlich halten möchte (na ja :oops: )
- und mit dem Dokument lediglich einen leichten Einstieg, aber keine Lösung für jeden denkbaren Fall (das geht auch gar nicht) liefern möchte bzw. kann.

Wie heißt es so schön: nur selbst essen macht dick.

Aber man muss ja nicht gleich alles selber kochen :)

Bis morgen dann - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
machmalpause
Posts: 13
Joined: Fri Jan 21, 2022 12:18 pm

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by machmalpause »

Hallo Gerd,

ich bin ganz neu dabei und bastele gerade den RailPi von Detlef nach (bei mir ein Raspi3 mit dem WaveShare CAN HAT). Momentan probiere ich das DietPiOS aus. Neben RailControl experimentiere ich auch mit anderen Steuersoftware-Kombinationen:

- RailControl-Server, per CAN2LAN
- Rocrail-Server, steuert das CAN-Interface direkt an (und das geht SUUUPER !)
- Demos von iTrain/WinDigiPet/Modellstellwerk oder die Märklin CS2-App (V3.8.1 only) auf Win/MacOS, per CAN2LAN

Funktioniert bisher alles absolut perfekt, ich bin ganz begeistert !

Bisher nutze ich nur den CAN0, zusammen mit einer Gleisbox, zwei MS2 und einigen CdB Komponenten. Alles lediglich on-the-fly, ich bin noch in der Testphase, aber es soll mal eine mittelgroße Anlage werden.

Was könnte man denn mit dem zweiten CAN-Interface des Waveshare HAT so alles anstellen ? Wäre es vorteilhaft, die Steuersignale für das Rollmaterial und die für Weichen/Rückmelder etc. auf zwei separate CAN-Busse aufzuteilen ?!?

Viele Grüße,
Franky

PS Später soll dann noch der CANguru von Gustav funken. Sozusagen "NextGen"-CAN-Nodes auf ESP32. Der Lötkolben steht schon bereit !
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by bertr2d2 »

Hallo Franky,
machmalpause wrote: Sat Jan 29, 2022 9:50 pm Was könnte man denn mit dem zweiten CAN-Interface des Waveshare HAT so alles anstellen ? Wäre es vorteilhaft, die Steuersignale für das Rollmaterial und die für Weichen/Rückmelder etc. auf zwei separate CAN-Busse aufzuteilen ?!?
ja, das Abtrennen der Weichen/Rückmelder auf einem zweiten CAN-Bus wäre ein Beispiel. Hier könnte man ein System unabhängig von einer Gleisbox nutzen. Entlastet die Gleisbox.
Oder ein zweiten Bus mit einer eigenen Gleisbox für Signale etc pp. Die Gleisboxen dürfen aber Ausgangsseitig sich nicht berühren !
Mir fällt z.B. das MS1 Relay von Rainer Müller ein. Damit kann man MS1en auch zusammen mit der Gleisbox verwenden. Nicht das der CAN-Bus am Limit wäre, aber das MS1/CS1 Protokoll ist wesentlich geschwätziger. So ist ein Debugging einfacher.

Aber so etwas muss nicht in einem Rookie Dokument stehen ;-)

Gruß

Gerd
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Installationsanleitung zum RailPi Vers. 2.1

Post by _DB_ »

Hallo zusammen,

die Überarbeitung der Installationsanleitung ist fertig. Meldet Euch bitte, wenn Ihr Fehler entdeckt, Verbesserungswünsche oder einfach nur Fragen dazu habt.
RailPi Vers.2.1.pdf

Wie heißt es so schön: Have a lot of fun!

Einen schönen Sonntagnachmittag noch! - Detlef
Märklin H0 Gleisbox aufgepeppt -
RailPi V2 mit Gerds 'can2lan', Teddy's 'RailControl', CdB Modulen, Gustavs 'CANguru-System'
und DCC-EX - vorzugsweise für die LGB und zum Testen
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: RailPi - Warum mit Kanonen auf Spatzen schießen?

Post by bertr2d2 »

Hallo Detlef,

vielen Dank für die neu Doku. Eine Bitte habe ich noch (Seite 18):
dtparam=spi=on
muß die folgende Zeile hinzugefügt werden:
dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=23


Unterhalb bitte noch folgenden Hinweis einfügen:
Für andere RPI-CAN Interfaces ist der Interrupt zumeist 25.

Ich weiß, das Du nicht für alle RPi-CAN Interfaces Deine Beschreibung machen kannst. Aber dieser kleine Hinweis hilft ggf. anderen zum schnellen Einstieg.

Gruß

Gerd
Post Reply