Schlage Connect Locks - HA Integration Needs Attention

It’s in the packages folder of my git hub. It’s just named with a .txt vs .yaml

Sure. Conveniently they are the first two cards on that page, so here they are.

  • title: Home
    id: home
    cards:
    • type: entities
      title: Front Door Info
      entities:

      • lock.lock_front_door_lock
      • sensor.front_door_report
      • sensor.frontdoor_code
    • type: entities
      title: Front Door Config Options
      entities:

      • input_select.lock_zwave_option_3_front
      • input_select.lock_zwave_option_4_front
      • input_select.lock_zwave_option_5_front
      • input_select.lock_zwave_option_7_front
      • input_select.lock_zwave_option_8_front
      • input_select.lock_zwave_option_9_front
      • input_select.lock_zwave_option_10_front
      • input_select.lock_zwave_option_11_front
      • input_select.lock_zwave_option_15_front
      • input_select.lock_zwave_option_16_front

wow… not sure how i missed that. I saw “door_locks.yaml” and completely didn’t see the txt files below. I was having problems with zigbee stuff and had a long night I guess. Thanks for the quick reply!

1 Like

I am SO happy to help. It’s saved as a txt file so it (I’m assuming) doesn’t interfere with his config. Thanks again @ptdalen

One Lock: https://github.com/ptdalen/home-assistant/blob/master/packages/lock_package_for_one_deadbolt.txt

Two Locks: https://github.com/ptdalen/home-assistant/blob/master/packages/lock_package_for_two_deadbolts.txt

*EDIT I was too slow :cry:

1 Like

Do you have a git hub where I can look at the yaml for these directly. Also could you possibly format your post using the formatting block.

I will say I’ve really not gotten into the lovelace yet, so thanks for taking this part on. Once I get around to it, I’ll post the lovelace in my repository as well.

I’ve kinda been working on getting my stuff up on github, but haven’t really tried, so don’t have that going yet. I thought I did use the formatting block, not sure why my dashes turned into bullet points…
I’m at work right now and won’t have access to my configs until tomorrow. I’ll try to repost then.

1 Like

Here’s a portion of my config. I’ll be adding to it as I sanitize everything.

1 Like

Btw, I split it up so I could see the config options and the info menu on my main Home page, while I have all of the granular code options on a separate page, as there are so many of them. Basically all I did was take what was a “group” in the old interface and made an Entity card of each “group” in lovelace. Just wanted to expound on what I did and why, once you get used to looking at the code and seeing what’s going on you should figure it out pretty easily.

I finally got around to getting the code set up on mu local lovelace. Added the custom slider card, etc. Only issue is that all 18 code cards slide as a single entity/card. I’m assuming that the goal was just to show one card at a time for each slot, and swipe through them? I’m just now getting into lovelace, so maybe I’m missing a setting that is not in your config? This happens in the browser and in the iphone app

I just added that like today or yesterday, so I’m still learning it too. I’ve gotten it to work with the code cards. You should check out this thread for more info. He links the swiper API reference that has all the available options.

I’ve been on lovelace for a little while now and have gotten used to how it works and the layout. If you still have a copy of my previous config before I implemented swiper it might make more sense. It was just a horizontal-stack with all the entity cards in it. So there was just one huge page of cards. Wasn’t very user-friendly.
I may have updated it again with options I wanted without uploading it to git. Let me take a look real quick.

1 Like

is this feature in your locks package file or somewhere else in your HA config files?

Notification when a code is used including who opened what door with timestamp, used names already set up with UI.

Same question for a notification if the lock jammed or failed. I thought I remember reading a post where you talked about that but didn’t see it in your door locks package.

Taking a break on trouble shooting the clear user code for now to waste time on other functionality while my hangover mellows out :man_facepalming:

Ahh, good call. I did end up taking them out of the package, I cannot remember exactly why. I beleive it was because I modififed the alerts a bit to fit my configuration, that might not be “universal”

- alias: Notify who unlocked door with timestamp
  trigger:
  - platform: template
    value_template: "{{ states('sensor.front_door_report').lower().startswith('keypad unlock') }}"
  - platform: template
    value_template: "{{ states('sensor.back_door_report').lower().startswith('keypad unlock') }}"
  condition:
  - condition: numeric_state
    entity_id: sensor.ha_runtime_in_minutes
    above: 1
  - condition: state
    entity_id: binary_sensor.people_home
    state: 'off'
  action:
  - service: input_boolean.turn_on
    entity_id: input_boolean.guests_present
  - delay:
      seconds: 5
  - service: notify.pushbullet_notifications
    data_template:
      target:
      - !secret pauls_secret_email
      - !secret tracys_secret_email
      title: >
        {% set mapper = { 'sensor.front_door_report' : 'sensor.frontdoor_code',
                          'sensor.back_door_report' : 'sensor.backdoor_code' } %}
        {{ trigger.to_state.attributes.friendly_name }} unlocked by {{ states(mapper[trigger.entity_id]) }}
      message: "At {{ as_timestamp (now()) | timestamp_custom('%I:%M %p') }} on {{ now().strftime('%d %b %Y') }}"
  - service: input_text.set_value
    data_template:
      entity_id: input_text.last_person_to_unlock
      value: >
        {% set mapper = { 'sensor.front_door_report' : 'sensor.frontdoor_code',
                          'sensor.back_door_report' : 'sensor.backdoor_code' } %}
        {{ states(mapper[trigger.entity_id]) }}
- alias: Notify who locked door with timestamp
  trigger:
  - platform: template
    value_template: "{{ states('sensor.front_door_report').lower().startswith('keypad lock') }}"
  - platform: template
    value_template: "{{ states('sensor.back_door_report').lower().startswith('keypad lock') }}"
  condition:
  - condition: numeric_state
    entity_id: sensor.ha_runtime_in_minutes
    above: 1
  - condition: state
    entity_id: input_boolean.guests_present
    state: 'on'
  - condition: state
    entity_id: group.primary_presence
    state: 'off'
  action:
  - service: notify.pushbullet_notifications
    data_template:
      target:
      - !secret pauls_secret_email
      - !secret tracys_secret_email
      title: >
        {{ trigger.to_state.attributes.friendly_name }} locked by {{ states('input_text.last_person_to_unlock') }}
      message: "At {{ as_timestamp (now()) | timestamp_custom('%I:%M %p') }} on {{ now().strftime('%d %b %Y') }}" 
  - service: input_boolean.turn_off
    entity_id: input_boolean.guests_present

Couple of things, I dont monitor my garage door for these alerts, I dont send alerts when anyone is home. The Who locked a door, is really a “guess” since the person leaving is really just hitting the schlage button, but 99% of the time the person locking the door when I’m not home is the person who unlocked the door. I have a cleaner who comes every few weeks, this is pretty much for that. I do have a couple codes for outside family that “could be” used when I’m away, but almost never would be.

you guys here about the new Zwave Plus version? BE469ZP

Should have much better battery life and range… loss exactly the same, hopefully wont be too hard to get into HASS.

I see it on the Schlage website but haven’t located it for sale anywhere. I do have connectivity problems with my lock where I have to power cycle it to get the Z-wave working. I will probably upgrade once it is available as it is the only non Z-Wave plus device in my system.

Lowes and Home Depot have it in stock.

1 Like

my main question is whether it will work and be identified with HA yet since the are so new…

Yes. Recorder component thanks for the correction. I feel like that component should be mandatory. Really saves a lot of mishaps.

Thanks for your plugin, mostly works well for me. One issue I’m still having is that my codes seem to occasionally still wipe themselves out and all the UI shows ‘unknown’ and ‘invalid date’. I’ve got the ‘history’ and ‘recorder’ set in my configuration.yaml file.

It seems to work for a while then it loses the settings. Are there certain settings you have for either of these plugins to prevent any loss? I’ve got them all as defaults for now. Don’t know for certain but I feel they are lost after a restart of a week or so. Not sure if due to default purge setting on recorder.

What database are you using for your recorder?
My codes and dates/times stay in the UI, but I’m using MySQL/MariaDB for the database instead of the default SQLite file storage.

I’m just using the default storage I guess then. Figured I shouldn’t go installing MySQL to add more overhead to the Pi with the low system resources it does have. Is it not that big an impact?

i have a docker machine i use to host random things like MySQL external of my pi