[Solved] cross-posted from: https://lemmy.world/post/41957406
Exact problem as this archwiki forum post
I have also tried everything and at last here I am asking for any help, otherwise I don’t think I would be able to continue using Linux on this laptop. I’ve tried everything from changing the kernel package to enabling all firmwares to using every kernel parameter I can find everything, nothing says any error or something anywhere. Only error i can find is
hci device capabilities -22
Edit: The patch i needed was to add the driver info in btusb.c file. In nixos this is how you do it
boot = {
kernelPatches = [
{
name = "add-realtek-8852ce-btusb";
patch = ./btusb.patch;
}
];
}
first what you should do is git clone the linux kernel version you are using check using uname -r
for me it was 6.12.(whatever, doesn’t matter)
git clone --depth=1 git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git v6.12
then find the btusb.c file in drivers/bluetooth/ and add the line
{ USB_DEVICE(0x13d3, 0x3612), .driver_info = BTUSB_REALTEK |
BTUSB_WIDEBAND_SPEECH },
after these lines
static const struct usb_device_id quirks_table[] = {
BTUSB_WIDEBAND_SPEECH },
{ USB_DEVICE(0x0cb8, 0xc558), .driver_info = BTUSB_REALTEK |
BTUSB_WIDEBAND_SPEECH },
now we have made chages to this file right? it will be shows in git diff, so now you should be able to do git diff > btusb.patch
this will create a .patch file, now copy this file to wherever folder you put the nixos configuration in, most likely /etc/nixos if not using custom config.
Thats it!, now rebuild the configuration and DONE.
props to @Maiq.
Author of patch: vedantsg123
I will try to get this patch upstream to not having to do this manually.


It’s good news at least that your hardware is working.
I’m unfamiliar with nixos, you might try using different kernels. Try the latest one and maybe a few kernels behind the one your using now.
Does your bt card need firmware?
I did try the latest kernel and also the 6.1 lts kernel with no luck.
I don’t know about the firmware. Can you tell me how to check that? Thank you.