-- 11.05.18/AH Erstellt für Workaround Deckenlampe LOGO=Flood 1 -- Beim Einschalten per direktem x0D0C von Flood 1 (Logo Lt) wird auch Flood 2 (Cabin Lt) eingeschaltet -- Beim Ausschalten wird aber nur Flood 1 ausgeschaltet, Flood 2 bleibt an. -- Workaround: Ausschalten von Flood 1+2 mit diesem Script -- Parm = 1 : Einschalten des Logo-Lt -- Parm = 2 : Ausschalten von Logo+Cabin Lt. -- if ipcPARAM == 1 then logobit=256 -- Bit 8 (0x100=256) in 0D0C ist Logo Lt (Flood1). cabinbit=512 -- Bit 9 (0x200=512) in 0D0C ist Cabin Lt (Flood2). newlights=ipc.setbitsUW(0x0D0C, logobit) -- Logo Lt. einschalten -- Das folgende Warten auf das Cabin-Bit hat auch nix gebracht. -- lightstate=ipc.readUW(0x0D0C) -- cabin=logic.And(lightstate,cabinbit) -- Zustand Cabin Lt. merken -- logo=logic.And(lightstate,logobit) -- Zustand Logo Lt. merken -- fla=ipc.readLvar("L:FloodLight1Switch") -- flb=ipc.readLvar("L:FloodLight2Switch") -- if cabin == 0 then -- wenn Cabin aus ist: -- newlights=ipc.clearbitsUW(0x0D0C, cabinbit) -- ipc.writeLvar("L:FloodLight2Switch",0) -- ipc.writeLvar("L:LightCabinSwitchSave",0) -- ipc.sleep(1000) -- ipc.writeLvar("L:FloodLight1Switch",0) -- ipc.sleep(1000) -- newlights=ipc.clearbitsUW(0x0D0C, logobit) -- end -- ipc.lineDisplay("lstat: " .. lightstate .. " cabin:" .. cabin .. " logo:" .. logo .. " fla:" .. fla .. " flb:" .. flb .. "newlt: " .. newlights,3) return elseif ipcPARAM == 2 then logobit=256 -- Bit 8 (0x200=256) in 0D0C ist Logo Lt (Flood1). cabinbit=512 -- Bit 9 (0x200=512) in 0D0C ist Cabin Lt (Flood2). oswlights=ipc.clearbitsUW(0x0D0C, cabinbit+logobit) -- Logo Lt. einschalten -- ipc.sleep(500) -- ipc.writeLvar("L:FloodLight2Switch",0) -- ipc.writeLvar("L:FloodLight1Switch",0) return end