You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to add support for these cheap BLE button tags but I'm struggling with what needs to be defined in a "protocol" vs a "device".
They're a basic presence device but with a couple of extra features once connected:
Battery percentage is a readable characteristic (some of them allow it to be notified, too)
There's an "alert" characteristic that makes the device beep depending on what's written to it.
There's a button that can be subscribed to to get notifications when it is clicked.
(1) seems like a straightforward sensor, (2) I'm not quite sure, but I'd imagine this could be a "select" or "switch" domain device. (3) seems the weirdest because the state is always off when read directly, and it sends an event whenever it's pressed.
Any guidance or documentation I'm missing for these?
The text was updated successfully, but these errors were encountered:
Hi! Protocol is an abstraction for complex communication with a device. You may ignore protocol folder if your device doesn't need to implement something odd.
There are two ways of communicating - direct connection (high battery consumption) and advertisement decoding (doesn't require connection, which allows the battery to work longer)
If you have a connection, you may subscribe to a characteristic to receive data from it periodically, maybe clicks are also transmitted through this mechanism.
I'm trying to add support for these cheap BLE button tags but I'm struggling with what needs to be defined in a "protocol" vs a "device".
They're a basic presence device but with a couple of extra features once connected:
(1) seems like a straightforward sensor, (2) I'm not quite sure, but I'd imagine this could be a "select" or "switch" domain device. (3) seems the weirdest because the state is always off when read directly, and it sends an event whenever it's pressed.
Any guidance or documentation I'm missing for these?
The text was updated successfully, but these errors were encountered: