Repository navigation
v0.4.0-bluetooth
v0.4.0 — Bluetooth RFCOMM Transport
Breaking change: Replaced Wi-Fi (UDP discovery + TCP sockets) with Bluetooth RFCOMM. Fixes AP isolation issues on routers.
What changed
- Python daemon: Now connects to phone via Bluetooth RFCOMM (PC = BT client)
- Android service: Now listens for Bluetooth connections (phone = BT server)
- Config: Removed IP/port/poll settings, added
device.bluetooth_mac - Mutual auth PSS fix: Cross-platform salt length match between Python cryptography and Android KeyStore
- NixOS module: Removed firewall rule, added
bluetooth_macoption
Migration
- Pair phone with PC at OS level (Bluetooth settings)
- Set
bluetooth_macin config - Install new APK
- Rebuild NixOS config
Files changed
M android/app/src/main/AndroidManifest.xml
M android/app/src/main/java/.../CryptoManager.kt
M android/app/src/main/java/.../HandshakeModels.kt
M android/app/src/main/java/.../PhonectNetworkService.kt
M android/app/src/main/java/.../ProtocolHandler.kt
M phonect-service.nix
M src/phonect/config.py
M src/phonect/crypto.py
M src/phonect/daemon.py
M tests/test_daemon.py