Här är en idé man kan använda sig av för att alla (fru? ) ska kunna trixa med dimmer-värden i olika scener.
Ett tryck på en knapp sätter senast sparade värde. Håller man inne en knapp sparas nuvarande värde till respektive knapp.
OBS! Detta är bara implementerat för knapp 1-4.
274 är id't på min Remotec - Scene Master (men det bör funka med andra kontroller också). Det behövs globala variabler för att spara värdena för de olika scenerna.
T.ex: fibaro:call(37, "setValue", fibaro:getGlobal("Scene1_Bankbelysni")) --- 37 är ID't på min bänkbelysning och "Scene1_Bankbelysni" är namnet på min globala variabel.
Code: Select all
--[[
%% properties
%% events
274 CentralSceneEvent
%% globals
--]]
local sa = fibaro:getSourceTrigger()["event"]["data"]
--fibaro:debug(json.encode(sa))
if ((sa['keyId'] == 1) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key1')
fibaro:call(37, "setValue", fibaro:getGlobal("Scene1_Bankbelysni"))
fibaro:call(47, "setValue", fibaro:getGlobal("Scene1_Hallbelysni"))
fibaro:call(42, "setValue", fibaro:getGlobal("Scene1_Koksbelysni"))
fibaro:call(208, "setValue", fibaro:getGlobal("Scene1_Koksbordsbe"))
end
if ((sa['keyId'] == 1) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key1 double')
end
if ((sa['keyId'] == 1) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key1 held')
fibaro:setGlobal("Scene1_Bankbelysni", fibaro:getValue(37, "value"))
fibaro:setGlobal("Scene1_Hallbelysni", fibaro:getValue(47, "value"))
fibaro:setGlobal("Scene1_Koksbelysni", fibaro:getValue(42, "value"))
fibaro:setGlobal("Scene1_Koksbordsbe", fibaro:getValue(208, "value"))
end
if ((sa['keyId'] == 1) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key1 release')
end
if ((sa['keyId'] == 2) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key2')
fibaro:call(37, "setValue", fibaro:getGlobal("Scene2_Bankbelysni"))
fibaro:call(47, "setValue", fibaro:getGlobal("Scene2_Hallbelysni"))
fibaro:call(42, "setValue", fibaro:getGlobal("Scene2_Koksbelysni"))
fibaro:call(208, "setValue", fibaro:getGlobal("Scene2_Koksbordsbe"))
end
if ((sa['keyId'] == 2) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key2 double')
end
if ((sa['keyId'] == 2) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key2 held')
fibaro:setGlobal("Scene2_Bankbelysni", fibaro:getValue(37, "value"))
fibaro:setGlobal("Scene2_Hallbelysni", fibaro:getValue(47, "value"))
fibaro:setGlobal("Scene2_Koksbelysni", fibaro:getValue(42, "value"))
fibaro:setGlobal("Scene2_Koksbordsbe", fibaro:getValue(208, "value"))
end
if ((sa['keyId'] == 2) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key2 release')
end
if ((sa['keyId'] == 3) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key3')
fibaro:call(37, "setValue", fibaro:getGlobal("Scene3_Bankbelysni"))
fibaro:call(47, "setValue", fibaro:getGlobal("Scene3_Hallbelysni"))
fibaro:call(42, "setValue", fibaro:getGlobal("Scene3_Koksbelysni"))
fibaro:call(208, "setValue", fibaro:getGlobal("Scene3_Koksbordsbe"))
end
if ((sa['keyId'] == 3) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key3 double')
end
if ((sa['keyId'] == 3) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key3 held')
fibaro:setGlobal("Scene3_Bankbelysni", fibaro:getValue(37, "value"))
fibaro:setGlobal("Scene3_Hallbelysni", fibaro:getValue(47, "value"))
fibaro:setGlobal("Scene3_Koksbelysni", fibaro:getValue(42, "value"))
fibaro:setGlobal("Scene3_Koksbordsbe", fibaro:getValue(208, "value"))
end
if ((sa['keyId'] == 3) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key3 release')
end
if ((sa['keyId'] == 4) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key4')
fibaro:call(37, "setValue", fibaro:getGlobal("Scene4_Bankbelysni"))
fibaro:call(47, "setValue", fibaro:getGlobal("Scene4_Hallbelysni"))
fibaro:call(42, "setValue", fibaro:getGlobal("Scene4_Koksbelysni"))
fibaro:call(208, "setValue", fibaro:getGlobal("Scene4_Koksbordsbe"))
end
if ((sa['keyId'] == 4) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key4 double')
end
if ((sa['keyId'] == 4) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key4 held')
fibaro:setGlobal("Scene4_Bankbelysni", fibaro:getValue(37, "value"))
fibaro:setGlobal("Scene4_Hallbelysni", fibaro:getValue(47, "value"))
fibaro:setGlobal("Scene4_Koksbelysni", fibaro:getValue(42, "value"))
fibaro:setGlobal("Scene4_Koksbordsbe", fibaro:getValue(208, "value"))
end
if ((sa['keyId'] == 4) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key4 release')
end
if ((sa['keyId'] == 5) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key5')
end
if ((sa['keyId'] == 5) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key5 double')
end
if ((sa['keyId'] == 5) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key5 held')
end
if ((sa['keyId'] == 5) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key5 release')
end
if ((sa['keyId'] == 6) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key6')
end
if ((sa['keyId'] == 6) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key6 double')
end
if ((sa['keyId'] == 6) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key6 held')
end
if ((sa['keyId'] == 6) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key6 release')
end
if ((sa['keyId'] == 7) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key7')
end
if ((sa['keyId'] == 7) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key7 double')
end
if ((sa['keyId'] == 7) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key7 held')
end
if ((sa['keyId'] == 7) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key7 release')
end
if ((sa['keyId'] == 8) and (sa['keyAttribute'] == 'Pressed'))
then
fibaro:debug('key8')
end
if ((sa['keyId'] == 8) and (sa['keyAttribute'] == 'Pressed2'))
then
fibaro:debug('key8 double')
end
if ((sa['keyId'] == 8) and (sa['keyAttribute'] == 'HeldDown'))
then
fibaro:debug('key8 held')
end
if ((sa['keyId'] == 8) and (sa['keyAttribute'] == 'Released'))
then
fibaro:debug('key8 release')
end