Nach einem Update von openHAB auf die aktuelle Version habe ich nun ein sehr, sehr seltsames Problem.
Ich habe Ikea Tradfri Lampen, welche ich mittels CC2531 Stick und ZigBee2MQTT betreibe.
Bis jetzt hat eigentlich alles immer einwandfrei funktioniert... auch das Ändern der Farbtemperatur.
Ich ändere die Farbtemperatur immer nur in drei vorgegeben Schritten 0=kalt / 50=mittel / 100=warm.
Plötzlich funktioniert meine Anzeige im HabPanel und in der Sitemap nicht mehr korrekt, weil ich anstatt der Werte "0 / 50 / 100" immer eine Dezimalstelle mitgeliefert bekomme. In meiner Selection steht jetzt anstatt "warm / mittel / kalt" dann immer "0.0 / 50.0 / 100.0".
Woher kommt auf einmal diese Dezimalstelle.
Mein log-File sieht wie folgt aus:
Code: Alles auswählen
2020-03-23 18:48:36.146 [ome.event.ItemCommandEvent] - Item 'color_temp_kij' received command 50
2020-03-23 18:48:36.164 [nt.ItemStatePredictedEvent] - color_temp_kij predicted to become 50
2020-03-23 18:48:36.185 [vent.ItemStateChangedEvent] - color_temp_kij changed from 0.0 to 50
2020-03-23 18:48:39.919 [ome.event.ItemCommandEvent] - Item 'color_temp_kij' received command 100
2020-03-23 18:48:39.941 [nt.ItemStatePredictedEvent] - color_temp_kij predicted to become 100
2020-03-23 18:48:39.964 [vent.ItemStateChangedEvent] - color_temp_kij changed from 50.0 to 100
Ändere ich dann die Temperatur von 50 auf 100, dann ändert das System von 50.0 auf 100.
Ich hab echt keinen Plan mehr, woher auf einmal die Dezimalstelle kommt.
Meine Files dazu sehen wie folgt aus:
Things:
Code: Alles auswählen
Thing topic lpanel_kij "Lichtpanel Kinderzimmer Jonathan" {
Channels:
Type dimmer : color_temp_kij "Farbtemperatur" [ stateTopic="zigbee2mqtt/lpanel_kij", commandTopic="zigbee2mqtt/lpanel_kij/set", transformationPatternOut="JS:color_temp_set.js", transformationPattern="JS:color_temp_get.js" ]
}
Code: Alles auswählen
Dimmer color_temp_kij "Farbtemperatur" {channel="mqtt:topic:curius:lpanel_kij:color_temp_kij"}
Die Umrechnung erfolgt mittels Transformation (.js):
color_temp_get:
Code: Alles auswählen
(function(x){
var result;
var json = JSON.parse(x);
result = (json.color_temp - 255) * 100 / 195;
return result;
})(input)
color_temp_set:
Code: Alles auswählen
(function(x){
var color_temp = (x * 195 / 100) + 255;
var result = new Object();
result.color_temp = color_temp;
result.transition = 1;
return JSON.stringify(result);
})(input)
Damit aber noch nicht alles

Hab dann gestern Abend die Selection Widgets im Habpanel bzw. das Mapping in der Sitemap angepasst => eben auf "0.0 / 50.0 / 100.0"
... das hat dann genau bis heute Vormittag funktioniert, jetzt sehe ich nach der Umstellung wieder nur die Zahl OHNE Dezimalstelle.
Ich verstehe die Welt nicht mehr...
.) restart openhab2.service
.) cli-clean
.) Neuinstallation mit restore meines CLI Backups
...alles versucht - immer wieder der gleiche Fehler!
Einzig und alleine ein "altes" Image funktioniert noch...
Das Log-File sieht dort wie folgt aus:
Code: Alles auswählen
2020-03-24 08:07:31.011 [ome.event.ItemCommandEvent] - Item 'color_temp_kij' received command 50
2020-03-24 08:07:31.014 [nt.ItemStatePredictedEvent] - color_temp_kij predicted to become 50
2020-03-24 08:07:31.071 [vent.ItemStateChangedEvent] - color_temp_kij changed from 0 to 50
2020-03-24 08:07:33.230 [ome.event.ItemCommandEvent] - Item 'color_temp_kij' received command 100
2020-03-24 08:07:33.234 [nt.ItemStatePredictedEvent] - color_temp_kij predicted to become 100
2020-03-24 08:07:33.268 [vent.ItemStateChangedEvent] - color_temp_kij changed from 50 to 100
2020-03-24 08:07:35.555 [ome.event.ItemCommandEvent] - Item 'color_temp_kij' received command 0
2020-03-24 08:07:35.558 [nt.ItemStatePredictedEvent] - color_temp_kij predicted to become 0
2020-03-24 08:07:35.588 [vent.ItemStateChangedEvent] - color_temp_kij changed from 100 to 0
Kann mir vielleicht irgendjemand von euch weiterhelfen bzw. weiß jemand von euch woher die Dezimalstelle auf einmal herkommt?
Kann man irgendwo einstellen, wie openHAB diese Befehle interpretiert bzw. wieviel Dezimalstellen angezeigt werden?
Besten Dank schon mal...
Grüße
Christian