FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: MErdmann am 15 Juni 2016, 14:16:09

Titel: Gelöst: CMD Rückmeldungs Problem / Frage
Beitrag von: MErdmann am 15 Juni 2016, 14:16:09
Hallo,

ich bin noch nicht lange dabei und arbeite mich gerade begeistert ein.

Ich habe folgendes Problem.

Erst mal kurz zur Erklärung was ich machen will:
Ich habe einige ältere AMX Controller (Mediensteuerungen). Diese haben RS232 Schnittstellen, Relais, I/O und Infrarot Schnittstellen.
Diese möchte ich als Schnittstellen für alles mögliche nutzen (Relais und I/O)

Ich habe einen solchen Controller via USB/RS232 Adapter an meinen Raspberry gehangen und steuere diesen über das ECMD Modul an.
Den AMX Controller habe ich intern so Programmiert das dieser bei einem bestimmten RS232 Befehl ein Relais Schaltet.
Das funktioniert auch schon.

Wenn der AMX Controller den Befehl "S00_R01_1" bekommt wird Slot 0 / Relais 1 / Ein geschaltet
Wenn der AMX Controller den Befehl "S00_R01_0" bekommt wird Slot 0 / Relais 1 / Aus geschaltet

Als Rückmeldung gebe ich den Befehl einfach 1 zu 1 zurück. Also beim Einschalten von Relais 1 schickt der AMX Contoller auf der RS232 ein "S00_R01_1"

Ich habe in meiner AMX.classdef bisher folgendes stehen.


# Uebergabeparameter AMX: Relaisnummer
params relaisnummer

# Umsetzung in ECMD Befehle
set on cmd {"S00_R0%relaisnummer_1\n"}
set on expect "S00_R0%relaisnummer_1\n"
set off cmd {"S00_R0%relaisnummer_0\n"}
set off expect "S00_R0%relaisnummer_0\n"


Wie gesagt schalten die Relais korrekt. Allerdings scheint die Rückmeldung nicht richtig verarbeitet zu werden.

Auszug aus der Log Datei

2016.06.15 13:58:21 1: AMX: unexpected answer "S00_R" received (wrote "S00_R01_0\n", expected S00_R01_0\n)
2016.06.15 13:59:23 1: AMX: unexpected answer "S0" received (wrote "S00_R01_1\n", expected S00_R01_1\n)
2016.06.15 13:59:26 1: AMX: unexpected answer "S00_" received (wrote "S00_R01_0\n", expected S00_R01_0\n)
2016.06.15 13:59:36 1: AMX: unexpected answer "S00" received (wrote "S00_R01_1\n", expected S00_R01_1\n)
2016.06.15 13:59:37 1: AMX: unexpected answer "S00" received (wrote "S00_R01_0\n", expected S00_R01_0\n)

Es werden scheinbar immer nur die ersten Zeichen interpretiert und der Rest wird ignoriert.

Hat jemand eine Idee dazu woran das liegen kann.
Der AMX Controller schickt die Antwort auf jeden Fall korrekt zurück.

Titel: Antw:ECMD Rückmeldungs Problem / Frage
Beitrag von: MErdmann am 15 Juni 2016, 15:37:48
Ich hab zwar noch keine Antwort bekommen habe es jetzt aber doch selbst lösen können.

Der Parameter partial beim ECMD Device hat die Lösung gebracht. Damit wird gewartet bis die Antwort vollständig ist.