OK, disclaimer. I’ve read that HifiberryOS is not RaspiOS now, and I compile bluez, pipewire, wireplumber myself to use the latest versions. It didn’t even show up with a Soundcard symbol here, just a generic BT symbol. But the symptoms sound similar enough so it might be worth a try.
We will use bluetoothctl
(btctl) to pair both devices. If you start it you’re in a new command prompt that allows to issue commands to BT. No worries, can’t do any harm here, everything is easily reversible. That’s how we start, make sure we have a clean slate.
In btctl do on both devices
list
That will show the name and address (addr) of the local BT adapter. We will use the addrs in commands. You can use autocomplete, just type e.g. the first two characters of the addr and hit tab.
Sometimes btctl needs a few seconds to perform its task. As long as the tab completion doesn’t work the addr/adapter isn’t available. Have to wait longer.
Do
devices
which shows known devices. If either knows of the other do
remove <other-addr>
to remove the other device.
On the desktop:
scan on
which will search for new devices.
On the Raspi:
agent off
agent KeyboardDisplay
default-agent
This is important so that we can confirm the pin request on pairing in the CLI.
On the raspi:
pairable on
discoverable on
Back to the desktop. You have to wait until the desktop sees the raspi. Should output [NEW] <raspi something>
(wait for tab complete on the address to work).
pair <raspi-addr>
Wait a second, they should both ask for pin confirmation. You have a short window on both devices to confirm (yes + enter).
That should pair both devices (no error messages, give it a second). Check with
devices Paired
They should show each other. Then on each device trust the other:
trust <others-device-addr>
And now we should be good (can be checked with devices Trusted
). Try to connect how you usually would.
If something goes wrong and btctl doesn’t seem to respond (bt sometimes gets stuck) quit
btctl and do sudo systemctl restart bluetooth
and start btctl at the top with removing devices again.
If everything worked turn off pairable, discoverable, scan on the respective devices.
That worked for me, good luck.