How do you add user codes to Kwikset 914 via zigbee2mqtt?

@smenzer yeah I’d open up a GitHub issue indicating that there is missing pincode_lock support for that model of lock. I might be able to provide you with a custom converter for testing and help get that updated.

thanks @timnolte! I’ve created a github issue as you suggested. happy to help test!

:+1:t3: I’ll see what I can do, and keep tabs on that Issue.

@smenzer can you DM me a screenshot of your About tab in Z2M?

Just yesterday I installed the same lock and had the same question. I’m happy to help with any testing needed as well.

FYI, for anyone else looking for the pincode Z2M support I have opened up a PR with the code fixes for Z2M. There are challenges with how the functionality is exposed to Home Assistant directly. You can see the larger impacts of this for ZigBee Smart Locks in general here:

If you need the support immediately before the next release of Z2M feel from to DM me and I can provide you a custom converter to add the support until the changes are in the official release.

How about the Kwikset 620 which is the newer replacement model that has the S2 chip? I am not seeing the PIN option there either.

@zMl2 send me a DM with as much details on the lock and what you have in Z2M and I can try to help out.

Any chance we get this added to the Kwikset 910 as well?

1 Like

@smenzer did you ever get this working?

I have the same lock and am using the latest z2m. I see the pincode and user features in the exposes tab and related messages triggered in z2m logs when I edit those fields but the user attributes on the state tab never change and the codes don’t work on the lock. I also don’t see these settings exposed in HA. Only lock/unlock control (which works).

Note, my lock is identified by z2m as weiser smartcode 10.

Model 9GED18000-009

Never mind - solved it! The Z2M UI works; I had an insufficient number of digits in my PIN code, and it was failing silently (lock does not send a response if the request was invalid).

I also successfully created a script in HA that sets or disables a particular PIN. It would be nice to do it via card, but that’s a project for another day.

@wildhass yea…it’s not a great UX currently…i wish there was a built-in UI to manage the different user codes and their PINs. right now for any permanent users/pins I store them in a password manager. For temporary ones, I just have to use a new user and then remember to disable it later.

Could port this ZHA script to Z2M: [Z-Wave][Zigbee] Set temporary guest code for door lock

I agree with this!!! @timnolte I can’t seem to get my 910 to work. It shows User, User Type, User Enabled, and Pin Code in the Pin Code section, but when I click apply in the UI nothing happens. Am I doing something wrong or does the 910 not work?

If you can DM me with details about the 910 and all of the details for it that show up in Z2M and I can see if I can add support for it. I’ll probably send you a custom converter for testing prior to opening up a PR for to be added officially.

At least you guys got your lock to pair! Using a Sonoff USB Zigbee dongle with a Weiser Smartcode 10, can’t even get it connected!

@timnolte would it be possible for you to revise the devices.js description for the Kwikset 99140-002 to the below? It does support remote LOCK PIN settings I was able to confirm using the device and a custom converter. Thank you!

{
zigbeeModel: [‘SMARTCODE_DEADBOLT_10_L’],
model: ‘99140-002’,
vendor: ‘Kwikset’,
description: ‘SmartCode traditional electronic deadbolt’,
fromZigbee: [fromZigbee_1.default.lock, fromZigbee_1.default.lock_operation_event, fromZigbee_1.default.battery, fromZigbee_1.default.lock_programming_event, fromZigbee_1.default.lock_pin_code_r
toZigbee: [toZigbee_1.default.lock, toZigbee_1.default.pincode_lock],
meta: { pinCodeCount: 30 },
configure: async (device, coordinatorEndpoint) => {
const endpoint = device.getEndpoint(2);
await reporting.bind(endpoint, coordinatorEndpoint, [‘closuresDoorLock’, ‘genPowerCfg’]);
await reporting.lockState(endpoint);
await reporting.batteryPercentageRemaining(endpoint);
},
exposes: [e.lock(), e.battery(), e.pincode(), e.lock_action(), e.lock_action_source_name(), e.lock_action_user()],
},

1 Like

I’ll take a look tonight and see about getting a PR opened up for it.

@EffortlessHome I’ve opened up a PR to add the pin code support.

2 Likes

I’d like to give it another try at getting the 99100-006 Kwikset 910 to work with pin codes. I have it installed and working in Z2M, but I can’t set the pin codes. What do you need from me?