Bluetooth issues on Ubuntu 24.04.04

Ubuntu Version

Ubuntu 24.04 LTS

Desktop Environment (if applicable)

GNOME

Problem Description

Bluetooth not working, not able to connect to devices (even though it worked the night before the update).
When I go to settings → bluetooth and then toggle the button to enable it, it automatically turns off even though on terminal it says bluetooth is running.

Relevant System Information

hostnamectl
Static hostname: krish-home-pc
Icon name: computer-desktop
Chassis: desktop :desktop_computer:
Machine ID: 0fbe36d2ea1f48e6b72e5e2daee27c40
Boot ID: 824da9698cc743e8b1172ee76bf49f63
Operating System: Ubuntu 24.04.4 LTS
Kernel: Linux 7.0.0-31-generic
Architecture: x86-64
Hardware Vendor: ASUS
Hardware Model: ROG STRIX B850-F GAMING WIFI
Firmware Version: 1028
Firmware Date: Tue 2025-04-29
Firmware Age: 1y 4month 1w

Error Messages / Logs

● bluetooth.service - Bluetooth service
     Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; preset: enabled)
     Active: active (running) since Sat 2026-09-05 12:30:05 IST; 4s ago
       Docs: man:bluetoothd(8)
   Main PID: 7352 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 34587)
     Memory: 988.0K (peak: 1.7M)
        CPU: 34ms
     CGroup: /system.slice/bluetooth.service
             └─7352 /usr/libexec/bluetooth/bluetoothd

Sep 05 12:30:05 krish-home-pc systemd[1]: Started bluetooth.service - Bluetooth service.
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: Starting SDP server
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support csip plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: profiles/audio/micp.c:micp_init() D-Bus experimental not enabled
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support micp plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support vcp plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support mcp plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support bass plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: src/plugin.c:plugin_init() System does not support bap plugin
Sep 05 12:30:05 krish-home-pc bluetoothd[7352]: Bluetooth management interface 1.23 initialized

sudo dmesg | grep -i bluetooth   
[    6.510082] Bluetooth: Core ver 2.22
[    6.516678] NET: Registered PF_BLUETOOTH protocol family
[    6.516681] Bluetooth: HCI device and connection manager initialized
[    6.516686] Bluetooth: HCI socket layer initialized
[    6.516689] Bluetooth: L2CAP socket layer initialized
[    6.516696] Bluetooth: SCO socket layer initialized
[    6.672109] Bluetooth: hci0: HW/SW Version: 0x00000000, Build Time: 20260605184935
[    6.817850] Bluetooth: hci0: Wrong op received 1 expected 6
[    6.817857] Bluetooth: hci0: Failed to send wmt func ctrl (-5)
[    6.817861] Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
[    8.463782] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    8.463788] Bluetooth: BNEP filters: protocol multicast
[    8.463798] Bluetooth: BNEP socket layer initialized

### What I've Tried
Not even a `sudo systemctl restart bluetooth` fixed it.
Tried restarting multiple times as well.
Checked all the `sudo apt update` and `sudo apt upgrade` regular steps too.

The clue in your dmesg is “Failed to send wmt func ctrl (-5)” :wink:

Your ASUS ROG board has a MediaTek WiFi/Bluetooth chip. In the 7.0 kernel, the WMT firmware loader glitches during warm reboots, leaving the Bluetooth chip stuck in a frozen state where it rejects commands.

You might laugh, but try this simple trick :laughing:

1. Shut down your PC completely.

2. Unplug the power cable from the wall for 30-60 seconds to let the motherboard capacitors fully drain.

3. Plug it back in and turn the PC on.

A true cold boot cuts standby power to the MediaTek chip and hard-resets its firmware. In almost every case, Bluetooth springs right back to life!

If it returns on warm reboots, booting the 6.17 kernel in GRUB avoids this 7.0 WMT timing bug :grinning_face:

2 Likes

No way something this simple worked….

Thanks.

2 Likes

This topic was automatically closed 18 hours after the last reply. New replies are no longer allowed.