Hallo,
ich komme mit dem RFM12 nicht weiter.
Auf der Ethersex-Homepage kann ich testweise den Befehl javascript:ecmd_set_rf1(2272,'0,5,80',76,10)
ausführen und die Funksteckdose schaltet. Elektrisch und seitens Ethersex scheint die Installation zu passen.
Aus dem Forum habe ich von Ricardo diese 2272.classdef:
params byte1 byte2 byte3
set on cmd {"rfm12 2272 %byte1,%byte2,".sprintf(1+%byte3)." 76 10\n"}
set on expect "OK\n"
set on postproc {s/OK\n//; $_ }
set off cmd {"rfm12 2272 %byte1,%byte2,".sprintf(0+%byte3)." 76 10\n"}
set off expect "OK\n"
set off postproc {s/OK\n//; $_ }
Der Log:2016.01.05 23:18:58 4: FHEMWEB:192.168.8.21:49970 POST /fhem?cmd.FunkA_Ein=set%20FunkA_Ein%20off&room=all&XHR=1; BUFLEN:0
2016.01.05 23:18:58 5: Cmd: >set FunkA_Ein off<
2016.01.05 23:18:58 5: ECMDDevice: Analyze command >{"rfm12 2272 0,5,".sprintf(0+80)." 76 10\n"}<
2016.01.05 23:18:58 5: NETIOSZ: sending command "rfm12 2272 0,5,80 76 10\n"
2016.01.05 23:18:58 5: SW: 72666d3132203232373220302c352c38302037362031300a
2016.01.05 23:18:58 1: NETIOSZ: unexpected answer "parse error\n" received (wrote "rfm12 2272 0,5,80 76 10\n", expected OK\n)
2016.01.05 23:18:58 5: NETIOSZ: received answer "parse error\n"
2016.01.05 23:18:58 5: Postprocessing "parse error\n" with perl command {s/OK\n//; $_ }.
2016.01.05 23:18:58 5: Postprocessed value is "parse error\n".
2016.01.05 23:18:58 5: Triggering FunkA_Ein (2 changes)
2016.01.05 23:18:58 5: Notify loop for FunkA_Ein off: parse error
2016.01.05 23:18:58 4: name: /fhem?cmd.FunkA_Ein=set%20FunkA_Ein%20off&room=all&XHR=1 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
Via netcat habe ich auch schon versucht Variationen von rfm12 2272 ... abzuschicken aber bisher kommt immer nur Parse Error was wenig hilfreich ist. Schicke ich ein rfm12 reinit ab, kommt ein OK. Die Befehle gehen also auch zum richtigen NET-IO.
Welche Formatierung sollte geschickt werden? Ich meine Komata, Anführungszeichen etc.
theoretisch: rfm12 2272 0,5,80 76 10
Bin für jede Hilfe dankbar,
Gruß,
Larry
Es scheint eine Änderung bei Ethersex gegeben zu haben. Laut ECMD Referenz lauten die Befehle für rfm12_ask rfm12 ... Jetzt habe ich mit help gerade eine Liste aller Befehle des NET-IO ausgeben lassen und da taucht ask auf.
Lösung: set on cmd {"ask 2272 %byte1,%byte2,".sprintf(1+%byte3)." 76 10\n"}
Gruß,
Larry