RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#51 von bertr2d2 , 09.09.2022 03:49

Hallo,

ich habe nun das direkte Lesen von einem Netzwerkinterface (Live Capture) im can-monitor hinzu gefügt. Über die Option -i wählt man das Netzwerk-Interface aus.
Der can-monitor braucht erweiterte Rechte um von einem Netzwerk-Interface lesen zu können. Entweder nutzt man dazu den can-monitor als root, sudo ... oder
man räumt dem Programm entsprechende Rechte ein:

sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' ./can-monitor

Gruß

Gerd


Smallest Rocrail Server Ever II ist jetzt Smallest Railroad Server Ever II
SRSEII -> SRSEII (Raider heisst jetzt Twix, sonst ändert sich nix )


vikr, joachimkr und Rainer Müller haben sich bedankt!
bertr2d2  
bertr2d2
CityNightLine (CNL)
Beiträge: 1.545
Registriert am: 09.10.2012
Spurweite H0
Stromart Digital

zuletzt bearbeitet 09.09.2022 | Top

RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#52 von Rainer Müller , 10.09.2022 18:38

Hallo,

meine Idee von vor einer Woche habe ich mal auf Ubuntu Desktop erfolgreich nachgetestet, allerdings braucht man zwei can2udp-Instanzen für die beiden zu monitorenden Ports/Richtungen, deren UDP-Sender man ins Nirvana (Port 12345) umleiten muss, um ein Aufschaukeln zu verhindern:

// live capture mit zwei can2udp-Instanzen
rainer@medi12u20:~$ ./can2udp/can2udp -l 15730 -d 12345 -i vcan0
rainer@medi12u20:~$ ./can2udp/can2udp -l 15731 -d 12345 -i vcan0
rainer@medi12u20:~$ ./can2udp/can-monitor -i vcan0
18:43:48.138 CAN 0x00300301 [0] Ping Anfrage
18:43:48.140 CAN 0x00311F18 [8] 00 0F 98 12 16 08 00 00 Ping Antwort von GFP UID 0x000F9812, Software Version 22.8
18:43:53.906 CAN 0x00000301 [4] 00 00 00 00 System: alle Stopp/Go-Abfrage
18:43:53.908 CAN 0x00011F18 [5] 00 0F 98 12 00 System: UID 0x000F9812 Stopp
18:43:57.842 CAN 0x00000301 [5] 00 00 00 00 01 System: alle Go
18:43:57.845 CAN 0x00011F18 [6] 00 0F 98 12 0A 01 System: Überlast UID 0x000F9812 Kanal 0x0001


Da ist doch Gerds Lösung deutlich besser - einfacher zu bedienen und kann auch TCP monitoren.
Zitat von bertr2d2 im Beitrag #51
Hallo,

ich habe nun das direkte Lesen von einem Netzwerkinterface (Live Capture) im can-monitor hinzu gefügt. Über die Option -i wählt man das Netzwerk-Interface aus.
Der can-monitor braucht erweiterte Rechte um von einem Netzwerk-Interface lesen zu können. Entweder nutzt man dazu den can-monitor als root, sudo ... oder
man räumt dem Programm entsprechende Rechte ein:
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' ./can-monitor

Gruß

Gerd



Weil ich bei meinen Tests an der Anlage live sehen will wie es vorwärts geht, aber die Ereignisse später am Schreibtich in Ruhe analysieren will, bringe ich dem CAN-Monitor gerade bei, dass er auf Wunsch während der Live-Anzeige in eine candump-Datei mitschreiben kann. Mal sehen, dass das auch bei Netzwerk-Livebetrieb klappt.


Hallo Gerd,

seit der Änderung für Discovery mit DLC=5 für deine MM-Lok auf "Adresse <dezimal>" sieht das bei mfx-Discovery etwas seltsam aus:

20220810.141245.885 CAN 0x00031F18 [6] 73 FE 1D 15 20 D0 Lok Discovery - 0x73FE1D15 Range 32 ASK 208
20220810.141245.889 CAN 0x00031F18 [5] 73 FE 1D 15 20 Lok Discovery - Adresse 1946033429 Protokoll Range 0 - 32
20220810.141245.901 CAN 0x00040300 [6] 73 FE 1D 15 00 01 MFX Bind: MFX UID 0x73FE1D15 MFX SID 1

zum Vergleich früher:
20220810.141245.889 CAN 0x00031F18 [5] 73 FE 1D 15 20 Lok Discovery - 0x73FE1D15 Protokoll Kennung 0x20


Da brauchen wir wohl noch eine Fallunterscheidung. Und was bei DCC kommt, ist der Dokumentation leider nicht klar zu entnehmen: in der Grafik oben steht Local-ID, in der Liste drunter Adresse (z.B. Local-ID von DCC-Adresse 3: 0xC003 => 49155).


Gruß
Rainer


 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#53 von Lauenstein , 30.10.2022 22:58

Hallo,
ich suche die Möglichkeit, die CAN-Befehle zwischen der cs2.exe und der CS2 zu monitoren. Gab es da nicht eine Funktion in der cs2.exe, wie man die CAN-Befehle sich anzeigen lassen kann?

Danke für Hinweise,
LG
Lauenstein


Lauenstein  
Lauenstein
InterCity (IC)
Beiträge: 963
Registriert am: 13.10.2019
Spurweite H0
Stromart AC, Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#54 von Rainer Müller , 31.10.2022 18:19

Hallo Lauenstein,

Zitat von Lauenstein im Beitrag #53
Gab es da nicht eine Funktion in der cs2.exe, wie man die CAN-Befehle sich anzeigen lassen kann?


ja, ein Klick mit der rechten Maustaste ins rechte Fahrpultfenster. Ich habe aber den Eindruck, dass da zensiert wird.


Gruß
Rainer


 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#55 von Lauenstein , 31.10.2022 18:59

Seltsam,
bei mir passiert da nämlich gar nichts. Schon mehrfach probiert

LG,
Lauenstein


Lauenstein  
Lauenstein
InterCity (IC)
Beiträge: 963
Registriert am: 13.10.2019
Spurweite H0
Stromart AC, Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#56 von Rainer Müller , 02.11.2022 19:15

Hallo,

also bei mir klappt das auf unterschiedlichen PCs sowohl mit Gegenstelle als auch im Demo-Modus.

Aber eigentlich will ich ja hier den CAN-Monitor bewerben, in diesem Fall habe ich den augenblicklichen Stand von Gerds Livemitschnitt und meiner Windows-Anpassung bereitgestellt.

Zum Verwenden zip-Datei entpacken und den Ordner mit dem CAN-Monitor und den zwei von Wireshark entliehenen DLLs (zum Netzwerkzugriff) irgenwo speichern, dann darin eine Befehlszeile öffnen.

Unter Windows haben die Netzwerkschnittstellen leider furchtbare Namen (NPF_{...irgendwas...}), so dass ich auf eine Nummerierung umgestiegen bin. Als erstes ruft man den CAN-Monitor mit "-i 0" auf, um eine Liste der Schnittstellen zu erhalten, danach mit der Nummer der gewünschten, bei meinem PC hier "-i 4" für die PCIe-Ethernetkarte:


D:\Projekte\can-monitor> can-monitor -i 0
1: NdisWan Adapter --> \Device\NPF_{E6866952-9D79-4EEE-A74D-E7EA0F76CCAB}
2: NdisWan Adapter --> \Device\NPF_{5467F49D-449C-4FFC-8281-30765059F15C}
3: NdisWan Adapter --> \Device\NPF_{D8FB7642-2526-4159-A864-725106C5CF64}
4: Realtek PCIe GBE Family Controller --> \Device\NPF_{6308DBA8-0D50-48F5-9A25-69AB637D9342}
5: Adapter for loopback traffic capture --> \Device\NPF_Loopback

D:\Projekte\can-monitor> can-monitor -i 4
18:50:01.764 029> UDP 0x00310000 [8] 00 00 00 00 01 01 EE EE Ping Antwort von CS2 Software UID 0x00000000, Software Version 1.1
...


Viel Spass beim Test
Rainer

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

vikr und Lauenstein haben sich bedankt!
 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#57 von Lauenstein , 03.11.2022 21:16

Danke,
leider funktioniert das bei mir nicht:

1
2
3
4
5
 
C:\Users\Lauenstein\Downloads\f7t139058p2478412n2_vfdglkMO\canmon>can-monitor -i 0
1: Adapter for loopback traffic capture --> \Device\NPF_Loopback
 
C:\Users\Lauenstein\Downloads\f7t139058p2478412n2_vfdglkMO\canmon>can-monitor -i 1
Couldn't open interface 1: Error opening adapter: Das System kann den angegebenen Pfad nicht finden. (3)
 



Wieso sieht der meinen netzwerkadapter nicht richtig?

LG,
Lauenstein


Lauenstein  
Lauenstein
InterCity (IC)
Beiträge: 963
Registriert am: 13.10.2019
Spurweite H0
Stromart AC, Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#58 von Rainer Müller , 05.11.2022 15:54

Hallo,

Zitat von Lauenstein im Beitrag #57

Wieso sieht der meinen netzwerkadapter nicht richtig?

LG,
Lauenstein

da bin ich in eine Falle getappt und musste länger suchen:
Der Netzwerkzugriff erfordert unter Windows den npcap-Dienst, den ich allerdings wohl als Beigabe ohne meine Aufmerksamkeit z.B. mit Wireshark installiert erhielt.

Man kann ihn von https://npcap.com/ herunterladen, und zwar indem man im Kapitel Download den Link "Npcap 1.71 installer" anklickt und die "npcap-1.71.exe" runterlädt und genau EINMAL ausführt; auf der Konfigurationsseite sollten alle drei Optionen abgewählt sein bzw. werden. (Die 1.71 ist die aktuelle Version und wird sich im Lauf der Zeit ändern).

Anschließend sollte das mit dem Netzwerkadapter klappen.


Gruß
Rainer


Lauenstein hat sich bedankt!
 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#59 von Rainer Müller , 30.10.2023 18:55

Hallo CANMON-Anwender,

nach knapp einem Jahr ist mal wieder eine neue Version für Windows-Anwender fällig, sie entspricht dem Stand von Gerds Original vom 22. Oktober 2023.

Alle Dateien aus https://rainer.mueller-korntal.de/repo/canmon.zip in einen beliebigen Ordner entpacken, er enthält dann den CAN-Monitor, zwei von Wireshark entliehene DLLs zum Netzwerkzugriff und eine zlib1-DLL zur Dekompression.
Die hier schon weiter oben genannten Hinweise sind als readme.txt mit im Archiv.

Da ich mir auf Gerds Anraten kürzlich einen Github-Account ("mue473") zugelegt habe, bei dem ich zur Zeit in der Lernphase bin und ihn schrittweise befülle, stelle ich für Interesierte die zum Erzeugen erforderlichen Quellen unter https://github.com/mue473/testtools/tree/main/can-monitor bereit. Aber es gibt nur geringe Abweichungen zur Basisversion.


Gruß
Rainer


vikr, bertr2d2 und LDG haben sich bedankt!
 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#60 von vikr , 31.10.2023 02:04

Hallo Rainer,

Zitat von Rainer Müller im Beitrag #59
Alle Dateien aus https://rainer.mueller-korntal.de/repo/canmon.zip in einen beliebigen Ordner entpacken, er enthält dann den CAN-Monitor, zwei von Wireshark entliehene DLLs zum Netzwerkzugriff und eine zlib1-DLL zur Dekompression.
Die hier schon weiter oben genannten Hinweise sind als readme.txt mit im Archiv.
erster Start klappte nicht.
CANMON findet die (im System32 vorhandene) vcruntime140.dll nicht. Wo sucht er die?

Bild entfernt (keine Rechte)

MfG

vik


im Übrigen - Märklin am liebsten ohne Pukos, z.B. als Trix


vikr  
vikr
ICE-Sprinter
Beiträge: 6.305
Registriert am: 23.10.2011
Gleise M, C u. K.
Spurweite H0, N
Stromart Digital, Analog


RE: UDP-CAN-Monitor - Bequem den CAN-Bus beobachten

#61 von Rainer Müller , 31.10.2023 15:57

Hallo Vik,

das ist ärgerlich, aber erst Mal Dank fürs Antesten.

Deiner Windows-Installation scheint die C-Laufzeitbibliothek für 32 Bit zu fehlen, ich dachte die sei immer dabei. Aus meinen Quellen kann VS sowohl die 32 als auch die 64 Bit-Version generieren, ich hatte mich für 32 entschieden, da das auf allen Rechnern, auch auf "alten Gurken", funktionieren sollte - du beweist das Gegenteil.
Und der CAN-Monitor profitiert nicht von 64 Bit, nur die EXE wird größer.

Microsoft-verquer findest du in System32, weil da ja 32 im Namen vorkommt, die 64 Bit DLLs, in SysWOW64 dagegen die 32 Bit DLLs. Und in SysWOW64 scheint die vcruntime140.dll zu fehlen.

Zur Reparatur braucht du Microsoft Visual C++ Redistributable für Visual Studio x86, das müste bei Ausführen nach Download die fehlende(n) Datei(en) hinzufügen. Diesmal steht 86 für 32 Bit, und im Link steht "17" für "VS2015 und neuer"!


Gruß
Rainer


vikr und bertr2d2 haben sich bedankt!
 
Rainer Müller
InterRegioExpress (IRE)
Beiträge: 313
Registriert am: 29.06.2006
Homepage: Link
Ort: Korntal
Gleise Mä: K und M
Spurweite H0
Steuerung basrcpd
Stromart Digital


   

Sound für Br E160
Railware Rangier Fahrstraßen

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz