mincequi / cornrow

Bluetooth and Airplay Audio Daemon for SBCs (Raspberry Pi, etc)
GNU General Public License v2.0
83 stars 5 forks source link

Unable to reconnect after client "forgets" the server device #27

Closed dasl- closed 1 year ago

dasl- commented 1 year ago

I'm experiencing an edge case problem in reconnecting a client to the cornrow server.

Steps to reproduce:

  1. connect client to cornrow bluetooth server. Observe that music playback works fine.
  2. In the client, click "Forget This Device" in the bluetooth settings for the cornrow bluetooth server
  3. In the client, attempt to connect to the cornrow bluetooth server again. Observe error message: "Pairing Unsuccessful. iPhone can no longer connect to <server name>. Forget this device and pair it again."
  4. Even after telling the client to "Forget Device" again, we are still unable to connect to the server.

There is a workaround for this error:

  1. On the server, run bluetoothctl remove XX:XX:XX:XX:XX:XX, specifying the client's address
  2. The client should now be able to connect to the cornrow server again

Client details: iPhone 13 mini, iOS version 16.1.1 Server details: Raspberry Pi 3 Model A Plus Rev 1.0, Raspbian GNU/Linux 11 (bullseye)

Thanks for any insight you can provide!

dasl- commented 1 year ago

I may have figured this out. I think putting JustWorksRepairing = always' in /etc/bluetooth/main.conf, followed by restarting bluetooth service worked.