Files
rf-mapper/TASKS.md
User 5eb5cd2351 Add popup persistence and update project docs
- Popups now stay open during live BT tracking updates
- Track open popup device ID and restore after marker refresh
- Update TASKS.md, TODO.md, PROJECT.md, ROADMAP.md
- Mark position smoothing, floor persistence as complete

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 00:40:57 +01:00

3.3 KiB
Raw Blame History

RF Mapper - Active Tasks

Sprint: v0.3.0 - 3D Visualization Updated: 2026-02-01


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
[x] Position smoothing Statistical averaging (5 samples + stddev)
[ ] 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
Statistical movement detection 2026-02-01
Floor persistence in database 2026-02-01
Popup persistence during updates 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 (4-second scan interval)
  • Historical data stored in SQLite database with auto-cleanup
  • Movement detection uses statistical analysis (5-sample avg + 2σ threshold)
  • Floor assignments persist in database across page reloads
  • Popups stay open during live tracking updates