Troubleshooting TopBrewer BLE connection, GATT errors, and WebSocket relay issues.
ssh -i siloos_key [email protected])ble_bridge.py service is runningssh -i siloos_key [email protected] "sudo systemctl status scale_bridge"
Expected: Active: active (running)
ssh -i siloos_key [email protected] "sudo journalctl -u scale_bridge -n 50 --no-pager"
Look for:
BLE connected — TopBrewer connection establishedBLE disconnected — Connection lost (check range, power)GATT error — Protocol issue (check characteristic UUIDs)ssh -i siloos_key [email protected] "bluetoothctl show"
Expected: Powered: yes, Discovering: no (scan should be off when connected)
ssh -i siloos_key [email protected] "bluetoothctl power off && sleep 2 && bluetoothctl power on"
ssh -i siloos_key [email protected] "python3 find_machine.py"
Expected: Device with MAC 88:6B:0F:BC:00:A1 should appear
ssh -i siloos_key [email protected] "sudo systemctl restart scale_bridge"
From development machine, check if WebSocket is accepting connections:
curl -s -o /dev/null -w "%{http_code}" http://10.0.124.90:8765/
Expected: HTTP response (indicates aiohttp is listening)
| Symptom | Cause | Fix |
|---|---|---|
Powered: no | BLE adapter disabled | bluetoothctl power on |
| Device not found | Out of range or powered off | Move Pi closer, check TopBrewer power |
GATT error | Stale connection | Restart bridge service |
Permission denied | Missing BLE permissions | Run sudo usermod -a -G bluetooth siloos |
| WebSocket refused | Bridge crashed | Check logs, restart service |