FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Niel am 02 Januar 2017, 00:02:57

Titel: Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: Niel am 02 Januar 2017, 00:02:57
Hallo!

Ich habe einen Gateway für meine Heizung, das per Seriell-USB-Adapter angeschlossen ist.

Mit Minicom funktioniert die Kommunikation einwandfrei. Sende ich "PS=1" an das Gateway, dann bekomme ich die Zustandsdaten zurück.

Das ECMD bzw. ECMDDevice habe ich wie folgt angelegt:

Internals:
   DEF        serial /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_2109-if00-port0@9600
   DeviceName /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_2109-if00-port0@9600
   FD         17
   NAME       USB_OTGW
   NR         116
   PARTIAL
   Protocol   serial
   STATE      opened
   TYPE       ECMD
   Readings:
     2017-01-01 23:56:04   state           opened
   Fhem:
     Classdefs:
       Ot:
         filename   /opt/fhem/FHEM/otgw.classdef
         Gets:
           Ot:
             cmd        {"PS=1\n"}
             expect     *.\n
             postproc   {my $hash = $defs{%NAME};my $test = $_;readingsSingleUpdate($hash,"TEST", $_, 1);}
         Sets:
Attributes:
   classdefs  OT=/opt/fhem/FHEM/otgw.classdef
   requestSeparator 


Mit postproc habe ich mich noch nicht auseinandergesetzt, da ich zunächst überhaupt etwas empfangen möchte. Aber das Logfile sagt:

2017.01.01 23:56:04 2: USB_OTGW: first attempt to read timed out, trying to close and open the device.
2017.01.01 23:56:04 3: Opening USB_OTGW device /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_2109-if00-port0
2017.01.01 23:56:04 3: Setting USB_OTGW serial parameters to 9600,8,N,1
2017.01.01 23:56:04 3: USB_OTGW device opened
2017.01.01 23:56:07 2: USB_OTGW: second attempt to read timed out, this is an unrecoverable error.
2017.01.01 23:56:07 1: USB_OTGW: no answer received (wrote "PS=1\n", expected *.\n)


Hat jemand eine Idee, warum das Gateway darauf gar nicht erst antwortet? Wenn ich PS=1 per Minicom sende, dann funktioniert es ja.

Danke und Gruß

Niel
Titel: Antw:Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: franky08 am 02 Januar 2017, 08:47:18
Zitatto read timed out, this is an unrecoverable error
falls du usb autocreate nicht deaktiviert hast, würde ich das erstmal probieren
define initialUsbCheck notify global:INITIALIZED usb create
das mal deaktivieren und fhem neu starten. Falls das nichts bringt würde ich den Thread mal nach Einplatinencomputer verschieben, denke da wäre es besser aufgehoben und dir wird bestimmt schneller geholfen.

VG
Frank
Titel: Antw:Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: Niel am 02 Januar 2017, 11:56:09
Hallo!

USB autocreate ist deaktiviert. War vorher schon so, da ich noch andere USB-Seriell-Wandler für meine Stromzähler verwende.

Warum sollte die Frage in den Bereich Einplatinencomputer verschoben werden? Mein fhem läuft auf einem normalen PC.

Grüße

Niel
Titel: Antw:Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: franky08 am 02 Januar 2017, 12:00:23
ZitatWarum sollte die Frage in den Bereich Einplatinencomputer verschoben werden? Mein fhem läuft auf einem normalen PC.

Weil du keine Sig. hast und ich davon ausgegangen bin das du einen pi o.ä. als Host verwendest und im Einplatinencomputer Bereich solche Fehler schon des öfteren diskutiert wurden.
Titel: Antw:Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: Niel am 02 Januar 2017, 14:39:43
Hallo!

Stimmt, die Signatur habe ich mal entfernt, als ich mir einen neuen Server aufgebaut habe. Dann habe ich vergessen, die Signatur neu zu füllen. Wird nachgeholt.

Ich habe es jetzt soweit, dass ECMD das Gateway abfragt. Von der Antwort erhalte ich jedoch immer nur den ersten Buchstaben als Ergebnis.

Die Antwort fängt immer mit "PS:1" an, ich erhalte als Antwort aber immer nur "P" in ECMD. Woran kann das jetzt noch liegen?

Danke und Gruß

Niel
Titel: Antw:Problem mit ECMD bzw. ECMDDevice (keine Kommunikation möglich)
Beitrag von: franky08 am 02 Januar 2017, 14:46:00
Da es jetzt ziemlich klar ein ECMD Problem ist, würde ich das mal dahin verschieben, denn hier wird Boris das nicht finden.
Das passende Unterforum wäre: https://forum.fhem.de/index.php/board,29.0.html

Ohne deine verwendete classdef wird Boris da aber auch nichts sagen können, die würde ich mal mit posten. Steht dort auch oben angepinnt.

VG
Frank