ECMD Kommunikation

Begonnen von Chris65, 06 Juli 2013, 09:05:07

Vorheriges Thema - Nächstes Thema

Chris65

Hallo Forum,

da ich alleine nicht mehr weiterkomme hoffe ich auf Hilfe aus dem Forum.

Das AVR-Netio habe ich über telnet erolgreich in mein FHEM integriert und kann per telnet sowohl die Ein und Ausgänge als auch den 1wire-Bus abfragen.

Ich versuche nun mit einer Microcontroller Daten auszutauschen. Der Microcontroller kann über Telegramme abgefragt werden und liefert dann entsprechende Antworten.

Zum Beispiel:

Telegramm1: :aa0152a5
Antwort1: :AA0452ff0005A5

Telegramm2: :aa026001a5
Antwort2: :AA0460011002A5

Mein Problem ist nun, dass nach dem senden eines Telegramms die Antwort auf das vorher gesendete Telegramm empfangen wird. Beim ersten Aufruf werden nur Bruchstücke empfangen, danach dann jeweils die Antwort auf das vorherige Telegramm.

Meine fhem.cfg sieht so aus:

define MicroSPS ECMD serial /dev/ttyUSB0@57600
attr MicroSPS classdefs SPS_DIclass=/opt/fhem/FHEM/SPS_DI.classdef
define SPS_DI_read ECMDDevice SPS_DIclass
attr SPS_DI_read room MicroSPS

define SPS_check at +*00:01:00 get SPS_DI_read SPS_DI;; get SPS_DI_read SPS_Temp1
attr SPS_check loglevel 6

Und die dazu gehörige classdef:

#Telegramm1
get SPS_DI cmd {":aa0152a5"}

#Telegramm2
get SPS_Temp1 cmd {":aa026001a5"}

Laut logfile werden die Telegramme erkannt und korrekt versendet. Auch die Antworten gehen ein. Leider erhalte ich jeweils die falsche Antwort.

Kann sich diese Problem jemand von euch erklären bzw. hat jemand einen Tip?

Vielen Dank

Gruß

Christoph


mcbain2k

Hallo Chris,

beschäftige mich auch gerade mit ECMD,

schau mal:
http://forum.fhem.de/index.php?topic=15942.0

mal sehen obs 2014 was wird.