Commit graph

7 commits

Author SHA1 Message Date
5271b1fca0
Phase 3: Categorized detections, Morse code alerts, alert system fixes
- Restructure detection arrays to categorized structs (MfrEntry, NameEntry)
- Add 8 threat categories: flock, glasses, tracker, lawenf, ring, camera, raven, wifi
- Add 10 new BLE manufacturer IDs: Meta (x2), Luxottica, Snapchat, Axon,
  Motorola Solutions, Tile, Hikvision, Arlo, Wyze
- Add smart glasses name patterns (rayban, ray-ban, ray ban)
- Category field flows through all JSON output (API, SPIFFS, serial)
- Morse code buzzer alerts per category (F=flock, G=glasses, T=tracker,
  L=lawenf, R=ring, S=camera, V=raven)
- Per-category alert triggering replaces global suppression flag
- Decouple heartbeat timer from re-detections for clean 10s cadence
- Fix heartbeat firing immediately after initial detection alert
- Dashboard: full category legend, color-coded charts for all categories
- Color swap: Flock=red, Ring=blue, Raven=amber

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 12:26:36 -07:00
43b4918f26
Add peak-RSSI GPS tracking and battery monitoring
Track strongest signal per detection to capture GPS at closest approach
to surveillance devices, rather than only first-seen position. All exports
(JSON, KML, CSV, SPIFFS, dashboard, radar) updated to use best GPS.

Also adds battery ADC monitoring framework (disabled by default until
voltage divider hardware is wired) and uptime display in stats bar.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 20:12:46 -07:00
39e4b7ee34
Add dashboard overhaul: radar, themes, visual identity
- Proximity radar with canvas-based RSSI rings, sweep animation,
  and detection blips positioned by haversine bearing (GPS) or
  MAC hash (fallback)
- Three switchable themes (Purple/Tactical/Ithildin) with
  localStorage persistence
- Subtle grid overlay, card gradients, glow effects, pulsing
  status indicator, detection-type left-border colors
- RSSI bar chart for at-a-glance signal strength comparison
- Randomized taglines on load
- Added device_lat/device_lon to /api/stats for bearing calc
- All CSS colors via custom properties for theme support

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 17:48:39 -07:00
a6c6ab0456
Fix build errors: add missing includes and forward declarations
Added Adafruit_NeoPixel.h and ESPAsyncWebServer.h includes that were
implicitly resolved in OUI Spy but needed explicitly in standalone build.
Added forward declarations for fyGPSIsFresh() and fyAddDetection() so the
WiFi promiscuous callback can reference them before their definitions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 17:19:38 -07:00
eb20c3ea54
Add WiFi promiscuous mode for Ring/Blink/Amazon detection (Phase 2)
ESP32 promiscuous callback parses 802.11 management frames (probe requests
+ beacons), extracts source MAC OUI, and checks against wifi_mac_prefixes[]
table. Deferred alert pattern avoids calling delay()/tone() from WiFi task.
AP dashboard continues serving at 192.168.4.1 while scanning.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 00:20:56 -07:00
945f5241df
Fix attribution — credit colonelpanichacks and wgreenberg
OUI Spy Unified Blue is by colonelpanichacks, not lukeswitz.
Full lineage: wgreenberg (flock-you BLE research) ->
colonelpanichacks (OUI Spy unified multi-mode firmware) -> Dantir.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:18:55 -07:00
d47dd1f435
Initial commit — Dantir surveillance counter-watcher
Standalone ESP32-S3 firmware forked from OUI Spy Unified Blue (Flock-You mode).
Expanded BLE detection with Ring/Amazon patterns, WiFi OUI table ready for
promiscuous mode in Phase 2.

- Rebranded: AP "dantir"/"dantir123", dashboard, logs, exports
- BLE: 20 Flock Safety OUIs, 5 name patterns, 2 mfr IDs (XUNTONG + Amazon), 8 Raven UUIDs
- WiFi: 13 Ring/Blink OUI prefixes defined (promiscuous callback pending)
- MIT license with lukeswitz/oui-spy attribution

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:06:19 -07:00