From 37d6a9fbecbe0393781ecc24c76d7a046fb5004a Mon Sep 17 00:00:00 2001 From: torlando-tech Date: Thu, 13 Nov 2025 17:38:21 -0500 Subject: [PATCH] feat: Add service UUID filter to BLE scanner for more efficient scanning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Filter BLE scanner to only detect devices advertising the Reticulum service UUID, reducing noise from non-Reticulum BLE devices and improving scan efficiency. Changes: - Pass service_uuids parameter to BleakScanner initialization - Only detects devices with our service UUID (37145b00-442d-4a94-917f-8f42c5da28e3) - Reduces callback invocations for irrelevant BLE devices Benefits: - More efficient scanning (fewer devices to process) - Less CPU usage processing non-Reticulum devices - Faster peer discovery 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- src/RNS/Interfaces/linux_bluetooth_driver.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/RNS/Interfaces/linux_bluetooth_driver.py b/src/RNS/Interfaces/linux_bluetooth_driver.py index ef05281..8f8528b 100644 --- a/src/RNS/Interfaces/linux_bluetooth_driver.py +++ b/src/RNS/Interfaces/linux_bluetooth_driver.py @@ -653,7 +653,10 @@ class LinuxBluetoothDriver(BLEDriverInterface): scan_time = 1.0 self._log(f"🔍 Starting BleakScanner (power_mode={self.power_mode}, scan_time={scan_time}s, service_uuid={self.service_uuid})", "EXTRA") - scanner = BleakScanner(detection_callback=detection_callback) + scanner = BleakScanner( + detection_callback=detection_callback, + service_uuids=[self.service_uuid] if self.service_uuid else None + ) try: self._log("🔍 Calling scanner.start()", "EXTRA")