From 579cea57dc49bf28313af720f9a3c785163cb406 Mon Sep 17 00:00:00 2001 From: User Date: Sun, 1 Feb 2026 18:07:11 +0100 Subject: [PATCH] fix: filter scanner BT MACs in database recording - Skip recording BT observations for addresses matching peer bt_mac - Prevents scanners from being stored as regular devices - Filters at database level, not just frontend display Co-Authored-By: Claude Opus 4.5 --- src/rf_mapper/database.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/rf_mapper/database.py b/src/rf_mapper/database.py index 19bb8a6..ef73db4 100644 --- a/src/rf_mapper/database.py +++ b/src/rf_mapper/database.py @@ -340,6 +340,11 @@ class DeviceDatabase: cursor = conn.cursor() timestamp = datetime.now().isoformat() + # Skip if this is a known scanner's BT MAC (don't record scanners as devices) + cursor.execute("SELECT 1 FROM peers WHERE UPPER(bt_mac) = UPPER(?)", (address,)) + if cursor.fetchone(): + return # Skip scanner device + # Get previous observation for movement detection cursor.execute(""" SELECT rssi, distance_m, timestamp FROM rssi_history