Topic-icon xPhcLog, log events on the PHC module bus

Mehr
14 Jan 2017 23:31 #31 von simonjo
I have been testing with some of these USB sticks, and unfortunately I get similar results. Sometimes stick 'A' works perfectly, sometimes it starts showing a lot of stale bytes, although nothing is happening on the bus. There is no systematic reason for (not) working, it seems to be random. Also with other sticks.

I also had this convertor board ( www.aliexpress.com/item/Single-Chip-Micr....13010608.0.0.wnp9Fn ) and it showed the same problems and even worse.

There can be a number of reasons these devices seem to fail:
- the auto-detect direction logic, so whether to listen passively on the bus, or grab the bus to talk
- is there an issue with the used levels? as these devices are powered with 5 or 3.3V
- does it use a periodic algorithm to sense the state of the bus and thereby causes interference?
- wrong setting in my software


If I find some time I will try to activate a MOXA NPort5150 on my PHC system and see what happens as this one worked ALWAYS in the past. But for now I don't have much time.


I must say that in the past best results were obtained using the standard RS232 port and connecting Gnd/RX. In this config there can not be an influence on the PHC RS485 module bus.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
16 Mär 2017 07:53 #32 von idcotton
Hallo Zusammen,
ich habe gestern versucht xPHCLog zu nutzen.
Leider bekomme ich nichts in das Logfile geschrieben, wenn ich Lampen oder Rollos schalte.

Ich habe das über einen USB RS485 Controller verucht der an den Raspberry2 (Jessie) angeschlossen ist.

Wenn ich den Befehl : ls -l /dev/ttyUSB0 aufrufe, wird folgendes ausgegeben :
crw-rw---T 1 root dialout 188, 0 Mar 15 15:43 /dev/ttyUSB0.

Ich denke damit ist bestätigt, das der USB RS485 Controller erkannt wurde.
Die Verkabelung habe ich einmal zur STM 940 hergestellt und einmal zur 940 SPV.

Beide haben keine Reaktion gezeigt, bzw. keine Logfile Einträge gemacht.

Habe ich irgend etwas vergessen im Raspberry zu konfigurieren? Ich benutze Jessie auf dem RSP2.

@Harald, Du hast doch eine vergleichbare Hardwarekonfiguration, kannst Du mir vielleicht deine xphclog.ini zusenden.

Danke und viele Grüße
Maik



Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
16 Mär 2017 09:24 #33 von haribo
Hallo Maik,

du musst auf jeden Fall den RS485-Anschluss der Stromversorgung nutzen. (siehe http://phc-forum.de/index.php/forum/suche?query=screw&childforums=1&ids=51&start=30 ).

Meine ini-Datei habe ich angelegt. Viel Erfolg!

Gruß, Harald
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
16 Mär 2017 10:41 #34 von idcotton
Hallo Harald,
ich werde nachher wenn ich Zuhause bin noch einmal einen Test starten.
Kannst Du mir vielleicht noch schreiben mit welchem Parameter Du die xphclogd.raspi startest.
Benutzt Du nur (--ini xphclog.ini) ?

Hast Du an deinem Raspberry (Jessie) noch etwas geändert?

Jo schreibt hier was, ich denke es hat aber nichts mit ttyUSB0 zu tun oder?

Did you have a look at below link? you need to disable the kernel from using a serial port otherwise another program cannot use it and any external connected device may block the raspi.

raspberrypi.stackexchange.com/questions/...0-on-raspbian-jessie


Jo


Danke und Gruß
Maik

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
16 Mär 2017 14:45 #35 von oberp
Hallo @ all
Ich versuche, mein STM-V3 über ein ComServer per LAN mit dem Raspberry Pi zu verbinden:
Der ComServer ist ein "USR-TCP232-2" ( hier ). Ich bekomme ihn auch per ping über 192.168.1.9 zu fassen.
nmap zeigt mir aber, dass keine Ports offen sind. Wenn ich xPhcLog starte (die debug-Version), zeigt er mir folgendes an:
.
2017-03-16,13:39:13,001C0000,CApp::InitLogging,xPhcLogd (Linux/RbPI), v4.0.0.4, Sep 16 2016, Jo Simons (c) 2007-2016

+ xPhcLogd   (Linux/RbPI) ------ v4.0.0.4, Sep 16 2016, Jo Simons (c) 2007-2016
+ =============================================================================
2017-03-16,13:39:13,00080000,CMyApp::OnRun
Press CTRL-C to quit...
2017-03-16,13:39:13,00090000,CPhclogd::OnConfig,version=4.0.0.4,Sep 16 2016
2017-03-16,13:39:13,00090010,CPhclogd::OnConfig,mode   =1
2017-03-16,13:39:13,00090020,CPhclogd::OnConfig,device =/dev/ttyUSB0
2017-03-16,13:39:13,00090000,CPhclogd::StrAttr,attr=phclogd.locaddr,val=192.168.1.9
2017-03-16,13:39:13,00090030,CPhclogd::OnConfig,locaddr=192.168.1.9
2017-03-16,13:39:13,00090000,CPhclogd::NumAttr,attr=phclogd.locport,val=20108
2017-03-16,13:39:13,00090040,CPhclogd::OnConfig,locport=20108
2017-03-16,13:39:13,00090000,CPhclogd::NumAttr,attr=phclogd.publish,val=7
2017-03-16,13:39:13,00090050,CPhclogd::OnConfig,publish=7
2017-03-16,13:39:13,00090000,CPhclogd::StrAttr,attr=phclogd.nodeid,val=myHouse
2017-03-16,13:39:13,00090060,CPhclogd::OnConfig,nodeid =myHouse
2017-03-16,13:39:13,00090000,A,version=4.0.0.4,Sep 16 2016
2017-03-16,13:39:13,00090010,A,legend:
2017-03-16,13:39:13,00090011,A,  o0=out0-7,o1=out8-15
2017-03-16,13:39:13,00090012,A,  i0=in0-7,i1=in8-15
2017-03-16,13:39:13,00090013,A,  l0=out0,l1=out1,l2=out2,l3=out3 (amd/ebd/dim)
2017-03-16,13:39:13,00099999,CPhclogd::OnConfig
2017-03-16,13:39:13,00090000,CPhclogd::OnInit
2017-03-16,13:39:13,00090010,CPhclogd::OnInit,using socket on 192.168.1.9:20108
2017-03-16,13:39:13,00090020,CPhclogd::OnInit,failed to open socket
2017-03-16,13:39:13,00099999,CPhclogd::OnInit,err=3
2017-03-16,13:39:13,00090000,CPhclogd::OnExit
2017-03-16,13:39:13,00099999,CPhclogd::OnExit,err=3
2017-03-16,13:39:13,00080130,CMyApp::OnRun,cannot start phclogd
2017-03-16,13:39:13,00080200,CMyApp::OnRun,terminating app
CTRL-C pressed,terminating app
2017-03-16,13:39:13,00080320,CMyApp::OnRun,stopping mqttc
2017-03-16,13:39:13,00080320,CMyApp::OnRun,stopping phclogd
2017-03-16,13:39:13,00089999,CMyApp::OnRun,err=0
- 0 (Success)
2017-03-16,13:39:13,001C9999,CApp::Run,err=0
Fehlermeldung: "OnInit,failed to open socket"

Damit kann ich nicht viel anfangen :-). Zu dem ComServer gibt es von USR ein Windows-Programm zum konfigurieren. Screenshots sind im Anhang. Sind die Einstellungen richtig? Bzw. brauche ich das Windowsprogramm überhaupt?
Was bedeutet in diesem Zusammenhang LocalAddress/-Port und RemoteAddress/-Port?
Und am wichtigsten: Wer kann mir helfen?
Gruß Torsten

PS.: Die Reportdatei und das LogFile sind auch im Anhang.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 10:25 #36 von Eckert258
Hi oberp,
soweit ich weiß funktioniert xPHClog nur wenn du den RS485-Adapter direkt mit der Stromversorgung verbindest und nicht nur die STM über LAN.
Grüße Eckert

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 11:10 #37 von oberp
Hallo Eckert
Da hab' ich mich vielleicht nicht richtig ausgedrückt. Von der Stromversorgung (Anschlüsse "+A" und "-B") auf den rs232-Converter (Anschlüsse "RX" und "GND") und dann ins LAN zum Raspberry. Die IP-Adresse des Converters ist festgelegt: 192.168.1.9, ich kann ihn anpingen und die (Windows-)Software vom Hersteller findet den Converter auch. So weit, so gut.
xPhcLog kann aber anscheinend nichts mit dem Converter anfangen. Jedenfalls bekomme ich nur die Fehlermeldung "failed to open socket". D.h. doch, das xPhcLog den Converter garnicht ansprechen kann, oder? Muss ich die Verbindung zum Converter irgendwie vorher selber herstellen? Also einen virtuellen COM-Port öffnen? Und wenn ja, wie macht man das auf dem Raspberry?
Gruß Torsten

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 11:53 #38 von Eckert258
Leider kenne ich mich mit dem Converter nicht aus. Auf deinem Screenshot gibt es noch den Button "Advanced" was kann man dort noch einstellen?
Kommentiere mal den Eintrag "device=/dev/ttyUSB0" in deiner INI aus...

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 12:10 #39 von oberp

...gibt es noch den Button "Advanced"

Das ist der ausgeklappte, untere Teile des Fensters
.
.

Kommentiere mal den Eintrag "device=/dev/ttyUSB0" in deiner INI aus...

Schon probiert. Das funzt so nicht. "/dev/USB0" ist ja der Treiber für USB. Ich verwende hier aber das LAN. Was ich aber probiert habe, ist das erstellen eines virtuellen ComPorts mittels "socat". Dann aus "/dev/USB0" ein "/dev/pty0" gemacht. Dann lief xPhcLog etwas weiter. Die nächste Fehlermeldung lautet jetzt ":OnRun,cannot start mqttc" . "mqttc" ist wohl der "Mosquitto-Client". Ob die Sache mit dem virtuellen ComPort überhaupt funzt, weiß ich so auch noch nicht. Was ich bräuchte, wäre jemand, der sich mit Linux gut auskennt...
Gruß Torsten

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 12:31 #40 von oberp
...kann mir jemand sagen, welche Version/Programm ich in Sachen "MQTT" installieren muss, damit die Fehlermeldung "cannot start mqttc" nicht mehr erscheint. Auf dem RPi hatte ich "Mosquitto" installiert, aber das reicht wohl nicht...

Ich versuche gerade, den ComPort und xPhcLog unter VirtualBox und Windows 7 in Betrieb zu nehmen, damit ich den Fehler für den Raspberry Pi näher komme.
Gruß Torsten

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 13:02 #41 von oberp
Soooo..... :woohoo:
Ich bin jetzt etwas weiter. Die Versuche unter VirtualBox und Win7 waren (soweit) erfolgreich.
1.) Virtuellen Seriellen Port erzeugt.
2.) In der "ini"-Datei "com1" ausgewählt und zusätzlich die IP-Adresse des RPi's als MQTT-Remote-Adresse
3.) xPhcLog (ohne Debug-Option) gestartet und keine Fehlermeldung :-)
4.) Ein paar Taster gedrückt und folgendes erschien in der Console:
.
+ xPhcLogd   (Win32/x86 ) ------ v4.0.0.4, Sep 16 2016, Jo Simons (c) 2007-2016
+ =============================================================================
Press CTRL-C to quit...
2017-03-17,12:46:21,00090000,A,version=4.0.0.4,Sep 16 2016
2017-03-17,12:46:21,00090010,A,legend:
2017-03-17,12:46:21,00090011,A,  o0=out0-7,o1=out8-15
2017-03-17,12:46:21,00090012,A,  i0=in0-7,i1=in8-15
2017-03-17,12:46:21,00090013,A,  l0=out0,l1=out1,l2=out2,l3=out3 (amd/ebd/dim)
2017-03-17,12:46:28,00010120,M,omd.16.fb7.timeron
2017-03-17,12:46:28,00010150,M,omd.16.stmAck
2017-03-17,12:46:55,00010120,M,omd.17.fb0.timeron
2017-03-17,12:46:55,00010150,M,omd.17.stmAck
2017-03-17,12:47:21,00010120,M,dim.16.fb0.dimmed
2017-03-17,12:47:21,00010150,M,dim.16.stmAck
2017-03-17,12:48:20,00010120,M,omd.16.fb6.off
2017-03-17,12:48:20,00010150,M,omd.16.stmAck
2017-03-17,12:48:23,00010120,M,omd.17.fb1.timeron
2017-03-17,12:48:23,00010150,M,omd.17.stmAck
2017-03-17,12:49:01,00010120,M,omd.16.fb2.off
2017-03-17,12:49:01,00010150,M,omd.16.stmAck
2017-03-17,12:49:02,00010110,M,omd.16.???,o0=180
2017-03-17,12:49:02,00010150,M,omd.16.stmAck
2017-03-17,12:49:17,00010120,M,omd.9.fb4.timeron
2017-03-17,12:49:17,00010150,M,omd.9.stmAck
.
Das zeigt auf jeden Fall, dass die Hardware und die Verdrahtung "fehlerfrei" sind. kann nur noch ein Softwareproblem am Raspberry sein. Soll heißen: googlen, googlen, googlen und hoffen :-)
Gruß Torsten

PS.: Die Alternative wäre natürlich: Wie installiere ich Windows 7 auf einen Raspberry Pi 3 :P

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 15:53 #42 von haribo
Hallo Torsten,

ich nutze nur die "direkte Verbindung" und kenne deinen Konverter nicht, aber ich bin der Meinung, dass es funktionieren muss.

Ich habe im Netz ein USR-TCP232-302 User Manual gefunden. Danach müsste dein Serialserver über Webpage konfigurierbar sein. Die Windows-Software brauchst du meines Erachtens nicht.
Schau mal in die xphclogd.ini unter Verbindungsoption 2. Dort findest du die Parameter locaddr und locport. Den Port kannst du belassen, locaddr müsste die IP-Adresse des Raspberry sein.

Adresse, Port und 'UDP' sollten auf Seiten des Konverters (per Webpage) entsprechend einstellbar sein.

Vielleicht hilft dir das. Viel Erfolg.

Harald

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Mär 2017 15:58 #43 von haribo

oberp schrieb: ...kann mir jemand sagen, welche Version/Programm ich in Sachen "MQTT" installieren muss, damit die Fehlermeldung "cannot start mqttc" nicht mehr erscheint. Auf dem RPi hatte ich "Mosquitto" installiert, aber das reicht wohl nicht...

Bei mir läuft mosquitto tadellos. ( Installation eines MQTT-Brokers auf dem Raspberry Pi )

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
18 Mär 2017 14:40 #44 von oberp
Hallo Harald
.

USR-TCP232-302 User Manual

Das "USR-TCP232-302 User Manual" ist leider nicht für meinen Converter, sondern für das Nachfolgermodell. Ich habe den "TCP232-2" statt den "...-302". Letztendlich ist es aber auch wurscht, ob ich die techn. Daten per Web-Interface oder per Windowsprogramm übertrage und abspeicher.
.
.

xphclogd.ini ...unter Verbindungsoption 2

Das war ja das erste, was ich probierte. Diese Verbindungsoption ist ja extra für "Remote Serial Device". Warum das nicht funzt, weiß wohl nur Jo.... (Hallo Jo: Bittel melden :-) )
In der INI-Datei heißt es aber auch: LocAddr und LocPort, wobei das "Loc" wohl für "Local" steht. Aber egal, was ich hier eintrage; alles außer "127.0.0.1" endet mit einen Fehler. Und alle Versuche, mittels den Linux-Tools socat, ser2net, netcat usw. etwas zu erreichen, schlugen bisher fehl:
socat -d -d -D pty,link=/home/pi/vcom1,raw,echo=0,waitslave udp:192.168.1.9:7110
zum Beispiel soll nach meinem Verständnis übers LAN die Adresse 192.168.1.9 und den Port 7110 in die Device-Datei nach /home/pi/vcom1 bereitstellen. Wenn ich das so in die INI-Datei eintragen, gibt es keine Fehlermeldungen, aber auch keinerlei Ausgaben von xPhcLog...

Noch einfacher ist
socat -d -d stdout udp:192.168.1.9:7110
der die empfangenen Daten nach STDOUT schreiben soll. Aber nix passiert.
Nur nicht aufgeben. Lösungen über "Serial Device over TCP/IP" gibt es wie Sand am Meer. Und ich denke immer noch, dass dieses "socat" die Lösung ist.
.

Bei mir läuft mosquitto tadellos

Jeppp. Bei mir auch... Aber solange xPhcLog keine Ausgaben macht, brauche ich mir über Mosquitto nicht den Kopf zerbrechen.

Gruß Torsten

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
19 Mär 2017 09:59 #45 von simonjo
Hallo,

Maybe a little help from my side:

1) If you use an RS232-to-ip convertor with xPhcLogd, then the convertor must send UDP packets to the IP address and port on which xPhcLogd is running. So if xPhcLogd runs on your Raspi with IP@ 192.168.1.33 and you use port 9999, then the convertor must send all data converted to 192.168.1.33:9999.

2) In xphclogd.ini (or via command line options) you can choose how to receive data, either via a serial port (/dev/ttyUSBx) or via UDP-over-IP. In this last case you need to specify the Raspi IP address and also which port xPhcLogd needs to listen on (i.e. 9999).

The issue with not being able to create a socket is normal, as you cannot create a socket if that IP address is not available on your machine.

3) The RS232-to-IP convertor must send each byte as a UDP packet to xPhcLogd


Jo

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Powered by Kunena Forum