Files
rf-mapper/TASKS.md
User 0e99232582 Switch to bleak for reliable BLE scanning with RSSI
- 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>
2026-02-01 00:17:47 +01:00

3.0 KiB

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