Hallo miteinander,
ich habe seit ein paar Tagen nun auch auf den Logikprozessor von Fry umgestellt und konnte einiges an Memory und Laufzeiten optimieren können.
Nun habe ich aber einen Knopf in meiner Logik, welches mit einem separaten Plugin bisher funktioniert:
fenster_status_DG => {
receive => '0/3/13', # Status-DG vom HS
transmit => '0/3/12', # RGB-LED vom Taster
#transmit_changes_only => 1,
translate => sub {
return 'FF 00 00' if ($input)=2;
return 'FF 66 00' if ($input)=1;
return '00 00 00' if ($input)=0;
},
debug => 1
Diese simple Statusabfrage endet damit, dass der return Wert immer der ersten Zeile, also 'FF 00 00' ergibt. Dies egal welchen Wert der receive wert hat. Ich weiss leider nicht weiter.
Hat jemand eine Idee??
Auszug aus dem Plugin-Log:
2013-09-01 22:54:36.234,Logikprozessor.pl,1.1.255 0/3/13:2 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:47.353,Logikprozessor.pl,1.1.255 0/3/13:1 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:53.444,Logikprozessor.pl,1.1.255 0/3/13:2 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:53.705,Logikprozessor.pl,1.1.255 0/3/13:0 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
Auszug aus dem eib.log:
2013-09-01 22:54:36.210,A_GroupValue_Write,1.1.255,0/3/13,02,2,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:47.331,A_GroupValue_Write,1.1.255,0/3/13,01,1,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:53.417,A_GroupValue_Write,1.1.255,0/3/13,02,2,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:53.680,A_GroupValue_Write,1.1.255,0/3/13,00,0,,5.005,1,high,6,T_DATA_XXX_REQ,0
Konfiguration im eib.conf:
[0/3/12]
short=Fenster
DPTSubId=232.600
ga=0/3/12
name=Fenster DG Status - offen (RGB)
DPTId=232
[0/3/13]
DPTSubId=5.010
short=Fenster
ga=0/3/13
DPTId=5
name=Fenster DG Status - offen (Bit)
Gruss
Marcel
ich habe seit ein paar Tagen nun auch auf den Logikprozessor von Fry umgestellt und konnte einiges an Memory und Laufzeiten optimieren können.
Nun habe ich aber einen Knopf in meiner Logik, welches mit einem separaten Plugin bisher funktioniert:
fenster_status_DG => {
receive => '0/3/13', # Status-DG vom HS
transmit => '0/3/12', # RGB-LED vom Taster
#transmit_changes_only => 1,
translate => sub {
return 'FF 00 00' if ($input)=2;
return 'FF 66 00' if ($input)=1;
return '00 00 00' if ($input)=0;
},
debug => 1
Diese simple Statusabfrage endet damit, dass der return Wert immer der ersten Zeile, also 'FF 00 00' ergibt. Dies egal welchen Wert der receive wert hat. Ich weiss leider nicht weiter.
Hat jemand eine Idee??
Auszug aus dem Plugin-Log:
2013-09-01 22:54:36.234,Logikprozessor.pl,1.1.255 0/3/13:2 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:47.353,Logikprozessor.pl,1.1.255 0/3/13:1 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:53.444,Logikprozessor.pl,1.1.255 0/3/13:2 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
2013-09-01 22:54:53.705,Logikprozessor.pl,1.1.255 0/3/13:0 -> $logic->{fenster_status_DG}{receive}(Logik) -> 0/3/12:FF 00 00 gesendet; ,0s,
Auszug aus dem eib.log:
2013-09-01 22:54:36.210,A_GroupValue_Write,1.1.255,0/3/13,02,2,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:47.331,A_GroupValue_Write,1.1.255,0/3/13,01,1,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:53.417,A_GroupValue_Write,1.1.255,0/3/13,02,2,,5.005,1,high,6,T_DATA_XXX_REQ,0
2013-09-01 22:54:53.680,A_GroupValue_Write,1.1.255,0/3/13,00,0,,5.005,1,high,6,T_DATA_XXX_REQ,0
Konfiguration im eib.conf:
[0/3/12]
short=Fenster
DPTSubId=232.600
ga=0/3/12
name=Fenster DG Status - offen (RGB)
DPTId=232
[0/3/13]
DPTSubId=5.010
short=Fenster
ga=0/3/13
DPTId=5
name=Fenster DG Status - offen (Bit)
Gruss
Marcel
Kommentar