haavarda wrote:Hi Perry.
I have been going over your functional description of the garage controller, and I am a bit worried about the function that enables the door if it has stopped.
What if it is a good reason for that the door stopped? If a car is parked under the door, if a kid is playing there etc... Could it be possible to enable/ disable this functionality? Or add a function that only operates the door if second sensor is false? As I have a beam sensor that detects if there is something in the path of the door.
Even without the
Garage Door device, you are relying on the built-in safety features of your garage door (force sensors, light beams, etc.) Any time you look away, walk away, or drive away while the door is closing, you are relying on
your door's safety features
already.
Garage Door assumes that your door will reverse and re-open if it detects an obstacle in its closing path.
Garage Door adds some resilience to the door's built-in security, but it doesn't override any of it For obstacle detection, the worst-case scenario is that the door sensor will have to reverse the door three times instead of once. In exchange for this, you get fairly reliable recovery from single transient events (cat crossing, dirt flying, random button press on the remote). Then the device will give up and (optionally) alert you.
Also, without full-track supervision (a camera, or a continuous linear sensor track) it's impossible to operate the door with a single button press. So some level of retry is inherent in its operation; we're just haggling over how much. The current implementation compromises by using the minimum number of retries needed to start at an arbitrary position and recover from a single transient event. I think that's the right choice.
(And this may be as good a time as any to remind everyone that my plugins, including this one, come with
absolutely no warranty of any kind and their use is entirely at your risk. See
http://www.cynic.org/indigo/plugins/.)
Cheers
-- perry