[RELEASE] Hubitat August / Yale BLE Service (Local WebSocket Bridge + Drivers)

Hi everyone,

I’ve been working on a local-only integration for August / Yale Bluetooth smart locks with Hubitat.

The goal was to get reliable lock control + door state + battery inside Hubitat without relying on the August cloud and without constantly polling the lock. The approach is a small BLE-backed WebSocket service (runs on a Linux device like a Raspberry Pi) plus Hubitat drivers that maintain a persistent WS connection and create a child device per lock.

:wrench: KEY FEATURES:

  • Local-only (no August cloud dependency once you have offline keys)
  • Persistent WebSocket connection from Hubitat → BLE service (LAN)
  • Real-time-ish updates (BLE push updates; no Hubitat-side polling loop)
  • Child devices per lock with:
    • Virtual Lock
    • Contact Sensor (door open/closed when available)
    • Battery
    • Extra attributes like RSSI / model / manufacturer
  • Multiple lock support
  • Optional bearer-token auth on the WebSocket service
  • Docker / docker-compose ready service for easy deployment

:building_construction: How it works (high level):

  • A Linux host (Pi, mini PC, etc.) runs the BLE service
  • The service talks to August/Yale locks over Bluetooth (yalexs-ble)
  • Hubitat connects to the service over WebSocket and creates/controls lock devices

:point_right: GitHub Repo & Setup Guide: https://github.com/K-MTG/Hubitat-August-BLE

:computer: My hardware setup so far:

  • Running on a Raspberry Pi CM5 in a PoE case
  • I switches to a USB BLE adapter that Home Assistant docs recommend and performance is definitely better compared to using onboard antenna. I'm using the Feasycom FSC-BP119

If you’re using August/Yale locks and want a Hubitat-friendly local integration, I’d love for you to try it out. Feedback, issues, and suggestions are very welcome.

2 Likes

Sounds interesting.
How about different locks, for instance Ultraloq?
And how about using ESP32 instead of RPI?

Ps.
I had August lock in a past but its ZWave communication was very unreliable. So, I replaced it with Ultraloq ZWave Pro. Communication is a bit better but still far from perfect. At some point Ultraloq teamed with HA and promised an official BT integration but this never happened.

I initially wanted to use the ESPHome ESP32 Bluetooth proxy but it appears I would need a Linux host regardless to execute the Python yalexs-ble library so just went with a Pi to reduce the num of components. The BLE WS service can potentially get extended to use BLE proxy instead of onboard Bluetooth but I’m not familiar with what that would look like.

The scope are currently just the locks supported by the yalexs-ble library.

I share the same Z-Wave issues with my August lock. It works fine when the batteries are fresh but becomes totally unreliable within a week. This integration has been solid for lock/unlock events but door open/close status events are sometimes missed so waiting on an external USB Bluetooth antenna to see if that improves things.

Great project.

Just to clarify, are you intending this to work for the subset of Yale locks that came from their acquisition of August? Or is this designed to work for all Yale and all August locks?

Could quite tell from the README.

I haven't tested it with a Yale lock but it should be compatible with the list here: Yale Access Bluetooth - Home Assistant

Awesome will give it a try and let you know

1 Like

Update: I got my hands on the "Feasycom FSC-BP119". I disabled the onboard BLE (with dtoverlay=disable-bt in config.txt) and plugged this in and performance seems to be better.

Released update of ble_ws_service - 0.1.3