/Home-on-Code-Unlock-Too

SmartThings Hello Home automation for Z-Wave Locks

Primary LanguageGroovy

Home-on-Code-Unlock-Too

SmartThings Hello Home automation for Z-Wave Locks

DESCRIPTION

This SmartApp was developed to enable changing the Hello Home mode when someone uses a code or the key to unlock a Z-Wave Lock. It supports a variety of related features and options:

  • Display a name/identifier for each code ID#, allowing you to know who opened the door (e.g., Cleaning Company)
  • Run your selection of Hello Home Actions when the door is unlocked (e.g., "I'm Back!"), disabling your alarms (for example)
    • Note - some locks report the unlock events as they happen (Schlage?), others may be a bit delayed (Kwikset?).
  • Optionally run Hello Home actions for coded entries for which you have NOT provided name/identifiers
    • Optionally, auto-lock the door for Unspecified User coded unlocks (not guaranteed to be quick enough to prohibit entry)
  • Optionally perform HH Actions for manual/keyed unlock, using either the default action or a specific action for Manual/Keyed
  • You can also specify a code ID# as a Distress Signal, which will unlock the door and send a Mayday altert via any combination of sendSMS, sendPush and/or sendNotificationEvent (thanks Greg for the suggestion)
    • Thanks to Patrick Stuart for the original distress signal idea & code
  • When the lock is locked again, runs a Hello Home Action (e.g., "Goodbye!")
  • If one or more specified ST people/things are present, none of the actions are run

USAGE NOTES

As noted, not all locks report their mode changes immediately, so the Hello Home Action may not get run in time to prevent alarms going off.

If you have multiple locks, you should be able to run multiple instances of this app, one for each lock. I'm entertaining the suggestion to make one instance work for multiple locks...no promises.

Auto-lock is a bit controvesial and definitively not guaranteed to happen in time to prevent entry. I added it as a means to disable a code that you want to prevent entry with - say if you change cleaning people but haven't had the chance to change the code yet. Use at your own risk - no promises!

The "Max # of Users" defines how many users can be entered. This means that only code ID#'s 1-Max Users will be enabled in the preferences screens. Note that this does NOT prevent use of codes higher than Max Users, you just can't register names for them. To have those codes (as well as any blank ones in preferences) also run the Hello Home actions, you need to turn on the Allow Unspecified Code IDs toggle.

Your Distress Signal code ID has to be in the range of 1-Max Users; setting it outside the range won't allow you to edit the distress signal options.

Note that if you set this app to "Set for specific modes?", the app doesn't even get run for any modes you don't select.

My particular Schlage lock has some kind of installation problem, since it reports "unknown" when unlocking with the key. The internal error is actually reporting "jammed", even though the lock operates fine. Thus I've added a work-around - this should not introduce any risks for locks that work fine, and it has the side benefit of resetting the lock back to a known state (useful, since the ST dashboard doesn't display locks that are in an "unknown" state).

I hope that this app meets your needs, but if you have any problems/suggestions, please leave me a note on the SmartThings Community pages.

Enjoy! Barry Burke