Linux Kernel 5.0.15 broke Support for all Older Bluetooth Devices and there's no fix in sight
If you are using older or cheaper newer Bluetooth devices and you are wondering why they no longer work: it is because of a change in the kernel's way of aligning encryption keys which prevents devices using earlier versions of the Bluetooth standard from connecting.
If you brought that trusty old Bluetooth speaker and Linux Slimbook to the beach and ended up disappointing all your pretty female friends who would have been all over you if there had been sound, which there wasn't because the kernel's broken, and you are wondering why there was no sound: It's a kernel problem.
The kernel problematic kernel change is commit d5bb334a8e17 ("Bluetooth: Align minimum encryption key size for LE and BR/EDR connections") introduced in kernel 5.0.15. This problematic change is also present in 5.1.x kernels as well as git master.
RedHat asset Hans de Goede reports that the bug reports detailing this issue are piling up. RedHat bugzilla bugs 203643, 1711468, 1713871 and 1713980 are filled with stories from frustrated users who are affected by this total scandal.
In an e-mail to the kernel mailing list Hans de Goede proposes that commit d5bb334a8e17 is simply reverted until a proper fix can be made or summer's over and nobody cares about old Bluetooth speakers anymore. Kernel 5.0 is of course EOL so Bluetooth will remain broken in that kernel branch forever.
We do wonder if a fix for this will warrant a now-standard "you must upgrade now" message which has been attached to the last 3 kernel releases. It does not seem like the standards for adding that are very high and no working Bluetooth is a serious issue which can have a large negative impact on people's happiness. We hope a fix will be forthcoming or that the patch which broke Bluetooth is reversed until a proper fix can be implemented.
published 2019-06-10 - last edited 2019-06-20