Page 2 Table of Contents
… Page 1 Table of Contents
15. Initial Testing
16. Fix Motion Sensor Intrusion During Entry Delay
17. Fix Motion Sensor Intrusion During Exit Delay
18. Using Sounds and Text to Speach
19. Fix Siren Alarm During Entry delay
20. Using True Entry Delay
21. TrueNight Option, Keypads, and Exit/ Entry Delays
22. Way Beyond the Basics, User created SHM Modes
23. Using Simulated Keypad
24. Known Issues
25. Update History
26. Background
27. Source Code
28. Switching between “beta” and “Version2”
29. Help and Support
30. Addon Module - SHM Delay TrueExit
31. Addon Module - SHM Delay BuzzerSwitch
32. Converting from Version 1
15. Initial Testing using the SmartThings phone app
There is a bug in SHM. When an intrusion alert is not cleared in the phone app, the next intrusion will send a notification, but will not execute any Security automations such as sirens or lighting. This is generally only an issue during system testing.
Work Around: clear intrusion alerts as they occur.
Test the simulated sensor
- Tap Dashboard
- Tap Armed Away
- Tap My Home
- Scroll to the simulated contact sensor device. It should show “closed”, if not tap it once to close it. Tap to open it.
- Alarm should trigger. Clear alarm by tapping Disarm, clear intrusion in phone app, continue with Exit Delay test.
No Alarm: Verify SHM Security is monitoring the simulated contact sensor.
Test Exit Delay
- In the SHMDelay Profile set entry delay to 0, set exit delay to 30 seconds (save it)
- Close the door associated with the real contact sensor
- Tap Dashboard in phone app
- Tap Armed Away. Allow system to arm.
- Open the door -->Alarm should not trigger
- Close the door
- Wait “exit delay” seconds
- Open the door–>Alarm should trigger Clear alarm by tapping Disarm, clear intrusion in phone app, continue with Entry Delay test.
Alarm issued at Step 5:
- Verify an exit delay is coded on the Delay Profile
- If the exit delay expired opening the door, retry.
- Verify the real contact sensor is not monitored in SHM Security.
- When a single motion sensor caused the alarm: add the motion sensor to the Delay Profile, remove from SHM Security
- When multiple motion sensors caused the alarm: set Global option “Allow Multiple Motion Sensors” to On/True, add sensors to Delay Profile, remove from SHM Security.
- When non motion sensor device created the alarm: install and configure SHM Delay TrueExit
No Alarm: Verify the contact’s SHM_Delay sensor profile info; save it, then save again on main page, retry
Test Entry Delay
- In the SHMDelay Profile set exit delay to 0, set entry delay to 30 seconds
- Close the door associated with the real contact sensor
- Tap Dashboard in phone app
- Tap Armed Away. Allow system to arm.
- Open the door -->Alarm should not trigger
- Wait “entry delay” seconds–>Alarm should trigger
Alarm issued at Step 5:
- Verify an entry delay is coded on the Delay Profile
- Verify the real contact sensor is not monitored in SHM Security.
- When a single motion sensor caused the alarm: add the motion sensor to the Delay Profile, remove from SHM Security
- When multiple motion sensors caused the alarm: set Global option “Allow Multiple Motion Sensors” to On/True, add sensors to Delay Profile, remove from SHM Security.
- When a non motion sensor caused the alarm, global option “True Entry Delay” option must be used.
No Alarm in Step 6: Verify the contact SHM_Delay sensor profile info; save it then, save again on main page, retry
Test Completed
- Clear intrusion alert in phone app
- In the SHMDelay Profile set exit delay and entry delay to desired values, then save.
16. How to fix a motion sensor triggering an intrusion alert during the Entry Delay.
-
In the contact sensor Delay Profile, select the triggering motion sensor, update the profile, then remove the motion sensor from the SHM Security: Armed Away Motion sensors. The motion sensor is 'followed", meaning it is ignored when the contact sensor is ‘open’ during entry delay and during exit delay, otherwise it is monitored during alarm state “away”.
-
Multiple motion sensors may be set in a profile, by setting Global option “Allow Multiple Motion Sensors” to On/True.
-
When a motion sensor is defined in multiple delay profiles, set Global option “Check other Delay Profiles” to On/True.
-
If paragraph 1 thru 3 above does not correct the issue, set global option True Entry Delay to On/True.
17. How to fix a motion sensor triggering an intrusion alert during the Exit Delay when not using a Keypad
-
In the contact sensor Delay Profile, select the triggering motion sensor, update the profile, then remove the motion sensor from the SHM Security: Armed Away Motion sensors. The motion sensor is 'followed", meaning it is ignored when the associated contact sensor is ‘open’ during entry delay and ignored during exit delay, otherwise it is monitored during alarm state “away”.
-
Multiple motion sensors may be defined in a profile by setting Global option “Allow Multiple Motion Sensors” to On/True.
-
When a motion sensor is defined in multiple delay profiles, set Global option “Check other Delay Profiles” to On/True.
-
If paragraph 1 thru 3 above does not correct the issue, install **SHM Delay TrueExit then follow setup instructions
-
Set AlarmState by using SHM Delay TrueExit monitored SHM Routine
-
In this the SHM_Delay Profile: Set ExitDelay to 0
18. Sound and Text to Speech (TTS) announcements
-
To use an Android phone or tablet as a Speech or Alarm Device install Lannouncer. Should you be running on a device with the Fully Kiosk Browser is always in the foreground: for example running ActionTiles, I strongly recommend using the Fully Kiosk Contoller DTH for TTS. It requires no additional apps be installed on your device.
-
Most sounds and TTS announcements can be performed with Big Talker, RemindR, or your favorite app, with two major exceptions: Exit Delay and Entry Delay.
-
For an announcements during Exit and Entry Delays:
- Click “Create A New Talker Profile”
- the optional message %nn parameter is replaced with the respective number of delay seconds on all messages
- Adjust set output TTS and speaker devices. Adjust messages if desired. When not using a keypad, ignore keypad exit delay message.
- Save
- Note when using Lannouncer TTS devices, these messages are preceeded and followed with the Chime tone
- (Beta Oct 16, 2017) Note: When arming from a non-keypad device or source, and multiple delay profiles are set, the announced non-keypad delay is the minimum time coded on all delay profiles, since we don’t know which door you will be using to exit the facility. However, should a door open, the actual non-keypad delay time coded in the delay profile is used for the exit delay calculation. This is a compromise avoiding a substantial code change.
-
If you installed smartapp Keypad_ExitDelay_Talker, remove from phone app and IDE
-
if you installed smartapp SHM_Delay_TrueExit disable spoken messages
-
For custom sounds and options during exit and entry delay, use the WebCore smartapp.
In WebCore trigger the TTS, tone or action based upon a custom location attribute created by SHM Delay. In Groovy: subscribe(location, “shmdelaytalk”, routinetoexecute)
After being triggered, the event’s value data must be tested for the following
- entryDelay
- exitDelay (Exit delay associated with a keypad)
- exitDelayNkypd (Exit delay not associated with a keypad)
The length of the respective delay in seconds is found in the event’s data field
19. How to fix a siren that goes off about 2 seconds into an entry delay and won’t stop
Your siren does not support the beep() command and is not working with the beep simulation commands. Remove the siren from the Delay Profile. It does not impact its use with SHM.
Back to top
20. True Entry Delay Option (Default: False/Off)
This is a last resort when an intrusion alert continues after setting an optional followed motion sensor in a Delay Profile. How it functions:
- When a monitored contact opens in Alarm State Away, or Stay not using the instant true night option: the alarm state is set to Off
- Does nothing for user defined entry delay seconds, allowing time to turn off alarm (for real) by any method desired.
- When Alarm state remains unchanged (user did not set off again or did not rearm): Alarm System is rearmed to original state, then an intrusion is set by opening simulated contact sensor.
Note: this may cause confusion when viewing the system alarm state with phone app Dashboard, and unexpected SmartApp or Piston reactions.
Back to top
21. TrueNight Option, Keypads, and Exit / Entry Delays
Settings shown below are the defaults that can be individually controlled by turning on Modefix in globals, then setting delays for the various alarm state / mode combinations in the Modefix profile
TrueNight (Default: Off / False) applies only to Iris 3405-L keypads and determines if the Partial Key creates an Instant or Delayed intrusion alert when a monitored contact sensor is triggered
Arm / Disarm: enter four(4) digit pin, followed by Off, On, or Partial
| True | Exit | Entry | Armed | |
|---|---|---|---|---|
| Key | Night | Delay | Delay | State |
| On | N/A | Delay | Delay | Away |
| Partial | Off | Delay | Delay | Night |
| Partial | On | None | Instant | Night |
When using a Centralite / Xfinity keypad in SmartThings Armed State: Night, the smartapp follows the ST Alarm state and lit Icon key
Arm: Press Stay, Away or Night icon; enter four(4) digit pin
Disarm: enter four(4) digit pin
| Exit | Entry | Armed | |
|---|---|---|---|
| Key | Delay | Delay | State |
| Away | Delay | Delay | Away |
| Stay | Delay | Delay | Night |
| Night | None | Instant | Night |
Motion Sensor operation in Armed State:
-
Away: SHM Delay monitors all motion sensors defined in Delay Profiles, plus SHM monitors all motion sensors defined in “home is unoccupied”-> Motions sensors
-
Night: SHM monitors all sensors defined in “home is occupied”-> Motions sensors
22. Way Beyond The Basics, User created SHM Modes
User Defined Modes. Example: Create “Stay” mode for use with Centralite / Xfinity keypad
- In the IDE, My Locations, click the location, then create a new Mode “Stay”
- Then in the phone app “Routines”, create a new routine named: Stay (or whatever you want). Set AlarmState to Stay, and Mode to Stay. Add other settings as desired
- In Global Settings, scroll down to Keypad Routines, set the newly created Stay routine name for Stay/Partial.
- Implement ModeFix (Required)
- Update the SHMDelay Mode Fix profile Stay options to include ‘Stay’ as a valid mode along with Night.
The result:
- ActionTiles Mode and SmartHome Mode can display “Stay” and syncronize with Keypad
- BigTalker can speak the correct Mode change
- Webcore and other automations can test for Stay mode
23. Using Simulated Keypad
The Simulated Keypad creates an Iris or Xfinity/Centralite image in a browser or Android app that functions as a keypad with Smarthings using the SHM Delay smartapp. Should you want to try it in test mode without installing any code, the link is at https://www.arnb.org/keypad/www
Should you prefer running the keypad from an Android app, it may be downloaded at https://www.arnb.org/keypad/keypad.apk You must allow Andoid to install apps from “Unknown Sources”. The app was generated using Phonegap. An IOS app is likely not going to be released due to the need to spend at minimum $100 to simply create the app.
What could this be used for?
-
Giving access to your Smarthings system to a spouse, friend, child, dog walker, neighbor, sitter, etc without having to install the Smarthings App or any other software on their phone, Each user has a unique pin, that may include date and time restrictions.
-
Try out and setup your system with a “Simulated Keypad” before making the decision to purchase and install a real keypad.
How to Install assuming you are already using SHM Delay.
-
Install all SHM Delay modules from the Github ARNBME SHMdelay Version2 branch. You may do this with the IDE or manually by going to https://github.com/arnbme/SHMDelay/tree/Version2/smartapps/arnbme then copy the modules and install 'from code". Install the new module SHM Delay Simkypd Child, Save do not publish, then authorize this module for Oauth in the IDE.
-
In the IDE, 'My Device Handlers", add device “Internet Keypad” Install using “Update From Repo” from the Github ARNBME SHMdelay Version2 branch. You may do this with the IDE or manually by going to https://github.com/arnbme/SHMDelay/tree/Version2/devicetypes/arnbme/internet-keypad.src then copy the Raw module, then paste using “Create a New Device Handler” and installing “from code”.
-
Create one or more virtual keypad devices. In the IDE go to “My Devices”, click “New Device” set the parameterrs, and set the type to “Internet Keypad”
-
On your phoneapp, go to Automation->Smartapps, then tap SHM Delay. Scroll down and tap “Global Settings” Set “Activate Total Keypad Control” to ON/True. Save the profile
-
On your phoneapp, go to Automation->Smartapps, then tap SHM Delay. Scroll down and tap “Create A New Sim Keypad Profile” Set a simulated keypad device, then save the profile. Go back and tap on the newly created profile, it displays an 8 character ID, copy it, then go to https://www.arnb.org/keypad/www enter and save the ID. The simulated keypad is now live including the panic key on the Iris image.
-
There are two cookies used to store information that have a 1 year expiration. When using the browser keypad page, set your browser to allow and not erase cookies from https://www.arnb.org
Notes:
- May require one arm/disarm for status to show
- Status display does not work with IE or Edge Browser
- Status display may be delayed by up to 3 seconds
24. Known issues
-
When switching into page 2 of the documentation from page 1, browser does not go directly to desired html anchor point.
-
Occasional strange system operation when creating a user profile. Ignores all input data or forces reentry of a field.
25. Update History
Jul 23, 2018
-
Support for quick arming on Iris keypad without entering a pin.
Iris harware sends a 0000 code when single or double tapping the On or Partail key without entering a pin. The device firmware determines if it is single of double tapped.
To implement: add User Profile with pin 0000, Type: User. The Iris does not send the 0000 when the Off key is pressed. For security reasons, suggest setting the User Profile flag to ignore an real 0000 pin entry with the Off button - Valid Pin message routing is now controllable on a global basis, and each User Profile may optionally override the global pin message settings. Pin Messages may log to phone Notification Log, Contact Book, push messages and SMS with phone numbers. Scroll to end of globals to set basic pin message settings, then optionally override the global pin settings in the User Profile.
- Bad Pin messages, pins not in a User Profile, are now controllable on a global basis. This is separate from the valid pin setting.
- “Routine” and “Piston” pin types now include settings for keymode in addition to All Modes. For example: Off: executes Routine-> Lights Off; On/Away: executes Routine-> Lights On
- New pin type: UserRoutinePiston. Sets armed mode; optionally runs Routines: one per keypad arming type, optionaly runs Webcore Pistons one per keypad arming type
Jul 02, 2018:
- Spoken messages for exit delay and entry delay now part of basic application
Jun 15, 2018 current Beta logic installed into Version2, including:
- Simulated Keypad
- User pin restrictions by SHM Mode or keypad device
- Version verification
Jun 05, 2018 Documented Simulated Keypad (Beta)
Apr 30, 2018 Updated modules SHM Delay(2.0.4), SHM Delay Child(2.0.1), SHM Delay Modefix(0.1.2), SHM Delay Users(0.0.1)
- Anyone using an Xfinity or Centralite keypad (should not impact Iris or non keypad users)
In Modefix profile new settings. You may set the Icon button to light on the keypad, Stay (Entry Delay) or Night (Instant Intrusion) when arming from a non keypad device suchas dashboard or ActionTiles. Note this field displays only when an Xfinity or Centralite keypad is set in globals - Anyone who has the same motion sensor defined in two or more Delay Profiles
Issue: False alarm from motion sensor when a contact sensor opens, the other profile created an intrusion from the motion sensor. Set Global option “Check other Delay Profiles” to On/True. - Issue: Real contact sensor not accepted when text “simulated” in type data
- Add dynamic version numbers to all modules. May be used in future to verify user’s system is current
Apr 04, 2018 Beta Version 2.0.1 Released, Updated module SHM Delay
- Fix issue with burned pin
- Move all documentation to community forum release thread
- Change global keypad selection from capability to device
Mar 14, 2018
- Beta Version 2 Released
26. Background
I developed this app after I was presented with a steep learning opportunity created by installing Smartthings, an Xfinity keypad and GoControl siren. I purchased the keypad because ST phone presence proved unreliable as a SHM control method.
After installing the Xfinity 3400-X keypad and GoControl siren I made the decision to continue using SHM instead of SmartAlarm (no longer supported) because in theory, SHM is supposed to run on the local hub. I thought that would give me more reliability during an internet outage. That is likley not true but anyhow I’m using SHM. SHM lacks an: EntryDelay time, ExitDelay time, keypad support, and Zones.
This app does not support Zones, but does have a unique profile for each monitored sensor, allowing for unique entry and delay times, which keypards sound tones, and which sirens to beep.
Before writing this app I developed the logic using multiple Core and WebCore pistons for EntryDelay, and Open Door Monitoring. I’m a (PHP, Javascript, IBM Assembler, Cobol, Database) programmer, and wanted finer control over the processing. I taught myself Groovy and created some apps for personal use, then added editing, and released it to the ST Community. I found Java/Groovy similar to PHP and Javascript, but bumped into many frustrating differences. That said I hope someone, especially Noobs, find this app useful.
27. Source Code
28. Switching between “beta” and “Version2”
If you are running “beta” or “Version2” and you want to swap versions.
- There are six (6) modules associated with the app:
- SHM Delay. Module should be Saved, Published, then Installed with the Smarthings app (must be done first)
- SHM Delay Child. Should be Saved, do not publish or install.
- SHM Delay ModeFix Should be Saved, do not publish or install
- SHM Delay User Should be Saved, do not publish or install.
- SHM Delay Talker Child Should be Saved, do not publish or install.
- SHM Delay Simkypd Child Should be Saved, do not publish or install. Oauth rerquired
- Installing via the repository (preferred)
-
Go the the IDE–>Login–>My Smartapps–>Settings–>change Github respository
Owner: arnbme (in upper case that is ARNBME)
Name: SHMDelay
Branch: (beta / Version2) --> when “beta”, enter “Version2”; when “Version2” enter “beta” -
Click ‘Save’
-
In “My SmartApps”
- For SHM Delay, SHM Delay Child, SHM Delay ModeFix, SHM Delay User, SHM Delay Talker Child, and SHM Delay Simkypd Child
- Click “Edit Properties” --> Click “Source Code Options” --> Select the Repo libary you just changed --> click “Update” on bottom of page
-
In ‘My SmartApps’ click 'Update from Repo". Follows steps 5 and 6 when modules are out of sync.
-
Select the SHMDelay repository you just changed, then install and publish SHM_Delay (must be first)
-
Install do not publish SHM_Delay Child, SHM_Delay ModeFix, SHM Delay User, SHM Delay Talker Child, SHM Delay Simkypd Child
-
(If not previously done) In the ST Phone APP install the SHM_Delay app
-
Manually install Version2 by going to https://github.com/arnbme/SHMDelay/tree/Version2/smartapps/arnbme then copy the modules and install 'from code"
-
Manually install beta by going to https://github.com/arnbme/SHMDelay/tree/beta/smartapps/arnbme then copy the modules and install 'from code"
29. Help and Support
Prior to posting a help request on this thread or as a private message, please verify the following:
-
You are using the Classic phone app, the Connect app is not supported
-
You are running the lastest version of any installed SHM Delay Version 2 modules.
-
You have read and followed all instructions in the documentation.
-
When using a keypad, the suggested DTH is installed, published and is being used, and global setting “Activate Total Keypad Control” is on/true .
-
All prior intrusion alerts have been cleared from the phone app.
30. SHM Delay True Exit - Create a real SHM Exit Delay when not using a keypad device
Use this module along with SHM settings when the simulated non-keypad exit delay is not sufficient for your needs.
This stand alone module creates a real SmartHome(SHM) Exit Delay by monitoring for the execution of a “do nothing” SHM Routine, then in a user specified number of seconds executing a second SHM routine that actually sets the Alarm. Normally this should be used when setting Away with SHM Routine “Goodbye”. The initial routine may be executed by tapping on the routine name in SmartThings, or executed by a smartapp or WebCore piston.
Features
- User defined delay time
- User defined routine names
- Optional speech with user defined message output to Lannouncer/DLNA or Speakers (Dec 18, 2017)
Quick Setup Guide
- In the Phone App Automation->Routines: create a new dummy routine with no mode, no alarmstate, no actions, name it: Goodbye-Delay (or whatever you want)
- In IDE SmartApps: Install routine SHM Delay TrueExit from repo or code
- Set Routine to monitor for execution to: Goodbye-Delay (or your name)
- Set number of seconds to delay: 10-120
- Set “Then execute this routine” to: Goodbye! or whatever routine you use
- In whatever you are using to currently execute “Goodbye” change it to “Goodbye-Delay”
- Setup optional speech
- Test your system by tapping on the initiating routine name in Automations->Routines
Installation
There is one module associated with the app:
- SHM Delay TrueExit.
To install via the repository, add the following to the IDE Settings (or copy code below)
Owner: arnbme (in upper case that is ARNBME)
Name: SmartThingsPublic
Branch: Master - Click ‘Save’, then in ‘My Smart Apps’ click 'Update from repo",
- select the ARNBNE SmartThingsPublic repository then install and publish SHM Delay TrueExit
- in the Phone App tap on add a Smartapp, install SHM Delay TrueExit and set paramaters
31. SHM Delay BuzzerSwitch - Turn on a Konnected Buzzer, a real/virtual switch, or a light during SHM Delay’s Exit and Entry Delay
Features
- Devices are set On at exit delay or entry delay
- Devices are set Off at expiration of delay time, or when SHM Status changes to Stay or Off/Home, arming is canceled from a keypad
- Supports multiple devices
Quick Setup Guide
- After installation set devices
Installation
There is one module associated with the app:
- SHM Delay BuzzerSwitch.
To install via the repository, add the following to the IDE Settings (or copy code below)
Unknown Github issue preventing me from adding to SmartThingsPublic repo (Nov 17, 2018)
Owner: arnbme (in upper case that is ARNBME)
Name: SHMDelay
Branch: beta - Click ‘Save’, then in ‘My Smart Apps’ click 'Update from repo",
- select the ARNBNE SmartThingsPublic repository then install and publish SHM Delay BuzzerSwitch
- in the Phone App tap on add a Smartapp, install SHM Delay BuzzerSwitch, then set devices
32. Instructions for converting from Version1 are at this link
Please post all installation and usage results, both positive and negative, along with any questions, issues, or comments on this thread. Thank You
Back to top