Smart Door. What features should it have?

123

Senior Member
It's brainstorming time!

I've developed the logic and user-interface for two objects, SmartDoor and SmartGarageDoor, for my HA system. The objects are described below and suit my current requirements. However, I'd appreciate ideas from Cocooners about what they'd like to see in a "smart" door-control system.


SmartGarageDoor's Specifications
Inputs/Outputs
  1. Door Sensor (Input: Senses Open/Closed)
  2. Door Toggler (Output: Pulsed output to trigger door to open/close.)
User-Interface
  • Door State Indicator
    Displays door's name and state ("Front Door Closed").
    Background is green when door is closed and red when door is open.
  • Status Indicator
    Displays time of door state ("Opened: 4/18/8:00 PM"). Also displays command status ("Closing ...") and error messages ("ERROR: Garage Door failed to close.")
  • Control
    Single toggle button used for opening/closing. Button face displays the appropriate unique command ("Open" or "Close").
Door Intelligence
  • Requests to open/close are timed. If the door fails to respond within the allocated time period, the command is automatically re-issued (Status Indicator displays "Failed to respond. Trying again.").
  • If it fails a second time, an error message is displayed in the Status Indicator and an event is logged (can be used to send email).
  • While the door is transitioning from one state to another (i.e. open to close), the control button is ignored.

SmartDoor's Specifications
Inputs/Outputs
  1. Door Sensor (Input: Senses Open/Closed)
  2. Lock Sensor (Input: Senses Locked/Unlocked)
  3. Lock Opener (Output: Pulsed output to trigger lock to open.)
  4. Lock Closer (Output: Pulsed output to trigger lock to close.)
User-Interface
  • Door State Indicator
    Same as SmartGarageDoor.
  • Lock State Indicator
    Padlock icon.
    Locked: Closed, green padlock.
    Unlocked: Open, red padlock.
  • Status Indicator
    Same as SmartGarageDoor plus displays the lock state ("Locked: 4/18/2009 8:02 PM").
  • Control
    Same as SmartGarageDoor except button face indicates "Lock" or "Unlock".
Lock Intelligence
Same as SmartGarageDoor plus it denies attempts to operate the lock while the door is open.


Both objects also have Annunciator ("Front Door Open") and Reminder ("Front Door Left Open") functions that can be constrained to operate with a time period or a temperature range.

What else would be useful?
 

Attachments

  • SmartDoor_Series.png
    SmartDoor_Series.png
    44.1 KB · Views: 118
That's pretty awesome.

Button to jump to exterior camera covering the driveway?

Temp in garage displayed?

Presence or absence of car?

I leave the garage light on sometimes, by mistake. Status of garage light?

Reminder to put garbage can at curb, depending on day of week?
 
It's brainstorming time!
...I'd appreciate ideas from Cocooners about what they'd like to see in a "smart" door-control system.

Ah, the garage door. One of my favorite items to automate!

There are a few advanced automation capabilities you can add, but some may require more hardware.

The idea of a car monitor is a good one. I use THIS car monitor that I custom made for my wife and my vehicles and, along with some Ocelot logic, works great. I have a screen showing the status of each vehicle (picture of each car in the garage with necessary combination of one/both/none and displays appropriate pic based on a vehicle status variable).

For more 'smart logic' I have my system look for an "armed away" status and if the garage door isn't closed in a certain amount of time, the system will chirp the siren and flash the lights in the garage, then close the door via THIS hardware interface. The system will then look at the garage status and if it is not closed it will try that scenario again, then if still not closed it will send an alert email/cell phone text.

As far as monitoring the garage door's position, the average home automation enthusiast can tell you if the garage door is open or closed based on magnetic contact sensors, but a REAL HA person can tell you within a few inches the exact position of the garage door itself!!

I use this Ultimate Garage Door Monitor so I know if the garage door is stuck in-between positions. Also, we crack the bottom of the garage door opened on warm days here. I have a display showing the garage door's position (in tens of percent opened) that Fungun made for me (check that How-To for additional details).

Another smart logic idea I use is to automatically close the garage door if it is found open when the security system is armed in a 'stay' mode. This way the garage door is never left opened overnight!

Incorporating these methods into your system can lead to a pretty cool display. :lol:
 
Reminder to put garbage can at curb, depending on day of week?

Our trash container is behind a locked fence on our side yard which I have monitored via a DS10a. On trash nights I have a voice reminder starting at 7:30 PM and triggers every half hour (until 9:00 PM) until it "sees" that the gate has opened meaning that we have taken the trash to the street.

This one little feature has kept me from previous situations of running out early in the morning when I hear the sounds of the garbage truck (you know the drill, jump out of bed, in your underwear, hair a mess, half asleep, etc... is this TMI). :lol:
 
123 I find your line of thought very interesting. I had my uber kitten Loki set off our house alarm via "pet immune" motion detector 2 weeks ago; got the call from the alarm monitoring company literally 2 minutes after I had told my wife that I thought I had left the basement door unlocked; as we were 1 hour away heading out on a camping trip and I had them dispatch police. Police came, no break-in, just kitty who probably had the crap scared out of him, have the police on video casing the house, pretty cool.

How are you planning on determining the lock state of your doors? I am most interested in solving identifying the lock state for my sliders (deck and walk out basement) that have a lever style of lock (looks like a tadpole)

Also on the garage door the one thing that stops me from automating the closure of the garage door is auto tailgates. On occasion family members will forget to close the tailgate on one of the vehicles, many years ago, closed a garage door on an old Olds Custom Cruiser woody wagon tailgate , for those of you old enough, you will know what I am talking about, needless to say there was more damage to the garage door (the obstruction clutch on the old opener was defective, lucky me). I have thought about putting another safety photo eye at a level that intersects where the tail gates stick out, only problem with this is 1 is a car and one is a truck. I guess I could put 2 in, 1 for each tailgate.

Any ideas cocoontech?
Thanks
-Ben
 
Also on the garage door the one thing that stops me from automating the closure of the garage door is auto tailgates. On occasion family members will forget to close the tailgate on one of the vehicles, many years ago, closed a garage door on an old Olds Custom Cruiser woody wagon tailgate , for those of you old enough, you will know what I am talking about, needless to say there was more damage to the garage door (the obstruction clutch on the old opener was defective, lucky me). I have thought about putting another safety photo eye at a level that intersects where the tail gates stick out, only problem with this is 1 is a car and one is a truck. I guess I could put 2 in, 1 for each tailgate.

some of the commercial garage door systems have a pneumatic knife switch that works like a photo eye with the exception it runs the length of the door and works at any height...I wonder if this is available for residential systems?
 
Thank you for your excellent ideas! Keep them coming!

Button to jump to exterior camera covering the driveway?
Temp in garage displayed?
Presence or absence of car?
... Status of garage light?
I believe these suggestions fall into the category of 'room monitoring' (i.e. surveillance, temperature, occupancy, lighting, etc). I have implemented several of them for various rooms in my home using Premise's default UI controls (see the example below). I don't have the means to detect the presence of cars but I'm studying BSR's solution.

Reminder to put garbage can at curb, depending on day of week?
I've written a module called Newscaster, that serves as a general-purpose 'reminder service', for special events in one's life ...and not-so-special like trash day :lol:. Instead of writing rules for individual events, Newscaster lets you create a list of 'NewsEvents'. Each NewsEvent has properties that describes its characteristics. Here are two examples of NewsEvents:

Example 1: Announce John and Mary's wedding anniversary on the 10th of January of every year. Indicate the number of elapsed years (i.e. twelfth, twentieth, etc). Announce it in the morning, afternoon and evening. Issue reminders 5, 3, and 1 day before the actual event date.
  • Name: John and Mary
  • Category: Anniversary
    There are several predefined categories.
  • Channel: All
    Message will be spoken as well as displayed in the UI.
  • Enabled: True
  • Message: John and Mary's {!years} wedding anniversary.
    RefDate is used to calculate the elapsed time and the variable will be replaced by 'fifty-ninth'. 'Fifty-nine' if you specify {#years}.
  • Period: All
    Announce the NewsEvent in the morning, afternoon, and evening.
  • Year: All
    Any year.
  • Month: January
    Only in the first month.
  • Day: 10
    Only on the tenth day of the month.
  • Reminder: 1_3_5
    Issue reminders 5, 3, and 1 day prior to the NewsEvent's scheduled date.
  • Days: MTWTFSS
    Any day of the week.
  • RefDate: 01/01/1950
    Used for calculating fixed and elapsed times displayed by variables in Message.

Example 2: Announce trash day every Thursday morning.
  • Name: Trash Day
  • Category: Task
  • Channel: Voice
  • Enabled: True
  • Message: Don't forget to take out the trash and blue box.
  • Period: Morning
  • Year: All
  • Month: All
  • Day: All
  • Reminder: None
  • Days: ___T___ Only on Thursdays.
  • RefDate: None
Announcements sound like: Good Morning! There are two Birthdays and one Task this morning. bla bla bla

... automatically close the garage door if it is found open when the security system is armed in a 'stay' mode. ...
Based on BSR's work, SmartGarageDoor would need a few more properties and associated logic:
  1. LeftOpenPeriod
    Time period, in minutes, before the door is considered 'left open' ... might integrate this with the Annunciator/Reminder functions.
  2. WarningPeriod
    Time period, in seconds, between issuing the WarningMessage and closing the garage door.
  3. WarningMessage
    Phrase to be spoken via computer's audio driver.
... record door open/closed status changes so you could detect unwanted activity.
Here's how I see this one implemented:
  1. Store open/close and lock/unlock in text files (CSV format).
  2. Each instance of a SmartDoor has its own log file.
  3. Alternately, logging data for all SmartDoors can be stored in a single Access MDB file.
  4. Create a UI control to display the last ten log entries.
  5. Create two properties to control this functionality on a per object basis:
  6. LoggingEnabled: (True/False) Control logging.
  7. DisplayLog: (True/False) Control the display of logging data in the UI.
If displaying the logged data in the UI is not important, there's always the general-purpose Logging module. It logs the activity of several kinds of objects including doors.

How are you planning on determining the lock state of your doors?
I'm using microswitches embedded in the door frame to detect the position of the deadbolt. If I were to do it again, I'd use plungers (assuming the door frame is thick enough).
Sliding doors are more challenging because they have tiny locking mechanisms and it is difficult to conceal the sensor device (in order to maintain aesthetics and prevent tampering). In contrast to your 'tadpole', my door uses a vertical, sliding button that swings a hook onto a catch. The options I have are:
  1. Detect the position of the sliding button (Up:Unlocked, Down:Locked) with microswitches.
  2. Detect the presence of the hook within the catch with a microswitch or some other sensor.
Maybe someone knows of a commercially-available device for this purpose?
 

Attachments

  • Garage_UI.jpg
    Garage_UI.jpg
    14 KB · Views: 28
It could be useful to record door open/closed status changes so you could detect unwanted activity.
Thanks for the suggestion. I've added a circular buffer that records the last ten events and displays it as a scrollable list in the UI. This is useful for viewing short-term history.

For long-term history, I've written a general-purpose logging module that records all events to an MDB file. I can use MS-Access to view/report/graph the recorded data. Currently, it records state-changes for all lights, doors, windows, motion-detectors, and temperature sensors. You can selectively enable/disable logging for each object (i.e. do not log the FamilyRoom motion detector).
 
Back
Top