Implement trilateration of devices
- 主要语言
- Python
- 星标
- 2k
- 派生
- 70
- PR 合并指标
- 30 天内没有已合并 PR
描述
This is the primary goal of this integration, but the first milestones to hit are:
- [x] Sensors to state the `Area` of a device, based on the `Area` of the closest bluetooth receiver
- [x] Implement the `device_tracker_ble` functionality of providing `home|not_home` state for Person entities.
- [x] UI for configuring device selections and options
The milestones for this feature are:
- [x] ~~Improve filtering of distance estimates for accuracy and stability. Currently thinking [Extended Kalman Filters](https://en.wikipedia.org/wiki/Extended_Kalman_filter) with [FilterPy](https://filterpy.readthedocs.io/en/latest/kalman/ExtendedKalmanFilter.html)? I wonder if [Wouter](https://www.wouterbulten.nl/posts/kalman-filters-explained-removing-noise-from-rssi-signals/) is looking for projects :)~~ (current filtering seems reasonably stable while also responsive. I don't think Kalman is well-suited to the noise distribution, so this is "good enough" for now).
- [ ] Using beacon-receiver distances, "solve" all receiver-receiver distances using [Triangle Inequality](https://en.wikipedia.org/wiki/Triangle_inequality)
- [ ] Using those solved "edges", estimate solutions for a 2D plane with all devices
- [ ] UI/Config Flow:
- [ ] Allow user to choose an "origin" beacon and a vector beacon to place the solution in a constrained space.
- [ ] Allow entry of 1-metre rssi calibration offsets for both receivers and devices.
- [ ] Create new sensors to provide location data (also lat/long?)
Extension goals:
- [ ] Solve for 3D space (some peeps have multiple floors, and as of HA 2024.4 floors are now a "thing")
- [ ] Smarter solutions.
贡献指南
评估
这个 Issue 还没有评估数据。