Hallo,
ich hab ein virtuelles Modul in dem die Temperatur eines Sensors mit zwei Nachkommastellen ausgegeben werden soll.
Dazu habe ich ein Label “Temperatur” erzeugt und möchte den Value setzen.
Ich habe vieles am Möglichkeiten probiert, aber es wird immer die Float Darstellung mit 15 Nachkommastellen ausgegeben.
– ID des virtuelles Moduls
local vDeviceID = fibaro:getSelfId()
– ID des Temperatursensors
local Temp_ID = 54
– numerische Temperatur
local Temp = tonumber(fibaro:getValue(Temp_ID,‘value’))
– string Temperatur
local sTemp = tostring(fibaro:getValue(Temp_ID,‘value’))
– Verschiedene Versuche -> Ziel Darstellung mit 2 Nachkommastellen
fibaro:call(vDeviceID, “setProperty”, “ui.Label1.value”, sTemp) – Temperatur: 21.560000000001
fibaro:call(vDeviceID, “setProperty”, “ui.Label1.value”, string.sub(sTemp,1,5)) – Temperatur: 21.560000000001
fibaro:call(vDeviceID, “setProperty”, “ui.Label1.value”, string.format("%2.2f" Temp)) – Temperatur: 21.560000000001
fibaro:debug("Temperatur: " … sTemp) gibt automatisch mit 2 Nachkommastellen aus.
Hat jemand eine Idee wie das funktionieren könnte?
Gruß Olaf