Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
337 lines (273 sloc) 14.5 KB


image nyckelharpa
The buttons and levers controlling Hubitat Elevation's Home Security Monitor's strings.

Table of Contents

 1. Purpose
 2. Features
 3. Donate
 4. Installation
 5. Quick Setup Guide
 6. Global Settings
 7. Forced Arming, Adjust HSM Settings
 8. Modefix Setup and Usage
 9. Talker messages
10. Keypad Device Handler
11. User/Pin Profiles
12. Create Custom HSM Panic Rule
13. Debugging
14. Uninstalling
15. Get Help, report an issue, or contact information
16. Known Issues

1. Purpose

Nyckepharpa is a user created Hubitat Home Security Monitor (HSM) extension, providing features not available in HSM. Additionally, it simplifies setting up security related messaging.

🔼 Back to top

2. Features

All features are optional, you may use whatever app features you choose. For Example: Forced Arming only. Keypads not required.

  • HSM arming when a contact is open, with easy user control
    Why is this needed? HSM does not arm the system when a contact is open. Examples:

    It's 1AM, you want to arm the system for night, but a contact is broken.

    You are away from home, forgot to arm the system, and when you try, oops the back door is open.

  • Adjusts Hubitat's mode when HSM's arm state changes. (HSM adjusts HSM's arm state when the mode changes)

  • Provides an easy to use security related message control center with output to TTS, Speakers, and Notification devices such as: Hubitat PhoneApp and Pushover

  • Keypads: Centralite V2 and V3, Iris V2, and UEI(beta) devices may use a ported version of Mitch Pond's Keypad DH, Centralitex Keypad making he keypad function as it did in SmartThings with the SHM Delay App, with an easy to use Pin maintenance module with available Panic pins, burnable pins aka maximum use count, restricted date and time, and restricted keypad devices.

  • Keypad Panic Alerts: When the keypad's Panic key is pressed, or a Panic Pin is entered, using the Centralitex Keypad driver, a properly configured active HSM Custom Panic rule, and the Nyckelharpa app when Panic Pins are used:
    The system immediately executes the custom HSM rule's alert functions

🔼 Back to top

3. Support this project

This app is free. However, if you like it, derived benefit from it, and want to express your support, donations are appreciated.

🔼 Back to top

4. Installation

There are four modules and an optional Keypad Device Handler (DH) associated with this app

Module Name Function Required
Nyckelharpa Parent module. Controls HSM forced arming from a keypad, and User pin verification Yes
Nyckelharpa Modefix Adjusts HSM mode when HSM State changes, and forced arming from a non keypd source Yes
Nyckelharpa Talker Creates security related output to TTS, speakers, and Notification devices such as: Hubitat Phoneapp and Pushover Optional
Nyckelharpa User Maintains User pin codes when using the app's Centralite Keypad DH Optional
Centralite Keypad Keypad device handler for models: Centralite V2 and V3, Iris V2, and UEI(beta). Created and converted to HE by Mitch Pond Optional

  • let's begin by installing the Nyckelharpa parent module into Hubitat (HE) from this Github repository.

  • OAuth is not required and should be skipped.

  • Save the the Nyckeharpa module

  • Using Install's Import button: each module's Github raw address is availabe at the beginning of the module.

  • Then install Modefix, Talker, and User, ignore OAuth, and do not add these modules as User Apps.

  • In Apps: click the "Add User App" button, select the Nycklharpa, click Done

  • Should you be using the user Centralite Keypad driver follow these directions

  • Next step: Quick Setup Guide

🔼 Back to top

5. Quick Setup Guide

Detailed instuctions for each step follow the Quick Setup Guide. Begin by clicking on APPs in the HE menu, then click on Nyckelharpa

  1. Setup Global Settings, then click Next, then Done.

  2. Setup Forced Arming, Adjust HSM's settings

  3. Create the Required Modefix profile

  4. Optionally create a Talker profile

  5. Optionally set a one or more existing keypad devices to use the user provided Centralite Driver, then add one or more User pin profiles

  6. Optionally enable HSM Panic response by creating a Custom HSM Panic Rule

🔼 Back to top

6. Global Settings. Includes preparation information needed for Forced HSM Arming.

Global Settings is reached by: clicking Apps in the menu, then click the Nyckelharpa app, scroll down to Global Settings, then click "click to show"

  1. Select any keypad devices using the Nyckelharpa provided Centralite Keypad device driver
  • When devices are selected, default options for valid and invalid pin message routing are shown
  1. Prepare for Forced Arming: For each armState select real contact sensor devices that will allow HSM arming when the device is Open.
  • _When Global Settings is saved, each selectd contact generates a child Virtual Contact Sensor named NCKL-contact-sensor-name that must be used to Adjust HSM Settings for Forced HSM Arming
  • Specify optional destinations for "Arming canceled contact open" and "Arming forced messages: Push, SMS, Talk. Optional, but must be set to output these messages
  1. Select any contact to be monitored for Open / Close Talker messages only, that are not used with Forced HSM Arming

  2. Select any alarms and beeps as required

  3. Set the Virtual Child Device prefix, Default NCKL. Once set, it displays but cannot be changed.

  4. Set any Hubitat PhoneApp and Pushover messaging devices

  5. When finished, click Next, then click Done

🔼 Back to top

7. Forced Arming, Adjust HSM Settings.

Forced Arming is a two step process: An standard initial HSM arming that fails normally, followed by a second arming within 15 seconds that forces HSM to arm. It works from any arming source, including: keypads, locks, dashboards, and the HSM app

  1. Required Basic Setup:
  • Follow instrucions in Section 6 above, generating the NCKL-child-contact-sensors
  1. Setup HSM's devices for Forced Arming:
  • In Intrusion-Away, Intrusion-Home, and Intrusion-Night, "Contact Sensors": replace the real contact-sensor-name(s) with the virtual NCKL-contact-sensor-name(s)
  • In "Configure/Arming/Disarming/Cancel Options", "Delay only for selected doors": replace the real contact-sensor-name(s) with the virtual NCKL-contact-sensor-name(s)
  1. How to Force Arm, a two step process: Arming that fails normally, then Arming again within 15 seconds
  • Arm system as you would normally. When there is an open contact sensor monitored by Nyckelharpa, the system will not arm as is normal for HSM
  • At the initial arm fail: any defined keypads beep twice, Talker issues an alert message including the open sensor(s) and the 15 second forced rearm time
  • Arming the system again, after a minimum of 3 seconds, to a maximum of 15 seconds from the initial arming failure, forces the HSM system to Arm

🔼 Back to top

8. Modefix setup and usage

Modefix processes HSM armState changes, and optionally sets the Hubitat HSM mode. It must be created even when the optional mode change data is empty.

(Optional) For each armState set:

  • all valid modes for the armState
  • the default mode for the armState

Caution: improper armState/mode choices, creates havoc with the system.

🔼 Back to top

9. Talker messages

Table with Reason Issued and Message Issued.

  • Pin messages, arming canceled, and arming forced, do not allow for text adjustment.
Reason Issued Default Message Destinations Issueing Module
Contact Sensor Opens, arm state disarmed %device is now open TTS, Speaker Nyckelharpa
Contact Sensor Closes, arm state disarmed %device is now closed TTS, Speaker Nyckelharpa
Exit Delay Alarm system is arming in %nn seconds. Please exit the facility TTS, Speaker Nyckelharpa Modefix
Entry Delay Please enter your pin on the keypad TTS, Speaker Nyckelharpa
System Armed Alarm System is now armed in %hsmStatus Mode TTS, Speaker Nyckelharpa Modefix
System Disarmed System Disarmed TTS, Speaker Nyckelharpa Modefix
Valid Pin Entered %keypad.displayname set HSM state to %armState with pin for %userName User Defined in global Settings Nyckelharpa
Bad Pin Entered %keypad.displayname Invalid pin entered: %pinCode User Defined in global Settings Nyckelharpa
Arming Canceled Open Contact Arming Canceled %contact name(s) is open. Rearming within 15 seconds will force arming User Defined in global Settings Nyckelharpa
Arming Forced Open Contact Arming Forced %contact name(s) is open. User Defined in global Settings Nyckelharpa
Intrusion Message Defined in HSM User Defined HSM HSM
Panic Message Defined in HSM Custom Rule User Defined Custom HSM Rule (see Section 12) HSM

🔼 Back to top

10. Keypad Device Handler

The app's Keypad Device Handler was created by Mitch Pond on SmartThings where it is still used by a few Smartapps including SHM Delay. With Mitch's assistance and Zigbee skills it was ported to HE, then I added the Alarm capability that sounds a fast high pitch tone until set off on the Iris V2, and beeps for 255 seconds on the Centralite.

This DH may be used with the Centralite V2, Centralite V3, Iris V2, and UEI(beta) keypads

  1. After installing the keypad DH, edit keypad devices changing Type to Centralitex Keypad, Save Device

  2. Remove keypad from HSM, Add keypad to Nyckelharpa Global Settings

  3. Create User pin profiles

  4. Create HSM Custom Panic Rule

🔼 Back to top

11. User pin Profiles

When using the app's keypad Device Handler

  • For each valid user pin, create a User pin profile

  • Pin codes may be restricted by date/time, use count (burnable pins), and keypad device

  • To use the Iris V2's instant arming, no pin required, create a User profile with pin code 0000. It is not accepted for OFF

  • You may define "Panic Pins" designed for use on keypads without a Panic key, but may be used on any keypad

🔼 Back to top

12. Create Custom HSM Panic Rule

A custom HSM Rule is required to force an HSM response to a Panic key press, or Panic pin entry, enabling an instant Panic response even when the system is disarmed

  1. Click on Apps-->then click Hubitat Safety Monitor

  2. Click on Custom

  3. Click Create New Monitoring Rule --> Name this Custom Monitoring Rule-- enter Panic -->

  4. Rule settings What kind of device do you want to use: select Contact Sensor
    Select Contact Sensors: check the Keypad Devices using user provided Centralitex Keypad Driver, click Update
    What do you want to monitor?: Set Sensor Opens on/true
    Set Alerts for Text, Audio, Siren and Lights
    Click the "Arm This Rule" button
    Click Done

  5. Do a Panic test: Press the Iris keypad's Panic button, on Centralite V3 simultaneously press both "Police Icon" buttons, or enter a Panic pin number on Centralite / UEI, or on Iris: enter Panic Pin then Off (Partial and On work but not recommended)

  6. The Panic Alert may be stopped by entering a valid user pin on Centralite / UEI, or a valid pin and OFF on an Iris; or the "Cancel Alerts" button from HE App HSM options

🔼 Back to top

13. Debugging

  1. No entry delay tones on keypad
    Keypad may be selected as an Optional Alarm device. Remove it as an Alarm device

  2. No exit delay tones
    Create and save a Modefix profile

  3. Forced arming does not occur
    A user reported the Snapshot app somehow interfered with Nyclelharpa's forced arming, and removing or disabling Snapshot fixed the issue. This does not make sense to me, merely reporting what I was told by the user.

🔼 Back to top

14. Uninstalling

  1. If using forced arming, change HSM settings NCKL-child devices to real devices
  2. If using Panic Key or Panic pins, remove custom Panic rule from HSM
  3. it is now safe to remove Nyckelharpa, child devices are deleted during removal process

🔼 Back to top

15. Get Help, report an issue, and contact information

🔼 Back to top

16. Known Issues

  • Messages need individual custom destination settings

🔼 Back to top

You can’t perform that action at this time.