Dear Maintainer,
A bonded/trusted LE HID device (Bluetooth mouse) that disconnects itself
after ~10 minutes of idle (HCI Disconnect Complete, reason 0x13 "Remote
User Terminated Connection") normally reconnects instantly on its own the
next time it's touched, via a directed advertisement (ADV_DIRECT_IND) that
the kernel's background auto-connect mechanism picks up in under 30ms.
On some idle->reconnect cycles, this stops working: the device never
reconnects no matter how long it's touched/moved, passive scanning
(bluetoothctl scan on) never shows any advertisement from it at all, and
an explicit "Connect" from the GUI (or `bluetoothctl connect <MAC>`) fails
with:
MGMT Event: Connect Failed (0x000d)
LE Address: <device MAC> (Static)
Status: Disconnected (0x0e)
Power-cycling the peripheral, swapping its battery, and using its
hardware pairing-reset button all have no effect once the device is in
this state -- strongly indicating the peripheral itself is not the
problem. The only thing that recovers it is killing and restarting
bluetoothd (`systemctl kill --signal=SIGKILL bluetooth`); a plain
`systemctl restart bluetooth` (SIGTERM) does NOT recover it, even run
twice in a row.