Level door lock?

@brystmar Sorry, could you just confirm one thing that I think is clearly implied in your post, but about which I’m being dense / seeking concrete clarification? Am I correct in understanding that you did nothing to directly integrate the lock with HASS but instead created the virtual helpers, brought them into HomeKit (presumably using the HA HK integration), and then created automations in HK and HA, as detailed so well, to synchronize the two? Sorry for being so dense, and thanks again!

For my part, rather than carefully following the suggested steps that you and others in this thread detailed, I so far have added the lock to HA (I was watching a movie with my wife, glanced at HA as I am wont to do, and saw the ‘device discovered’ notification, so I went for it, and it was successfully added), but the results are not satisfactory - the state doesn’t accurately or consistently show in HA (it’s stuck on ‘locking’ for long periods of time until I manually cycle it, for instance). So, I think I’m going to remove it again and follow your approach once you confirm my understanding of it.

Thanks again!

That’s correct. Your lock can only be officially connected to one ecosystem: HomeKit, or HASS. From my Level Lock’s point of view, it is only connected to HomeKit. I created those other helpers and automations to work around this limitation.

Sounds like you aren’t getting the desired performance from the lock. This is typically due to one of two reasons:

  1. Your door alignment isn’t great. Ensure the door is always fully closed every time — easier said than done with kids. The lock mechanism isn’t strong enough to overcome much friction, so it will throw an error or just stay in the “locking” status indefinitely if it can’t turn the lock fully in either direction. My household has this problem too.

  2. Weak or inconsistent Bluetooth connection. If your HomeKit hub device (HomePod, Apple TV) is closer to the lock than your HASS Bluetooth adapter, you might have better luck pairing it to HomeKit. You can also try enabling the boost Bluetooth setting in the Level app. Otherwise you’ll need a Bluetooth proxy, and that will prevent you from using the solution I outlined above.

Hi once again - while I’m not completely done implementing your good ideas, I wanted to thank you again and give an update in case others read this thread in the future.

While I haven’t implemented your system to create delays (due to some challenges figuring out momentary switches with delays), I’ve created the boolean, brought that into HK (a first for me with HA), created HK automations to sync the boolean with the lock, and added the boolean to a HA dashboard. So, I’ve learned a lot, and it’s working “good enough” for a proof of concept already.

Thanks again for your help and encouragement, Thomas! All the best.

1 Like

Hi, this is REALLY cool.

I tried your code and had to make some changes (had to use states(‘entity’) rather than state.entity.state) but other than that worked brilliantly.

You missed the instruction to add an input_button and an automation to conditionally call the right monentary trigger too, but once I added that it all worked no problem.

THANK YOU SO MUCH this is just what I wanted.

Tony

1 Like

Glad it’s working for you @TonySeeley and @ajfi-droid2! Thanks for identifying the missing HA automation — I’m updating my post now to include that piece.

Wanted to add a quick disclaimer that much (most?) of the config in my above post was derived from suggestions by other HA community members, probably even from this thread. Community-driven solutions are the best solutions :slight_smile:

1 Like

It’s funny I found on line that the state.entity.state approach should have worked but it didn’t for me (not sure why), so my code looks like this.

      - type: custom:mushroom-template-card
        primary: Front Door
        entity: input_boolean.front_door
        secondary: |-
          {% if states('switch.momentary_front_door_lock_trigger') == 'off' and states('switch.momentary_front_door_unlock_trigger') == 'off' %}
            {% if states('input_boolean.front_door') == 'on' %}
              Locked
            {% else %}
              Unlocked
            {% endif %}
          {% else %}
            {% if states('switch.momentary_front_door_lock_trigger') == 'on' %}
              Lock requested, please wait.
            {% else %}
              Unlock requested, please wait.
            {% endif %}
          {% endif %}
        icon: |-
          {% if states('input_boolean.front_door') == 'on' %}
            mdi:lock
          {% else %}
            mdi:lock-open
          {% endif %}
        icon_color: |-
          {% if states('switch.momentary_front_door_lock_trigger') == 'off' and states('switch.momentary_front_door_unlock_trigger') == 'off' %}
            {% if states('input_boolean.front_door') == 'on' %}
              green
            {% else %}
              red
            {% endif %}
          {% else %}
            yellow
          {% endif %}
        hold_action:
          action: none
        double_tap_action:
          action: none
        multiline_secondary: true
        fill_container: true
        tap_action:
          action: call-service
          service: input_button.press
          target:
            entity_id: input_button.front_door_toggle

and it works brilliantly.

So thank you again :slight_smile:

I have a spare Level Lock Keypad Door Lock Keypad | Level Lock Keypad | Level.

Is it possible to detect use of the keypad with Home Assistant independently of an actual lock? I’m wondering if I could use the keypad as a trigger for another action.

Thanks

I just set up my first bluetooth proxy, and that seems to have been successful. Unfortunately, the only way this lock is showing up in HA is through HK integrations, not bluetooth.

Ideas? I tried removing it from the app as others suggested. I’m seeing it scan in the logs, and it just isn’t finding anything. I disabled my bluetooth adapter on the rpi, too.

I’ve also tried factor resetting the lock itself.

If it helps, I have the level bolt, but they should all act the same I imagine.

That’s exactly how the lock is supposed to show up. It’s a HomeKit device that’s connecting to HA using Bluetooth.

Thank you.

Oh, then I think I misunderstood some of the other posts here that it was one or the other. So, the downside is that I am still seeing errors.

An unhandled error occurred while attempting to pair with this device. This may be a temporary failure or your device may not be supported currently: Bluetooth GATT Error

The only other part of this thread that shows someone got this error was here: Level door lock? - #151 by amyleighbaker But it doesn’t seem like they solved it :frowning:

Edit:

Looking at the ESPHome logs on the BT proxy, it tries to connect but then kicks out an error:

Error reading char/descriptor at handle 0x56, status=133

Update: So I got frustrated and gave up for a day or so, and then decided to retry. I simultaneously unplugged the BT proxy and took the battery out of the lock, and then put both back. When I returned to home assistant, this time it let me pair!

I currently have the BT proxy painters taped to the wall nearby the device. I plan on moving it a bit farther away once I validate the config stays working. We’ll see how that goes.

1 Like

Who’s going to take the plunge first?

Level Lock Matter Update

I requested the update as soon as I got the email this morning. No idea when the update will actually come through, tho…

I requested it also. I’m worried about breaking it since it’s working in Home but having it directly in HA is appealing.

I would, but all mu locks are the Bolt :neutral_face:

Hey guys,

Received the Matter firmware for my Level Lock + from Level, added to HomeKit, then to Home Assistant. So far works perfectly.

1 Like

Just requested for both of my Lock+ devices. One has a Level Connect paired, and both have keypads. I’m really curious to see how these work.

I’m big sad that I trusted Level.co to deliver next-gen tech to me when I bought a bolt and a touch because they were the best available tech. They don’t want to release matter on their existing sales units because they hope I will blindly buy the new plus matter model…I’m not stupid, Level. When you abandon your existing user base you push them to another product that is hopefully less hostile to loyal purchasers. I’m out unless you get right with your existing users.

1 Like

As far as I understood, only the Level Lock+ has had Thread hardware capability since its release. So a simple firmware update isn’t possible for those devices

Not according to this article from 2022: Level locks had a secret Thread radio this whole time - The Verge

Relevant quote:

Via email, Level’s co-founder and CTO Ken Goto told The Verge that “all Level Locks are 100% hardware compatible with Matter” and that the 2.4GHz radios inside each Level lock will be upgraded to support Matter over Thread

3 Likes