I ran into this issue yesterday. Tech Support remoted in and the only solution was to reset to factory defaults. I had a backup from the night before so I only had three scenes to put back in. The unit locked while saving the last scene. Once reset and restored I re-entered the scenes and the unit locked again while saving the last scene. This scene turned off a light and used Luup code to condition and return true if a motion sensor had not been tripped for 15 seconds and a schedule to run once a minute. The code was taken from the samples with the id changed to match my sensor and I removed the Armed condition. As you can see below, it's a basic condition. Backups are your friend!!
local deviceNo = 25 -- Changed from 22 to match my sensor ID
local period = 15
local SS_SID = "urn:micasaverde-com:serviceId:SecuritySensor1" -- Security Sensor Service ID
-- Marked out lines were removed altogether
-- local armed = luup.variable_get (SS_SID, "Armed", deviceNo)
-- if (armed == "1") then
local lastTrip = luup.variable_get (SS_SID, "LastTrip", deviceNo) or os.time()
lastTrip = tonumber (lastTrip)
if ((os.difftime (os.time(), lastTrip) / 60) >= period) then
return true
end
-- end
return false