- Replace hcitool-based BT scanning with bleak Python library - Bleak provides reliable RSSI values via D-Bus/BlueZ - BLE scan now finds devices that hcitool missed - Update project docs to reflect resolved BT RSSI blocker - Add bleak>=0.21.0 to dependencies Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
106 lines
3.0 KiB
Markdown
106 lines
3.0 KiB
Markdown
# RF Mapper - Active Tasks
|
|
|
|
**Sprint:** v0.3.0 - 3D Visualization
|
|
**Updated:** 2026-01-31
|
|
|
|
---
|
|
|
|
## Priority Levels
|
|
- **P0** - Critical / Blocking
|
|
- **P1** - High / Current sprint
|
|
- **P2** - Medium / Next sprint
|
|
- **P3** - Low / Backlog
|
|
|
|
## Status Legend
|
|
- `[ ]` Todo
|
|
- `[~]` In Progress
|
|
- `[x]` Done
|
|
- `[-]` Blocked
|
|
|
|
---
|
|
|
|
## P0 - Critical
|
|
|
|
| Status | Task | Notes |
|
|
|--------|------|-------|
|
|
| [x] | Fix Bluetooth RSSI acquisition | Switched to `bleak` Python library for reliable BLE scanning with RSSI |
|
|
|
|
---
|
|
|
|
## P1 - High Priority (Current Sprint)
|
|
|
|
| Status | Task | Notes |
|
|
|--------|------|-------|
|
|
| [x] | MapLibre GL JS integration | 3D map with building extrusion |
|
|
| [x] | Floor-based positioning | Devices assigned to floors |
|
|
| [x] | Floor selector UI | Dropdown to filter by floor |
|
|
| [x] | Custom distance override | Set manual distance via popup |
|
|
| [x] | Live BT tracking mode | 4-second scan interval |
|
|
| [x] | Moving device detection | Purple markers for RSSI changes |
|
|
| [x] | Filter-aware scanning | Skip WiFi/BT based on toggle |
|
|
| [x] | Improve BT discovery reliability | Using bleak library for BLE scanning |
|
|
| [ ] | Document API endpoints | docs/API.md |
|
|
| [ ] | Create CHEATSHEET.md | Quick reference guide |
|
|
|
|
---
|
|
|
|
## P2 - Medium Priority (Next Sprint)
|
|
|
|
| Status | Task | Notes |
|
|
|--------|------|-------|
|
|
| [ ] | Position smoothing | Average RSSI over multiple samples |
|
|
| [ ] | Device trails | Show movement history on map |
|
|
| [ ] | Signal strength graph | Per-device RSSI over time |
|
|
| [ ] | Scan history browser | View past scans in UI |
|
|
| [ ] | Export functionality | Download scan data as CSV |
|
|
|
|
---
|
|
|
|
## P3 - Low Priority (Backlog)
|
|
|
|
| Status | Task | Notes |
|
|
|--------|------|-------|
|
|
| [x] | SQLite persistence | Historical device tracking enabled |
|
|
| [x] | Device labeling | Custom names via API |
|
|
| [ ] | Home Assistant integration | MQTT/webhook |
|
|
| [ ] | Docker container | Containerized deployment |
|
|
| [ ] | Unit tests | pytest coverage |
|
|
|
|
---
|
|
|
|
## Completed This Sprint
|
|
|
|
| Task | Completed |
|
|
|------|-----------|
|
|
| 3D map view with MapLibre | 2026-01-31 |
|
|
| Floor assignment in popup | 2026-01-31 |
|
|
| Custom distance setting | 2026-01-31 |
|
|
| Live tracking button | 2026-01-31 |
|
|
| Purple moving indicators | 2026-01-31 |
|
|
| Smart scanning (filter-aware) | 2026-01-31 |
|
|
| SQLite historical database | 2026-02-01 |
|
|
| Bleak BLE scanning (reliable RSSI) | 2026-02-01 |
|
|
| Auto-start live BT tracking | 2026-02-01 |
|
|
|
|
---
|
|
|
|
## Blockers
|
|
|
|
*No current blockers*
|
|
|
|
### ~~BT RSSI Acquisition~~ (RESOLVED)
|
|
**Problem:** Cannot get reliable RSSI values for Bluetooth devices
|
|
- `hcitool rssi <addr>` - Only works for connected devices
|
|
- `bluetoothctl info` - No RSSI for cached devices
|
|
|
|
**Solution:** Switched to `bleak` Python BLE library which provides reliable RSSI via D-Bus/BlueZ.
|
|
|
|
---
|
|
|
|
## Notes
|
|
|
|
- BLE scanning now uses `bleak` Python library (reliable RSSI via D-Bus)
|
|
- WiFi scanning works well with `iw` command
|
|
- Live BT tracking auto-starts on page load (3-second scan interval)
|
|
- Historical data stored in SQLite database with auto-cleanup
|