Page 1 of 1

DimLevel + 10 Hjälp

Posted: 23 Sep 2018, 21:22
by Erik
Hur gör jag för att få följande att funka

local DimLevel = tonumber(fibaro:getValue(258, "value"))
if (sceneId == "10") then
fibaro:call(258, "setValue", "DimLevel + 10")

Re: DimLevel + 10 Hjälp

Posted: 23 Sep 2018, 21:30
by MastrUsr
Jag tror du ska ändra "dimlevel + 10" till "dimlevel" + 10. Notera att "" bara står runt dimlevel.

Skickat från min SM-G930F via Tapatalk


Re: DimLevel + 10 Hjälp

Posted: 23 Sep 2018, 22:09
by Erik
så här fick det bli

if (sceneId == "10") then
fibaro:debug(DimLevel)
end
if (sceneId == "10") and DimLevel <= 10 then fibaro:call(146, "setValue", "10")
end
if (sceneId == "10") and DimLevel >= 10 and DimLevel < 20 then fibaro:call(146, "setValue", "20")
end
if (sceneId == "10") and DimLevel >= 20 and DimLevel < 30 then fibaro:call(146, "setValue", "30")
end
if (sceneId == "10") and DimLevel >= 30 and DimLevel < 40 then fibaro:call(146, "setValue", "40")
end
if (sceneId == "10") and DimLevel >= 40 and DimLevel < 50 then fibaro:call(146, "setValue", "50")
end
if (sceneId == "10") and DimLevel >= 50 and DimLevel < 60 then fibaro:call(146, "setValue", "60")
end
if (sceneId == "10") and DimLevel >= 60 and DimLevel < 70 then fibaro:call(146, "setValue", "70")
end
if (sceneId == "10") and DimLevel >= 70 and DimLevel < 80 then fibaro:call(146, "setValue", "80")
end
if (sceneId == "10") and DimLevel >= 80 and DimLevel < 90 then fibaro:call(146, "setValue", "90")
end
if (sceneId == "10") and DimLevel >= 90 and DimLevel < 100 then fibaro:call(146, "setValue", "100")
end

Re: DimLevel + 10 Hjälp

Posted: 24 Sep 2018, 06:18
by Bamsefar
Om jag minns rätt så måste beräkningen göras innan anropet. Dvs du behöver räkna fram nya dimkevel värdet och lägga det i en variabel, och sedan dimma....?

Re: DimLevel + 10 Hjälp

Posted: 24 Sep 2018, 17:12
by alexndr
De där paranteserna borde nog kapsla in hela booliska uttrycken annars känns det lite förvirrande.

Du har även en liten glipa i koden för läge med värde ”10”. Den kommer få träff på båda första uttrycken.

Inget uttryck kommer matcha ”100” heller men det kanske inte spelar någon roll för dig?

Re: DimLevel + 10 Hjälp

Posted: 19 Mar 2019, 12:26
by MastrUsr
Detta är ju längesedan nu men såhär har jag gjort:

Code: Select all

--[[
%% properties
37 sceneActivation
%% weather
%% events
%% globals
--]]

--bankbelysning = 37;

local startSource = fibaro:getSourceTrigger();
local bankbelysning = fibaro:getValue(37, "value");

fibaro:call(37, "setValue", bankbelysning + 10)