MQTT <-> Homekit: Mired und Kelvin Umrechung

Begonnen von davidwohnthier, 30 September 2019, 13:49:05

Vorheriges Thema - Nächstes Thema

davidwohnthier

Hallo Leute!
Ich habe ein IKEA Tradfri LED Leuchtmittel mit 980lm und der Möglichkeit den Weißwert/Farbtemperatur einzustellen. Das ganze funktioniert auch einwandfrei mit dem Template L_02b_zigbee2mqtt_light_cct und der Steuerung in FHEM.

Das eigentliche Problem, dass sich bis jetzt hartnäckig hält: Ich bekomme die Temperatureinstellung nicht ins HomebridgeMapping weil die Farbtemperatur in Mired angegeben ist und nicht in Kelvin. Mein Lösungsansatz war jetzt das einfügen eines Userreadings mit folgendem Inhalt:
ct {1000000/(ReadingsVal("Wandlampe","color_temp",""))}

Dadurch hab ich schon einmal die Kelvinangabe als ein Reading aber ich bekomme es nicht hin, dass ich eben auch Rückwärts Befehle senden kann, soll heißen:
Homekit sendet einen Befehl mit "set Wandlampe ct 3000" und dieser wird in FHEM zu "set Wandlampe color_temp 1000000/3000" verarbeitet. Weiß jemand was ich anstellen muss damit FHEM diesen Befehl akzeptiert und eben auch richtig umwandelt?

HomebridgeMapping schaut so aus:
On=state,valueOn=ON,valueOff=OFF,valueBrightness=brightness,valueColorTemperature=ct,values=OFF;ON;Brightness;ColorTemperature,cmdOff=off,cmdOn=on,cmdBrightness=brightness,cmdColorTemperature=ct,nocache=true
Brightness=Wandlampe:brightness,minValue=0,maxValue=254,cmd=brightness
ColorTemperature=ct,factor=0.025,minValue=50,maxValue=400,minStep=1,min=2200,max=6500,cmd=ct



Ich hoffe ich bin hier im richtigen Forum, aber ich hab noch am ehesten gedacht, dass man es über das MQTT Device ändern könnte?!


Beta-User

Ob das mit dem homebridge-Mapping nicht besser geht, kann ich nicht sagen, da scheint aber auch eine Umrechnung drin zu sein, vielleicht genügt es, den Faktor da anzupassen und auf color_temp zu bleiben?

Wenn du das via userReadings lösen willst, füge zuallererst einen sauberen Trigger zu dem userReading ct hinzu!

Der "Rückweg" geht, indem du eine "Perl-Klammer" um "alles" rum machst, und dann dafür sorgst, dass der "Rückgabewert" der Funktion dann "topictree payload" ist. Beispiel wäre shelly2rgbw_color (dort rgb/rgb_on), bitte in die template-file sehen und melden, wenn das zu unklar ist.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Icinger

Eigentlich müsstest du das ja auch in beiden Richtungen mit eventMap lösen können.

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho