Fixed: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Alle Fragen und Probleme zur Konfiguration und um den manuellen Betrieb
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Fixed: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Guten Tag,
ist es mit der Kombination Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox möglich in RailControl einen S88 Rückmelder auszulesen? Und wenn ja, wie könnte man eine Verbindung herstellen?
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by bertr2d2 »

Hallo smith,

möchtest Du nur einen S88 Rückmelder auslesen oder die Kombination RPi, WaveShare CAN mit Gleisbox als Zentrale zusammen mit Railcontrol nutzen ?

Es gibt die Möglichkeit, den S88 Bus an den RPi anzuschließen. Das hat aber einen Pferdefuß: die GPIOs dürfen nur dann an den S88 angeschlossen werden, wenn keine Verbindung vom S88 zum Bahnstrom existiert. Beachtest Du das nicht, grillst Du Deinen RPi.

Deutlich sicherer ist die galv. Trennung des S88 Busses zum RPi. Hier ein paar Besipiele:
https://www.modellbahnelektronik.ch/mel ... toisolator
https://www.stummiforum.de/t160368f7-Gl ... msg2169470

Sofern Du schon ein System mit CAN-Bus hast, bietet sich als Alternative Märklins LinkS88 (60883) an. Dieser hat eine eingebaute galv. Trennung.

Gruß

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

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by _DB_ »

Moin Agent Smith,

fein, Dich jetzt auf dem RailControl-Forum zu treffen.

Ich habe bei dieser Antwort festgestellt, daß die PDF-Dateien meiner RailPi-Beiträge nicht mehr bzw. nur noch sehr schlecht lesbar sind.

@Teddy: Ist da ein Kompressor über die Daten gelaufen?

Ich hänge erst einmal die beiden wichtigsten Dateien neu an und möchte Dich bitten, sie einmal zu sichten. Vermutlich werden Deine Fragen dort beantwortet. Und wenn weitere Fragen aufkommen, stehe ich Dir gern zur Verfügung.

Ich leite meine S88-Signale auf Dekoder von CdB (CANdigitalBahn - Projekt - http://can-digital-bahn.com/modul.php?s ... 26#Mod_Top). Hier werden die Signale nicht nur von binär auf CAN-Protokoll umgesetzt, sondern, wie Gerd das zuvor bereits angemerkt hat, galvanisch entkoppelt.

Das Schöne am CAN-Bus ist ja, daß jeder Teilnehmer mit jedem anderem Teilnehmer sprechen kann. Und Gerds CAN2LAN sorgt dafür, daß der Raspberry Pi mit der WAVESHARE-Schnittstelle auch RailControl am Gespräch beteiligen kann. Tolle Sache!

Und da RailControl wiederum vielerlei Systeme nutzen kann, habe ich zum bestehenden System (ohne Gleisbox) einfach mal das auf dem Arduino laufende DCC-EX hinzugenommen. Streiche Gleisbox, setze Arduino —> super. Allerdings nur noch mit dem DCC-Protokoll. MFX geht dann nicht mehr (irgendwie fehlt die Gleisbox dann doch ;).

Viele Grüße aus Herne - Detlef
Attachments
RailPi_Vers.2.1.1.pdf
(3.67 MiB) Downloaded 44 times
RailPi_Vers.1.1.pdf
(9.57 MiB) Downloaded 36 times
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
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Vielen Dank für die schnellen Rückmeldungen.

Arduino hab ich auch schon zum steuern genutzt, funktioniert aber nicht so ohne weiteres für Loks die nur einen MM-Dekoder besitzen.
Das CANdigitalBahn klingt interessant, jedoch wollte ich möglichst mit den Geräten auskommen, die mir gerade ohnehin schon zur Verfügung stehen.

Die Kombination RPi, WaveShare CAN mit Gleisbox als Zentrale zusammen mit Railcontrol funktioniert bei mir bereits einwandfrei.
Nun möchte ich auch einen Rückmelder anschließen. Dafür will ich ein S88 Modul von Märklin nutzen.
Wenn ich jetzt ein LinkS88 nutzen würde, wie könnte ich dieses dann an mein System anschließen und in Railcontrol nutzen?
User avatar
_DB_
Posts: 103
Joined: Wed May 20, 2020 8:20 pm
Location: Herne - Germany

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by _DB_ »

Hallo smith,

da arbeitest Du Dich vermutlich ähnlich in das Thema ein, wie ich das damals getan habe...

Da ich lediglich über das Märklin-Digital-Starterkit verfügte (Gleisbox mit MM2, Weichen mit integriertem Decoder - sonst keine Digital-Komponenten), fiel mir der Einstieg in die Produkte des CAN-digital-Bahn-Projektes recht leicht.

Meine Frage an Dich wäre: über welche Digital-Komponenten von Märklin verfügst Du denn bereits? Und: ist Dir ein spezielles Produktspektrum wichtiger als ein anderes (Konkret CdB oder Märklin).

Bei den CdB-Produkten benötigst Du einen Startpunkt 2 (ca. 32 EUR) und ein Märklin CS2/CS2-Verbindungskabel 60123 (zwischen der Gleisbox und dem Startpunkt) sowie diverse Gleisreporter Opto nach Bedarf (Stück ca. 75 EUR). Und nicht zu vergessen das passende 12V-Netzteil (ca. 23 EUR).

Die Verbindungen zwischen Startpunkt und den Gleisreportern (also die CAN-Verbindungsleitungen) laufen über handelsübliche LAN-Kabel RJ45.

Das ist schon eine Hausnummer, gerade wenn Du schon Märklin-Komponenten besitzt. Aber welche, das wäre die Frage...

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
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by bertr2d2 »

Hallo Agent smith ;-)
smith wrote: Thu Sep 21, 2023 1:02 pm Die Kombination RPi, WaveShare CAN mit Gleisbox als Zentrale zusammen mit Railcontrol funktioniert bei mir bereits einwandfrei.
Nun möchte ich auch einen Rückmelder anschließen. Dafür will ich ein S88 Modul von Märklin nutzen.
Wenn ich jetzt ein LinkS88 nutzen würde, wie könnte ich dieses dann an mein System anschließen und in Railcontrol nutzen?
eine kleine Hürde gibt es bei der Verwendung des LinkS88 (60883). Der Anschluss hat sieben Pole. Sofern Du noch eine freie Mini-DIN10 Buchse hast, kannst Du das Kabel des LinkS88 durch ein MS2 Ersatzkabel tauschen und direkt in die Gleisbox stecken. Das habe ich gerade mal ausprobiert:

Code: Select all

 root@Modellbahn-BPi:~# wake-up-links88 
08:45:00.591       CAN<-   0x00360300   [0]                          
08:45:00.603       CAN<-   0x00300300   [0]                          
08:45:00.603       CAN->   0x00373F44   [8] 53 38 74 fc 01 00 00 40  S8t....@
Found LinkS88 ID: 15612 (0x74fc -> 0x3cfc)
   sending wake-up sequence
08:45:00.603       CAN<-   0x00360300   [5] 53 38 74 fc e4           S8t..
08:45:00.613       CAN<-   0x00360300   [5] 53 38 74 fc 11           S8t..
08:45:00.634       CAN<-   0x00010300   [7] 53 38 74 fc 0c 00 fc     S8t....
   sending CAN ping
08:45:00.644       CAN<-   0x00300300   [0]                          
08:45:00.644       CAN->   0x00313B6A   [8] 47 43 2d 79 01 27 00 10  GC-y.'..
08:45:00.645       CAN->   0x00313B6A   [8] 47 43 2d 79 01 27 00 10  GC-y.'..
08:45:00.646       CAN->   0x00313F44   [8] 53 38 74 fc 01 00 00 40  S8t....@
inserting awoken LinkS88 ID 15612 (0x74fc -> 0x3cfc) into list
configure LinkS88 ID 15612 (0x3cfc) 
Oder Du nimmst einen Verteiler:
https://www.stummiforum.de/t138823f7-Pr ... eiler.html
https://www.stummiforum.de/t212542f7-Ma ... msg2559086
CdB Startpunkt geht wahrscheinlich auch.

Wie ist denn Dein pysikalischer CAN-Bus Aufbau ? Kannst Du eine Skizze einstellen ?

Gruß

Gerd
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo,
erstmal vielen Dank für die Antworten.
Die einzigen Digital-Komponenten, die ich von Märklin besitze wären die Gleisbox und ein paar Weichendecoder. Ich priorisiere kein spezielles Produktspektrum, jedoch möchte ich natürlich möglichst günstig davon kommen und weitesgehend Geräte nutzen, die mir ohnehin schon zur Verfügung stehen.
Und wenn das anschließen einer LinkS88 an die Gleisbox so einfach ist, wie Gerd das beschrieben hat, würde ich diese Vorgehensweise gerne bevorzugen. Dazu dann noch folgende Frage: Kann RailControl dann über das can2udp Programm auf den Rückmelder zugreifen, oder ist da noch weitere Konfiguration nötig?
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by bertr2d2 »

Hallo smith,
smith wrote: Fri Sep 22, 2023 12:48 pm Die einzigen Digital-Komponenten, die ich von Märklin besitze wären die Gleisbox und ein paar Weichendecoder. Ich priorisiere kein spezielles Produktspektrum, jedoch möchte ich natürlich möglichst günstig davon kommen und weitesgehend Geräte nutzen, die mir ohnehin schon zur Verfügung stehen.
Und wenn das anschließen einer LinkS88 an die Gleisbox so einfach ist, wie Gerd das beschrieben hat, würde ich diese Vorgehensweise gerne bevorzugen. Dazu dann noch folgende Frage: Kann RailControl dann über das can2udp Programm auf den Rückmelder zugreifen, oder ist da noch weitere Konfiguration nötig?
bitte ignoriere all meine bisherigen Beiträge zu dem Thema. Ich war von einem bestehenden Aufbau ausgegangen.
Die von Detlef verlinkten Dokumente zeigen Dir einen einfachen und günstigen Einstig bzw. Weg in das Thema.

Gruß

Gerd
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo Gerd,
das ist auch richtig, ein Aufbau besteht schon (RPi mit Waveshare CAN Modul an einer Gleisbox). Das was jetzt noch fehlt ist ein Rückmelder.
Dazu lautet meine Frage: Wenn ich den LinkS88 an die freie Mini-DIN10 Buchse der Gleisbox wie von dir beschrieben anschließe, kann RailControl diesen dann auch mit can2udp nutzen?
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by bertr2d2 »

Hallo smith,
smith wrote: Sat Sep 23, 2023 9:40 am Dazu lautet meine Frage: Wenn ich den LinkS88 an die freie Mini-DIN10 Buchse der Gleisbox wie von dir beschrieben anschließe, kann RailControl diesen dann auch mit can2udp nutzen?
ja, kann es. Meines Wissens "weckt" Railcontrol aber nicht den LinkS88 auf. Dazu braucht es das kleine Hilfsprogramm wake-up-links88 aus dem can2udp Paket.
Hier die Railcontrol Meldungen:

Code: Select all

Feedback Feedback auto added 10/1032193 updated
Feedback state of Feedback auto added 10/1032193 is now on
Feedback state of Feedback auto added 10/1032193 is now off
Feedback state of Feedback auto added 10/1032193 is now on
Feedback state of Feedback auto added 10/1032193 is now off
Alternativ zum Tausch des Kabels des LinkS88 ist auch so ein Aufbau möglich:

Image

Teile:
Gleisbox (hier 60116)
MS2-Ersatzkabel E146781
Märklin LinkS88 60883
CAN-Connector
3 Kabel mit Dupont Buchse
Waveshare CAN
RaspberryPi2 (geht natürlich auch mit RPi3/4)

Gruß

Gerd
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo Gerd,
super, dann baue ich das so ähnlich mit dem LinkS88 auf. Ich werde berichten, sobald die restlichen Teile da sind. Vielen Dank schon mal für die Infos!
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by teddy »

bertr2d2 wrote: Sat Sep 23, 2023 2:09 pm Meines Wissens "weckt" Railcontrol aber nicht den LinkS88 auf.
Nein, RailControl kann die LinkS88 noch nicht selbst aufwecken. Ist aber noch angedacht.

Gruss
Teddy
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo,
ich habe gerade mal den LinkS88 Rückmelder mit ausgetauschtem Kabel an die Gleisbox angeschlossen. Wenn ich jedoch versuche den LinkS88 mit dem Programm wake-up-links88 aufzuwecken, stürzt railcontrol mit der Meldung "Bus error" ab und can-monitor kann keinen Verkehr mehr mitlesen. Die Ausgabe von wake-up-links88 ist nahezu identisch mit der oben gezeigten Ausgabe (bis auf die Adressen etc.), weshalb ich vermute, dass es schonmal nicht am Rückmelder liegt. Hat jemand eine Idee woran das liegen könnte?
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by teddy »

Hallo smith

Kannst du bitte die railcontrol.sqlite und die railcontrol.log hier einstellen?

Danke und Gruss
Teddy
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Habe zu dieser Nachricht railcontrol.log und railcontrol.sqlite angehängt. Die Logdatei enthält leider keine nützlichen Informationen zum Absturz. Wie sich herausgestellt hat kam der "Bus error" nicht von railcontrol sondern war nur eine Nachricht vom Betriebssystem, die über den Absturz informiert.
Attachments
railcontrol.sqlite
(72 KiB) Downloaded 20 times
railcontrol.log
(1.24 KiB) Downloaded 28 times
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hier habe ich dann noch die Datei candump.log. Diese enthält seit dem Start von railcontrol und dem Ausführen von wake-up-links88 und dem folgenden Absturz den gesamten aufgezeichneten CAN-Verkehr.
wake-up-links88.txt enthält die Ausgabe vom wake-up-links88 Befehl, den ich nach dem Start von railcontrol ausgeführt habe. Danach ist die railcontrol-Seite ohne irgendwelche Fehlermeldungen plötzlich nicht mehr erreichbar gewesen.
Attachments
wake-up-links88.txt
(1.36 KiB) Downloaded 28 times
candump.log
(5.95 KiB) Downloaded 22 times
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo teddy,
hier habe ich nochmal eine neue Logdatei angehängt. In der Datei ist wieder der Start von railcontrol und das Aufwecken des LinkS88 dabei, nur habe ich vorher in den Einstellungen das Debug Level erhöht. Ich hoffe die Datei ist somit etwas hilfreicher.
Attachments
railcontrol.log
(109.31 KiB) Downloaded 28 times
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by teddy »

Hallo smith

Aus deinem Text interpretiere ich, dass du RailControl und wake-up-s88 gleichzeitig auf demselben Port verwendest. Ist das richtig? Das geht denke ich nicht und ist vor allem nicht nötig. Das wakw-up muss lediglich ein einziges Mal ausgeführt werden. Und erst dann sollte RailControl gestartet werden.
Anstatt des wake-up können die LinkS88 auch mit einer CS2 konfiguriert (bzw. geweckt) werden.

Gruss
Teddy
smith
Posts: 11
Joined: Mon Sep 18, 2023 3:26 pm

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by smith »

Hallo Teddy,
ich habe gerade versucht wake-up-links88 auszuführen und danach erst railcontrol zu starten, jedoch komme ich zu dem selben Ergebnis. Gleicher Fehlerlog und der Absturz von railcontrol mit der Meldung "Bus error".
Wie ist das mit dem Port gemeint? Der railcontrol WebServer ist bei 8082. Was für einen Port sollte wake-up-links88 verwenden und wie stehen die beiden Programme dann im Konflikt zueinander?
bertr2d2
Posts: 40
Joined: Sun Aug 09, 2020 9:57 am

Re: Raspberry Pi + Waveshare 17912 2-CH CAN HAT + Gleisbox

Post by bertr2d2 »

Hallo,

wake-up-links88 greift über SocketCAN auf den CAN-Bus zu. SocketCAN erlaubt den Zugriff für mehrere Prozesse gleichzeitig. Sofern das CAN-Interface zur Verfügung steht und kein CAN-Bus Fehler vorherrscht, kann kein Bus-Error vom wake-up-links88 veursacht werden.

wake-up-links88 etabliert keinen eigenen TCP oder UDP Server. Es dürfte unerheblich sein, wann wake-up-links88 gestartet wird. Ich würde es nach dem Start von Railcontrol machen.

Ich konnte die Fehler-Situation leider nicht nachstellen.
@smith,
wenn Du willst können wir mal eine Teams-Session machen. Ich würde mir das gerne auf Deiner Umgebung anschauen.

Gruß

Gerd
Post Reply