home-assistant / bthome.io Goto Github PK
View Code? Open in Web Editor NEWBTHome is a BLE API to broadcast data for your home.
Home Page: https://bthome.io
BTHome is a BLE API to broadcast data for your home.
Home Page: https://bthome.io
We want to allow a device to be able to report multiple measurements of the same data type. For example, a BBQ thermometer wants to report 4 temperature sensors.
Some data we want the receiver to know but it never changes. It would be nice if we could offer a read-only characteristic for receivers to fetch this. It could contain:
The flow would be:
Home Assistant has the notion of tags. A tag is a random string that can be used for automations. It would be great if tag readers could be supported by BTHome to be able to support battery-powered tag readers.
tag
whose data is a string. Tags do not have a fixed length in Home Assistant.Receiver should process it as a tag if it supports tags. In Home Assistant that will be async_scan_tag
if the tag
integration is set up.
I'm trying to create presence detection based on sending packets with presence data from my phone every 60 seconds, that part working fine but android randomizes the mac address every few minutes so when I come home from a walk home assistant detects my phone as new device cause of that mac address change, there is no way how to set static mac address in android,
is there any way how to overcome this?
maybe you could add some new data type like a unique mac address...
We want v2 to be able to get certified by the Bluetooth SIG, this requires to use a single UUID. This means moving encryption into the payload. We should also include a version number, just in case.
All these object id's use uint8 data with 0
defined as Closed
. Can we define the Open
state? One can assume 1 as Open or 100(percent) as Open or 255 as open. This should not be left to implementers to decide or a chaos will rein :)
I see previous post re. package misses from BT devices.
I run Shelly BLU devices.
In order to monitor the situation:
I have a script running on Shelly 1Mini Gen3 that holds a virtual component = a number variable, and second digit in this is equal to my door/window sensor. Example Open = 910000 Closed = 900000, so second digits is either 1 og 0.
When I display in Home Assistant both:
(1) The original BLU device entities
(2) My virtual component
It is clearly seen that the BLU device entities do not pass into Home Assistant correctly.
Also the log shows that only some packages are read by Home Assistant - whereas the virtual component react on each open/close of the door.
See screenshot.
All data types have fixed predefined length and known scale factor. This information is definitely known to the clients receiving the data.
This information is redundant from the clients perspective, and should not go over the air and occupy the precious data payload.
Please consider removing it. This will free up to 30% of the usable payload data.
`
Object id | Property | Preferred data type | Factor | Example | Result | Unit | Reduced Example |
---|---|---|---|---|---|---|---|
0x01 | battery | uint8 (1 byte) | 1 | 020161 | 97 | % | 0161 |
0x02 | temperature | sint16 (2 bytes) | 0.01 | 2302CA09 | 25.06 | °C | 02CA09 |
`
etc.
We want to support buttons with BTHome.
Requirements:
press
, double press
, triple press
, long press
Home Assistant currently assumes to receive an update every 5 minutes. If a sensor updates less often, the state of the sensor changes to unavailable.
Sensors might have widely different sleep times. Instead of making assumptions, it would be nice to have an option to communicate the expected sleep time using the BTHome protocol.
Related issue: home-assistant/core#78702
I'm not sure if there's requirements or anything for a mention, but I've written a project using the ESP-IDF tools to send BTHome format packets, which some people may find useful to make their own sensor packages.
i'm using the pvvx firmware with a xiaomi thermometer 2 and i see the voltage sensor updating only one time after homeassistant startup.
bug or we have a big update interval to wait?!
(temperature or humidity update as expected)
thanks
Hi,
There seems to be a typo here:
Line 708 in 9eb9527
This should read 4A020C
, I guess...
HTH,
Flössie
Hey,
I don't know if this is a bug of the bthome integration or something on the HA side,
but the shellyBLU button1 works fine if you use automations,
but the button itself isn't seen as a switch / entity
so no actions show up in the log aswell when pressing the button,
only the battery gets updated etc
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.