[OBSOLETE] Lock Manager

Hi All,

I was able to install the lock manager and set up a new code. However i used to be able to lock the door by just pressing the schlage button on the lock which no longer works now and the keypad used to beep which also no longer works. please help so i can get these functions back. Thank You

I was able to fix my issue but now came across another oneā€¦ the alarm does not work at all.

I have noticed mine doing the same thing since the 3rd of Jun.
On all my locks Schlage, and kwikset!

Thanks for this!

That doesnā€™t explain then why this app and setup does not work for me. It never completes the lock sweep and Iā€™m unable to lock or unlock the door.

Figured out the bug. My lock didnā€™t have Slot 1 or 2 code set and got stuck on reading slot 3+. I factory reset the lock and it was able to complete the sweep and now locks and unlocks the door properly.

So, I had some issues with this app and I had to delete it - Iā€™m sure it was something screwed up on the ST side.

I added the app back fine. When I go to add the zwave-lock.groovy device handler, IDE says ā€œ1 skipped due to errorsā€ and does not add it.

I should be adding that device handler for my Kwikset locks to get battery information, correct?

I just came to research this as well. Every 3600 seconds(60 mins):

The ā€œRECENTLYā€ log gets a:
ā€œLOCKEDā€ event set.
2019-06-20 4:39:19.638 AM MDT
10 hours ago
DEVICE lock locked Locked

Please help! This doesnā€™t do any good for tracking events of comings and goings if the RECENTLY log is just full of these event messages.

Thanks in advance!!!

Iā€™m using the Smart Event Logger app to log Lock and Unlock events to a Google Sheet. But itā€™s not recording the user code or user number that unlocks the doorā€¦ and thatā€™s what we really need to track. Any ideas?

Iā€™ve been using Lock Manager with a lot of success over the past couple years with a Schlage BE468CEN626 keypad lock. However, sometime in the past couple months, ā€œHello Home Settings->On Code Unlockā€ has stopped triggering the my ā€œHomeā€ routine that disables the alarm when the front door is unlocked. Similarly, ā€œOn Code Lockā€ no longer triggers the ā€œAwayā€ routine that arms the alarm.

All of this used to work great starting from when I first installed it over a year ago.

I completely uninstalled and reinstalled Lock Manager from the latest source, the problem persists. What changed? Did a SmartThings firmware update kill this feature? Any advice on how to fix or troubleshoot this?

With the latest release of the firmware 26.9 I am finding that I needed to redo many of the zwave devices, especially the locks. I spent a few hours getting rid of the ghost devices, (hub_disconnected) and error messages. I am having the reporting issue where the lock does not communicate back to the hub when someone uses a code to lock/unlock or if there is a manual lock/unlock. I think it comes down to the fact that the lock is not all the way 100% connected to the hub because of the additional security. https://support.smartthings.com/hc/en-us/articles/201032800-Schlage-Camelot-and-Century-Touchscreen-Deadbolts-BE469NX-
I will be trying this this evening or tomorrow. I really miss seeing the updates when I query the device. Anyone else having this issue? By the way I like the app! Thank you for pursuing thru it all. Are you seeing the light at the end of the tunnel ethayer?

In the SmartApp settings I am getting a ā€œSomethings Wrongā€ error on every click.

Same thing for me.

Just installed the 2.0 Beta from GitHub Repository. Some feedback:

I was unable to import the z-wave lock device handler from the repository using the GitHub import function. I was able to import the Schlage and Yale device handlers though. As a workaround, I created a new device handler and copy and pasted the code from your GitHub source code.

Also, Iā€™ve been unable to get push notifications to work for the device. I have smartthings classic app with all permissions for notifications set to ā€œAllowedā€, but couldnā€™t get any notification when users with push notifications turned on entered (I donā€™t have global push notifications on, only for select users). A small problem, to be sure, but still one feature I would like to see working. Naturally, the problem can very well be on my end.

Best.

From looking at the live log, it seems like it is related to the polling function of the device handler. If anyone knows what to change in order to stop writing the lock status to the ā€œrecentlyā€ list it would be appreciated!

def poll() {
log.trace "[DTH] Executing poll() for device ${device.displayName}"
def cmds = []
// Only check lock state if it changed recently or we haven't had an update in an hour
def latest = device.currentState("lock")?.date?.time
if (!latest || !secondsPast(latest, 6 * 60) || secondsPast(state.lastPoll, 55 * 60)) {
	cmds << secure(zwave.doorLockV1.doorLockOperationGet())
	state.lastPoll = now()
} else if (!state.lastbatt || now() - state.lastbatt > 53*60*60*1000) {
	cmds << secure(zwave.batteryV1.batteryGet())
	state.lastbatt = now()  //inside-214
}
if (state.assoc != zwaveHubNodeId && secondsPast(state.associationQuery, 19 * 60)) {
	cmds << zwave.associationV1.associationSet(groupingIdentifier:2, nodeId:zwaveHubNodeId).format()
	cmds << secure(zwave.associationV1.associationSet(groupingIdentifier:1, nodeId:zwaveHubNodeId))
	cmds << zwave.associationV1.associationGet(groupingIdentifier:2).format()
	cmds << "delay 6000"
	cmds << secure(zwave.associationV1.associationGet(groupingIdentifier:1))
	cmds << "delay 6000"
	state.associationQuery = now()
} else {
	// Only check lock state once per hour
	if (secondsPast(state.lastPoll, 55 * 60)) {
		cmds << secure(zwave.doorLockV1.doorLockOperationGet())
		state.lastPoll = now()
	} else if (!state.MSR) {
		cmds << zwave.manufacturerSpecificV1.manufacturerSpecificGet().format()
	} else if (!state.fw) {
		cmds << zwave.versionV1.versionGet().format()
	} else if (!device.currentValue("maxCodes")) {
		state.pollCode = 1
		cmds << secure(zwave.userCodeV1.usersNumberGet())
	} else if (state.pollCode && state.pollCode <= state.codes) {
		cmds << requestCode(state.pollCode)
	} else if (!state.lastbatt || now() - state.lastbatt > 53*60*60*1000) {
		cmds << secure(zwave.batteryV1.batteryGet())
	}
}

if (cmds) {
	log.debug "poll is sending ${cmds.inspect()}"
	cmds
} else {
	// workaround to keep polling from stopping due to lack of activity
	sendEvent(descriptionText: "skipping poll", isStateChange: true, displayed: false)
	null
}

}

Iā€™m a new user to ST and trying to get this set up. Iā€™m going through the guide and when trying to get the child depositories, they donā€™t show up as an option under update repo. The master is the only thing that shows as an option. An ideas on how to get the apps?

For some reason I can only see the user/code management part and canā€™t get back to the lock settings. Has anyone else run into this and how to switch views?
Also I canā€™t seem to add multiple people for codes. I add a user and codes then save. It then shows Xperson at the top. I then tried adding another and a different slot and the locks log shows the last entry being deleted. Any help would be appreciated.
Thanks

I decided to uninstall and reinstall and noticed the GitHub instructions say to select three child apps.
image

They arenā€™t showing up however. Is this what is causing all my problems? Is this not supported any longer?

Notifications were not working for me and I decided to reinstall this the other day (like seemingly many of usā€¦)

There are several problems in the current code and instructions.

  1. The Child Apps do not show up. I donā€™t think this is an issue, my install now works without the child apps.

  2. The Z-Wave Lock device handler doesnā€™t correctly install from Github.

  3. Even when the Z-Wave Lock handler is installed manually, notifications still do not work.

I got it running again following the model of this pull request, applied to the Z-Wave Lock handler:

Specifically:

Not sure if ethayer is still monitoring the Github, but itā€™s a pretty easy fixā€¦

1 Like

Too bad I did not see this earlierā€¦ would have saved me a bunch of timeā€¦ but I figured it out anywayā€¦ For the specifics, I believe the real fix is the addition of the ā€œ0x71: 2ā€ in the line :
def cmd = zwave.parse(description, [ 0x98: 1, 0x62: 1, 0x63: 1, 0x71: 2, 0x72: 2, 0x80: 1, 0x85: 2, 0x86: 1 ])

As it turns out, the zwave code 0x71 is used as an alert and has two versions (v1 and v2). However, with the latest firmware push, there is now an Notification Class that also uses code 0x71ā€¦ Since the version was not specified in the zwave.parse method, it automatically uses the new V3 Notification and the device handler does not have a handle for the notification classā€¦ so, forcing the code 0x71 to V2 solves this issueā€¦

The other items in the list are doing the same, forcing a code to a specific versionā€¦ (i.e. code 0x98 is forced to use V1 of the class, ectā€¦)

See https://graph.api.smartthings.com/ide/doc/zwave-utils.html for info on the codesā€¦

Just thought knowing the root cause might helpā€¦

-mike

2 Likes

@ethayer - Donā€™t suppose your awesome Lock Manager will work with the August Pro? I know it is Z-Wave compatible, just donā€™t know how much or what it looks like to SmartThings and your app.