
The buttons and levers controlling Hubitat Elevation's Home Security Monitor's strings.
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. Centralitex Keypad Device Handler
11. User/Pin Profiles with Centralitex driver
12. Lock Code Manager Pins with Centralitex driver
13. Create Custom HSM Panic Rule
14. Debugging
15. Arming From Dashboard
16. Uninstalling
17. Get Help, report an issue, or contact information
18. Known Issues
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.
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 arming alerts are implemented, and 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.
Note: the app was created prior to HSM allowing arming with an open contact. Nyckelharpa arming logic will fail when this HSM option is used. -
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: App works with Hubitat keypad drivers, or the user provided Centalitex keypad driver. However do not mix user and system keypad drivers
-
Using Centralitex Keypad driver:
Supports Centralite/Xfinity 3400, Centalite 3400-G, Iris V2 and V3, and UEI devices using a ported version of Mitch Pond's SmartThings Keypad DH, making he keypad function as it did in SmartThings with the SHM Delay App*
Pins:
Using Nyckelharpa User pin module: Panic pins, burnable pins aka maximum use count, restricted date and time, and restricted keypad devices
Using Hubitat's Lock Code Manager App Pins: Panic pin by entering case independent text 'panic' any place in field 'Name of this user'
Keys make sounds when tapped
forced arming supported, "Arming forced" message supported -
Using Hubitat Keypad drivers:
Supports Centralite/Xfinity 3400, Centalite 3400-G, Iris V2 and V3 devices.
Pins: Only Lock Code Manager pins are supported when using this driver.
Generally no sound when keys are tapped
Forced Arming supported, cannot create "Arming Forced" notification message
- Keypad Panic Alerts:
-
Using Centralitex Keypad driver: When the keypad's Panic key is pressed, or a Panic Pin is entered, and there a properly configured active HSM Custom Panic rule
The system immediately executes the custom HSM rule's alert functions in all arming states, including when HSM is disarmed -
Using Hubitat Keypad drivers: When the keypad's Panic key is pressed, and there a properly configured active HSM Custom Panic rule
The system immediately executes the custom HSM rule's alert functions in all arming states, including when HSM is disarmed. Without Nyckelharpa and it's custom panic rule, HSM does not respond to panic when it is disarmed.
- Door Chime Function: Use with Keypads and other devices supporting the "beep" command. Optionally issues beep command when system is Disarmed and selected contact sensor opens. Also can optionally issue beep commands when system is armed and Entry Delay begins. Note: the created sound varies by device type, and when using Iris V2/V3 by firmware version.
This app is free. However, if you like it, derived benefit from it, and want to express your support, donations are appreciated.
- Paypal: https://www.paypal.me/arnbme
There are four modules and an optional Keypad Device Handler (DH) associated with this app. Hubitat's Lock Code Manager app may be required. You may also install using the Hubitat Package Manager
| 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/Xfinity 3400, Centralite 3400-G, Iris V2, Iris V3, and UEI. Created and converted to HE by Mitch Pond | Optional |
| Hubitat's Lock Code Manager app | Required when using Hubitat keypad drivers, or using Centralitex keypad driver with Lock Code Manager pins | Optional |
-
https://docs.hubitat.com/index.php?title=How_to_Install_Custom_Apps
-
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
https://docs.hubitat.com/index.php?title=How_to_Install_Custom_Drivers -
Next step: 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
-
Setup Global Settings, then click Next, then Done.
-
Create the Required Modefix profile
-
Optionally create a Talker profile
-
Optionally set a one or more existing keypad devices to use the user provided Centralite Driver, then add one or more User pin profiles
-
Optionally enable HSM Panic response by creating a Custom HSM Panic Rule
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"
- Select all the keypads used for arming HSM
- When devices are selected, default options for valid and invalid pin message routing are shown
- 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
-
Select any contact to be monitored for Open / Close Talker messages only, that are not used with Forced HSM Arming
-
Select any alarms and beeps as required
-
Set the Virtual Child Device prefix, Default NCKL. Once set, it displays but cannot be changed.
-
Set any Hubitat PhoneApp and Pushover messaging devices
-
When finished, click Next, then click Done
Forced Arming is a two step process: An standard initial HSM arming that fails normally, followed by a second arming within globally defined arming window seconds (default 15) that forces HSM to arm. It works from any arming source, including: keypads, locks, dashboards, and the HSM app
- Required Basic Setup:
- Follow instructions in Section 6 above, generating the NCKL-child-contact-sensors
- Important! When arming from the Dashboard HSM Status, a keypad using the HE System Keypad drivers, or anything other than a keypad using the Centralite keypad driver: an alert must be created in HSM's Configure Arming/Disarming/Cancel --> Configure Alerts for Arming Failures (contacts open) section, or HSM immediately arms ignoring all open contacts.
- Suggested solution:
Create a dummy Virtual Switch
Edit dummy Virtual device's settings, disable debug and text logging
In HSM's Configure Arming/Disarming/Cancel --> Configure Alerts --> Light Alerts: turn on the "dummy Virtual Switch".
- 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)
- 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:
Talker issues an alert message including the open sensor(s) and the 15 second forced rearm time
Keypads using Centalitex driver:
Centralite/Xfinity-reject tone, delay, two beeps
Iris V2-reject tone, delay, two beeps with old beep or three or four chirps new beep
Iris V3-3 beeps old beep then the reject tone, unable to test new beep my device has old firmware - 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. When using the Centralitex Keypad driver an "Arming Forced" message is issued.
- Notice: Force Arming fails when attempting to arm using the Dashboard Mode.
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.
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 | Disarm system, or police will arrive shortly | 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 Centralitex driver only |
%keypad.displayname set HSM state to %armState with pin for %userName | User Defined in global Settings | Nyckelharpa |
| Bad Pin Entered Centralitex driver only |
%keypad.displayname Invalid pin entered: %pinCode | User Defined in global Settings | Nyckelharpa |
| Arming Canceled Open Contact (1) | Arming Canceled %contact name(s) is open. Rearming within 15 seconds will force arming | User Defined in global Settings | Nyckelharpa |
| Arming Forced Open Contact Centralitex driver only |
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 |
- In order to get the Nyckelharpa contacts open message and forced arming when using anything other the the Centralite Keypad driver: you must create an alert in HSM's Configure Arming/Disarming/Cancel --> Configure Alerts for Arming Failures. Please read Section 7, paragraph 2.
The Centalitex 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, and the compatabilitty with the Hubitat keypad device drivers, HSM and Lock Code Manager.
This DH may be used with the Centralite/Xfinity 3400, Centralite 3400-G, Iris V2, Iris V3 and UEI keypads
-
After installing the keypad DH, edit keypad devices changing Type to Centralitex Keypad, Save Device
-
Remove keypads using Centralitex driver from HSM. In HSM section Configure Arming/Disarming/Cancel Options --> Use keypad(s) to arm/disarm: optionally remove keypads using the Centralitex driver.
-
Add keypad to Nyckelharpa Global Settings
-
When using Nyckelharpa pins: Create User pin profiles. When using an Iris V3 User pin code 0000 is required and used for instant arming, but will not disarm. This keypad does not send a pin, even if entered, when arming.
-
When using Lock Code Manager Pins: in this device's setting set "Use Lock Code Manager Pins" on, save settings
-
Create HSM Custom Panic Rule
-
When using an Iris V2/V3 keypad set if Partial key creates Home (default) or Night arming mode
When using the app's keypad Device Handler and User Pin Module
-
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
-
The Iris V3 requires a User profile with pin code 0000, or it will not arm. 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
When using the app's keypad Device Handler
-
In the keypad Preferences set "Use Lock Manager Pins" to On/True. If you want to be be able to see the pins for the device set "Enable Lock Manager Code encryption" to Off; tap/click button "Save Preferences"
-
Pins may be maintained using the Lock Code Manager app, or device's pin manangement buttons
-
A Panic pin is created by by placing case independent text "panic" as part or all of the pin's "Name", allowing a panic response when using a keypad without a Panic key.
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
-
Click on Apps-->then click Hubitat Safety Monitor
-
Click on Custom
-
Click Create New Monitoring Rule --> Name this Custom Monitoring Rule-- enter Panic -->
-
Rule settings What kind of device do you want to use: select Contact Sensor
Select Contact Sensors: check the Keypad Devices using Centralitex Keypad Driver, and %prfx%-Panic Id device when using HE drivers, click Update
What do you want to monitor?: Set Sensor Opens on/true
For how long? (minutes): must be empty or 0
Set Alerts for Text, Audio, Siren and Lights
Click the "Arm This Rule" button
Click Done -
Important: verify the Panic rule is "Armed" or it will not work
-
Do a Panic test: Press the Iris keypad's Panic button, on Centralite 3400-G simultaneously press both "Police Icon" buttons, or enter a Panic pin number on Centralite 3400 / UEI.
-
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
-
No entry delay tones on keypad
Keypad may be selected as an Optional Alarm device. Remove it as an Alarm device -
No exit delay tones
Create and save a Modefix profile -
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.
-
Always arm and disarm using HSM Status. Forced arming is supported and alert messages are created.
-
Mode will generally work, however when there is an alert, the mode remains in the entered mode, but the HSM Status does not change.
- If using forced arming, change HSM settings NCKL-child devices to real devices
- If using Panic Key or Panic pins, remove custom Panic rule from HSM
- it is now safe to remove Nyckelharpa, child devices are deleted during removal process
- Use the HE Community's Nyckelharpa forum to request assistance, or to report an issue. Direct private messages to user @arnb
-
Messages need individual custom destination settings
-
SMS was disabled by Hubitat, but is still defined as a destination. Do not use SMS
-
Iris V3 Keypad Issue: Lights remain on when device is sitting upright on a table or flat surface.
Cause: Keypad's motion or proximity sensor is activated.
Solution: Move keypad to edge of table, lay it flat on table or surface, or mount it on a wall. -
Do not intermix Centralitex keypad drivers with system keypad drivers. Use one or the other