[Release] Nyckelharpa, an HSM Extension

This is caused by having the keypad(s) defined in HSM. If they are defined in HSM, they must be removed.

I undefined the keypads in HSM and the error is gone but I get the same results from Nyckelharpa.

I'm asking you do a few thing that may seem redundant, but I am running out of options.

  • In Configure Armed-Away Intrusion Sensors do the NCKL Contacts in the HSM list minus the Panic Contact, match the contacts in the global Settings for Away? If not fix it to match and try again.

  • click tap "Done with Armed Away", click tap "Done with HSM"

  • In Apps click/tap Nyckelharpa, turn on logging
    in global settings click / tap "Next", click / tap Done

  • in apps click/tap Nyckelharpa Modefix, turn on logging
    click / tap "Next", click / tap Done*

  • start logging

  • trying arming from the keypad
    open a monitored contact
    arm for away (this should fail)
    count to 4 then quickly arm for away again

  • assuming it fails I interested int the following log messages
    From Nyckelharpa "checkOpenContacts entered $contactList $notifyOptions $keypad lastDoorsDtim: $lastDoorsDtim"
    From Nyckelharpa Modefix "ModeFix alarmStatusHandler entered, HSM state: ${theAlarm}, lastAlarm: ${lastAlarm} Mode: ${theMode} lastDoorsDtim $lastDoorsDtim"

Should this info not help resolve the issue, next step is to send me a Private Message with your telephone number and a good time to call.

One other thought that may be easier to try.

Reduce the number of sensors specified in both Nyckelharpa away and HSM away down to two (matching) Nyckelharpa uses real sensor, HSM uses the NCKL-child matching sensor.

Close both real sensors specified above, then open one of the sensors. Try it.

I removed all but two contact sensors and it still didn't work so I started digging through the log file and it looks like the problem was being caused by another user app (Snapshot) I had installed, I removed the Snapshot app and Nyckelharpa is now working.

I haven't confirmed this yet but I'm thinking I need to setup the Snapshot app to use the virtual contact sensors created by Nyckelharpa.

1 Like

First, I am really pleased you were able to determine the cause, I was completely out of options and had no idea why it failed.

After a quick look at Snapshot, I have no idea how it could interfere with Nyckelharpa and or HSM.

Having never used Snapshot, it may be best to ask the app's author how to proceed, and to identify how the interference is occurring.

Just wondering, what did you see in the log file that made you suspect Snapshot?

I too would love to see the logs that brought you to this conclusion. Snapshot can't control anything, it just displays the status.


1 Like

Apparently the log files get purged on a daily basis so I’ll have to recreate this so I can capture this again. When I get some time I’ll do this and send them to you in PM.



@arnb App installed and working. But I can't get the panic to work.

I have two CentraLite 3400 keypads. Both are now operating with the Centralitex device. Per the instructions I removed the keypads from HSM, and are in the Nyck global variables. When I type in my panic code of 0911 I get a Pushover notification, but no siren going off. If I test it normally, arming it and pulling apart a contact sensor, the siren does go off. I set 2 users, one for me with a regular code, and one user for the panic code. This is what it says when I saved it:

It still says SmartThings, so maybe it isn't working right?

Edit: Also, there is no ability to verify and save or go back. Maybe these are remnants from the ST app?

When the HSM system is disarmed, Nyckelharpa attempts arming HSM in Night mode, then opens the NCKL-Panic-Contact. When the HSM system is armed the intrusion should be almost instant.

I suspect that your HSM Night arming has an exit delay. This delays the arming by more than 10 seconds and the logic then gives up attempting to create the intrusion. Try removing any Night Exit delay, then retry.

I need to change the following:

  • Allow a settings choice of panic arming with Night or Home
  • Expand documentation on how Panic works when the HSM system is disarmed, and inform that the selected mode must not use an exit delay.

Thank you for finding that, it will be fixed. It's working correctly.

The second page is the verify page. Tapping the triangle icon on the bottom left of the screen, bring it back to the entry screen. Have to change "Save" to "Done" leftover from SmartThings.

Regarding triggering Panic when the system is disarmed.
The best way may be to set a custom rule for the NCKL-Panic-Contact when it opens, triggering the various messages, lights and sirens. This way there is never a delay.

This will a documentation and probably a code adjustment.

I am wondering if there is an issue with the Centralitex device handler. It will not let me add or delete users/pin codes. If I change it back to the HE CentraLite keypad type, it does work, I can add a new user.

I removed the arm night delay, still no siren. The keypads do change from disarm to arm night upon 0911 code entry, and I get a Pushover notification, but no siren.

The app uses it's own Pin Code module that allows for multiple user pins, Nyckelharpa does not use or maintain the HE pin codes.

Intrusion alert rules are controlled by HSM. What siren are you referring to? The Centralite V2/V3 and UEI keypad devices do not have a built in hardware siren, however the provided keypad driver beeps 255 times when the siren command is issued for these devices. Iris V2 has a 60 DB siren, Iris V3 85DB siren.

I uninstalled Nyckelharpa and started over. Now it won't recognize my regular pin to arm or disarm the system.

I have the CentraLite v2, using the Nyck Centralitex DH.

@arnb, when I used the original HE CentraLite DH, I can go to the individual device page and arm and disarm from there, not just the HSM app. With the Centralitex, I cannot do that, on the device page. Is that by design, so that it can only be done with the Nyck app?

The user provided device handler does not support the HE commands associated with Capabity Keypad.

Create Nyckelharpa User pins

Created this user. Pressed the armed stay and then 1231 on my keypad. Keypad lights up but stays green and doesn't arm. Keypad is not in HSM, just in Nyckelharpa. It was working for me last night but I cannot get it set up again today.

Check logs for any errors.
Turn on valid and invalid pin logging and see what you get

[app:894] ( 2019-05-18 04:49:24.874 pm
errorjava.lang.NullPointerException: Cannot invoke method close() on null object on line 1812 (keypadCodeHandler)

It appears to be missing the NCKL-Panic Contact device. Try saving the global Settings, then try again.