Page 1 of 2

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

Posted: Mon Sep 18, 2023 3:34 pm
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?

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

Posted: Thu Sep 21, 2023 6:23 am
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

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

Posted: Thu Sep 21, 2023 7:58 am
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

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

Posted: Thu Sep 21, 2023 1:02 pm
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?

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

Posted: Thu Sep 21, 2023 4:51 pm
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

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

Posted: Fri Sep 22, 2023 7:01 am
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

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

Posted: Fri Sep 22, 2023 12:48 pm
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?

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

Posted: Sat Sep 23, 2023 8:12 am
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

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

Posted: Sat Sep 23, 2023 9:40 am
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?

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

Posted: Sat Sep 23, 2023 2:09 pm
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

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

Posted: Sat Sep 23, 2023 6:13 pm
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!

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

Posted: Sat Sep 23, 2023 7:31 pm
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

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

Posted: Fri Oct 06, 2023 2:50 pm
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?

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

Posted: Fri Oct 06, 2023 6:22 pm
by teddy
Hallo smith

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

Danke und Gruss
Teddy

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

Posted: Fri Oct 06, 2023 7:02 pm
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.

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

Posted: Fri Oct 06, 2023 7:09 pm
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.

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

Posted: Sat Oct 07, 2023 1:21 pm
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.

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

Posted: Sat Oct 07, 2023 7:02 pm
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

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

Posted: Sat Oct 07, 2023 7:27 pm
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?

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

Posted: Tue Oct 10, 2023 8:38 am
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