Ich habe folgendes Problem.Ich habe verschiedene IT Dimmer die ich per Alexa dimmen kann wobei alle werte richtig angefahren werden außer 100% dies führt dazu das die Lampen auf und ab dimmen sofern ich Alexa schalte Lampe 100% sage. In FHEM steht dies dann so da
Alexa lampe 50%
dim 56
group 0
lastDimValue dim56%
protocol V3
state dim56%
unit 0000
Alexa lampe 100%
Readings:
dim 56
group 0
lastDimValue
protocol V3
state on
unit 0000
INFO: Wenn ich den Regler in FHEM auf 100% ziehe sieht es so aus und die Lampe geht auch auf 100%
dim 56
group 0
lastDimValue dim100%
protocol V3
state on
unit 0000
"list" vom Device bitte.
Das gleiche habe ich bei einem FS20 Dimmer.
Hier der Beitrag, https://forum.fhem.de/index.php/topic,107081.msg1009344.html#msg1009344 (https://forum.fhem.de/index.php/topic,107081.msg1009344.html#msg1009344)
Lösung hab ich aber noch keine
Internals:
DEF 01010101010101010111010101 0 0000
FUUID 5c7e486d-f33f-e904-252b-d65e329f175b3ea1
IODev nanoCUL
NAME Lampe_Fenster
NR 28
STATE off
TYPE IT
XMIT 0101010101010101011101010100000
XMITdimdown 00
XMITdimup 00
XMIToff 0
XMITon 1
CODE:
1 0101010101010101011101010100000
READINGS:
2020-01-28 22:14:59 dim 0
2018-04-20 20:31:20 group 0
2020-01-28 22:14:18 lastDimValue dim100%
2018-04-20 20:31:20 protocol V3
2020-01-28 22:14:59 state off
2018-04-20 20:31:20 unit 0000
Attributes:
IODev nanoCUL
alexaName Fensterlampe;Lampe Fenster
model itdimmer
room Alexa_Geräte,Wohnzimmer
@amenomade reicht das?
Ja, das ist schon mal gut. Dein Problem ist wahrscheinlich mit homeBridgeMapping lösbar. Nun muss ich zuerst verstehen, was das Problem ist.
Also: wenn Du "100%" sagt, macht er nur an und übernimmt den vorherigen dimm Wert, z.B. 56%? Ist das das Problem?
Ja genau so sieht es zumindest aus.
Ist bei mir auch so. Bei 100% kommt der on Befehl und nicht der dim100% Befehl!
Bei mir führt der Befhel 100% nur dazu das die Lampe anfängt auf und ab zu dimmen außerich mache aus fhem raus 100% dann werden diese auch angefahren
Aus FHEM raus geht bei mir auch alles richtig
Bin mit IT nicht so fit. Wie schaltet man an / aus, und wie setzt man einen dim Wert?
set name on
set name off
set name dim xx
?
So wird standardmässig Brightness gemappt:
// FS20 dimmer
if( !this.service_name ) this.service_name = 'light';
this.mappings.On = { reading: 'state', valueOff: 'off', cmdOn: 'on', cmdOff: 'off' };
this.mappings.Brightness = { reading: 'state', cmd: ' ', delay: true };
this.mappings.Brightness.reading2homekit = function(mapping, orig) {
var match;
if( orig == 'off' )
return 0;
else if( match = orig.match(/dim(\d+)%?/ ) )
return parseInt( match[1] );
return 100;
}.bind(null, this.mappings.Brightness);
this.mappings.Brightness.homekit2reading = function(mapping, orig) {
var dim_values = ['dim06%', 'dim12%', 'dim18%', 'dim25%', 'dim31%', 'dim37%', 'dim43%',
'dim50%', 'dim56%', 'dim62%', 'dim68%', 'dim75%', 'dim81%', 'dim87%', 'dim93%'];
if( orig > 97 )
return 'on';
return dim_values[Math.round(orig/6.25)];
}.bind(null, this.mappings.Brightness);
if (orig >97)
Return 100
Könnte dies das Problem im Mapping sein?
Wo kann ich das denn ändern, in welcher Datei ist das originale Mapping?
Zitat von: amenomade am 30 Januar 2020, 00:41:39
Bin mit IT nicht so fit. Wie schaltet man an / aus, und wie setzt man einen dim Wert?
set name on
set name off
set name dim xx
?
ja genau es ist eigtl wie beim FS20 das feste Werte Dim06%, Dim12% usw angefahren werden.
Wie bekomme ich das ganze denn eigepflegt bzw wo muss dieses Programm hin?
Hmmm. Das wird kompliziert, auf Grund dieser EinzelWerte.
Verschiebe dein Thread nach Frontends/Sprachsteuerung, vielleicht hat Andre (justme1968) eine Lösung. Man kann eigene reading2homekit und homekit2reading Funktionen definieren, aber da bin ich überfordert.
In welcher Datei ist das original Mapping? Kann man das editieren.
Zitat von: miche am 31 Januar 2020, 12:35:16
In welcher Datei ist das original Mapping? Kann man das editieren.
Bei einer standard Installation: /usr/lib/node_modules/alexa-fhem/lib/fhem.js
Hab da jetzt mal den dim100% Befehl noch hinzugefügt, aber es funktioniert auch nach reboot vom System nicht.
Schau mal in der Log, wie das Device beim Start von alexa erkannt wird.
Hab jetzt bei ,, if( orig > 97 ) return 'on'; ,,. if( orig >97 ) return 'dim100%'; geschrieben.
Jetzt funktioniert's mit Alexa.
Bei der Homebridge habe ich das auch in die Datei geschrieben, da gehts nicht!
Homebridge bringt im FHEM log beim stellen auf 100% ein on Befehl. Da muss irgendwas anders sein!
Sorry, bisher hattest Du nur von alexa geredet.
Aber wenn die Logik die gleich ist, musst Du irgendwo die node-modules vom homebrige haben?