Hallo zusammen,
ich habe mir eine neue Fernbedienung gekauft die Fibaro KeyFob.
Meine alte Fernbedienung war die Popp KeyFob. Leider hatte sie das Problem das die Batterie nach 4 Wochen leer waren.
Jetzt habe ich mein Skript angepasst mit den Infos von BoomX Fibaro KeyFob Lua Code. Leider bekomme ich es nicht zum laufen! Es heißt immer “a Nil Valve” in Zeile 25
Hat jemand eine Idee was man ändern muss?
--[[
%% properties
10 power
%% events
149 CentrentralScene
%% globals
--]]
-----------------------------------
--------- Verwendung ---------
-----------------------------------
local scene = 44 -- ID dieser Szene
local WalplugTV = 10 -- ID des Strommessers
local Walplug = 65 -- ID des geräten ausgeschltet werden
local Licht = 6 -- ID des Hauptlichtest
local Led1 = 34 -- ID des RGBW Licht
local Led2 = 41 -- ID des RGBW Licht
local Fern = 149 -- ID der Fernbedienung
local currentDate = os.date("*t");
local sourceTrigger = fibaro:getSourceTrigger();
local schlafzustand = fibaro:getGlobalValue("Schlafzustand")
local swipe_source = fibaro:getSourceTrigger()["event"]["data"]
--------- Schleifenschutz ---------
if (fibaro:countScenes()>1) then
fibaro:debug('Beende die doppelte scene!');
fibaro:abort();
end
-------------------- Debug Einstellung ------------------------
Debug = function ( color, message )
fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span"))
end
--------- Schalte bei zustand Wach und TV ein -------------
if (tonumber(fibaro:getValue(WalplugTV, "power")) > 25
and tonumber(fibaro:getValue(Led1, "power")) == 0
and tonumber(fibaro:getValue(Led2, "power")) == 0)
then
fibaro:call(Licht, "turnOn");
fibaro:setGlobal("Schlafzustand", "Wach")
fibaro:sleep(1000);
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("yellow",("Schalte Licht ein..."));
Debug('green',("Der Schlafzustand ist: "..schlafzustand..""));
Debug("blue",(os.date("(%d.%m.%Y) Der Fernseher ist um %H:%M Uhr eingeschaltet!.")));
fibaro:abort();
fibaro:killScenes(scene);
-------------- Manuel schaltet ---------------
-- TV Abgeschaltet. Dann Licht und andre Geräte ausschalten
elseif (tonumber(fibaro:getValue(WalplugTV, "power")) < 25)
then
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("gray",(os.date("(%d.%m.%Y) Fernseher um %H:%M Uhr manuel ausgeschaltet...!")));
Debug("red",(os.date("Sensoren für 1 Minuten deaktiviert....!")));
fibaro:setGlobal("Schlafzustand", "Schlaf")
fibaro:sleep(60000);
fibaro:call(Licht,"turnOff");
fibaro:call(Led1, "turnOff");
fibaro:call(Led2, "turnOff");
fibaro:call(Walplug, "turnOff");
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("green",(os.date("%H:%M Uhr / Timer (Fernsehr manuel aus) abgelaufen, Sensoren wieder aktiviert....!")));
fibaro:setGlobal("Schlafzustand", "Schlafen")
Debug('rot',("Der Schlafzustand ist: "..schlafzustand..""));
fibaro:abort();
fibaro:killScenes(scene);
------- LED manual einschalten, Licht aus ----------------
elseif (swipe_source["keyId"] == 1 and swipe_source["keyAttribute"] == 'Pressed')
or (swipe_source["keyId"] == 1 and swipe_source["keyAttribute"] == 'Pressed2')
or (swipe_source["keyId"] == 1 and swipe_source["keyAttribute"] == 'Pressed3')
then
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("yellow",(os.date("(%d.%m.%Y) LED am Bild um %H:%M Uhr manuel eingeschaltet...!")));
fibaro:call(Licht, "turnOff");
fibaro:abort();
fibaro:killScenes(scene);
elseif (swipe_source["keyId"] == 2 and swipe_source["keyAttribute"] == 'Pressed')
or (swipe_source["keyId"] == 2 and swipe_source["keyAttribute"] == 'Pressed2')
or (swipe_source["keyId"] == 2 and swipe_source["keyAttribute"] == 'Pressed3')
then
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("yellow",(os.date("(%d.%m.%Y) LED am Fenster um %H:%M Uhr manuel eingeschaltet...!")));
fibaro:call(Licht, "turnOff");
fibaro:abort();
fibaro:killScenes(scene);
-- Led Licht ausgeschaltet. Dann Hauptlicht wieder an
elseif (swipe_source["keyId"] == 1 and swipe_source["keyAttribute"] == 'HeldDown'
and tonumber(fibaro:getValue(Led2, "power")) == 0)
then
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("gray",(os.date("(%d.%m.%Y) LED am Bild um %H:%M Uhr manuel ausgeschaltet...!")));
fibaro:call(Licht, "turnOn");
fibaro:abort();
fibaro:killScenes(scene);
-- Led Licht ausgeschaltet. Dann Hauptlicht wieder an
elseif (swipe_source["keyId"] == 2 and swipe_source["keyAttribute"] == 'HeldDown'
and tonumber(fibaro:getValue(Led1, "power")) == 0)
then
fibaro:debug("------------------------------------------------------------------------------------------");
Debug("gray",(os.date("(%d.%m.%Y) LED am Fenster um %H:%M Uhr manuel ausgeschaltet...!")));
fibaro:call(Licht, "turnOn");
fibaro:abort();
fibaro:killScenes(scene);
end