ble-reticulum/tests
torlando-tech 4366707abc fix(ble): Add scanner-connection coordination to prevent "InProgress" errors
Scanner was calling BleakScanner.start() during active connection attempts,
causing BlueZ "Operation already in progress" errors. This fix adds coordination
between scanner and connection operations:

- Add _should_pause_scanning() method to check for active connections
- Modify _perform_scan() to skip scan cycle when connections in progress
- Scanner automatically pauses when _connecting_peers is not empty
- Scanner automatically resumes when connections complete

Impact:
- Eliminates scan-induced connection failures
- Reduces BlueZ error log spam
- Improves overall connection reliability

Files changed:
- src/RNS/Interfaces/linux_bluetooth_driver.py: Add pause logic
- tests/test_scanner_connection_coordination.py: Add test coverage
- BLE_PROTOCOL_v2.2.md: Document scanner coordination
- CHANGELOG.md: Record fix details

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-10 19:44:20 -05:00
..
conftest.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
mock_ble_driver.py Refactor BLEInterface to driver-based architecture 2025-11-03 23:15:22 -05:00
test_ble_peer_interface.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_bleak_threading_hang.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_bleak_with_exec_loading.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_bluez_state_cleanup.py fix(ble): Add BlueZ state cleanup to prevent persistent "Operation already in progress" errors 2025-11-10 00:51:27 -05:00
test_config_directory.py fix: support custom config directories via RNS.Reticulum.configdir 2025-10-28 19:09:48 -04:00
test_error_recovery.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_fragmentation.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_gatt_server.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_installer.sh refactor: make libffi-dev conditional for armhf (32-bit ARM) only 2025-10-29 11:02:51 -04:00
test_integration.py test: Add comprehensive v2.2 protocol test suites 2025-11-07 23:00:30 -05:00
test_multi_device_simulation.py Initial commit: BLE Reticulum interface 2025-10-26 19:14:14 -04:00
test_prioritization.py test: Update integration tests for driver abstraction refactor 2025-11-07 22:48:38 -05:00
test_scanner_connection_coordination.py fix(ble): Add scanner-connection coordination to prevent "InProgress" errors 2025-11-10 19:44:20 -05:00
test_v2_2_identity_handshake.py test: Add comprehensive v2.2 protocol test suites 2025-11-07 23:00:30 -05:00
test_v2_2_mac_sorting.py test: Add comprehensive v2.2 protocol test suites 2025-11-07 23:00:30 -05:00
test_v2_2_race_conditions.py test: Add comprehensive v2.2 protocol test suites 2025-11-07 23:00:30 -05:00