I got myself a Ryzen Threadripper 7980X and a motherboard from Asus, Pro WS TRX50-SAGE WIFI. Most of the things work fine and after updating my Linux kernel to 6.7.0 and added the latest firmware patches from Mediatek I even got WiFi working.
The issue I have is that I can’t for the life of me get bluetooth working. When I contacted Asus support they just flat out told me they don’t support Linux which seems really stupid since it’s a workstation-class motherboard.
Does anyone have any ideas for what I can do to make bluetooth work? It seems to be a MediaTek mt7925 card and it seems to work under Windows. I have also tried applying patches to my kernel that seem relevant (patches from MediaTek mentioning mt7925) without any luck.
The error I see in dmesg is 16 (busy) on the device when sending the first command to it. hci0: Opcode 0x0c03 failed: -16
The BT firmware is separate from the WiFi firmware, you may have to fish it out of the Windows driver: +#define FIRMWARE_MT7925 "mediatek/mt7925/BT_RAM_CODE_MT7925_1_1_hdr.bin"
I think that patch has already landed in 6.7.0 but I could be wrong, I will try adding this patch to my kernel to see what it says.
edit: Can confirm that the patch is already applied.
I’m on nixos and created a small package that pulls in the latest firmware from here: git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git. This gives me the following files:
> ls result/lib/firmware/mediatek/mt7925
BT_RAM_CODE_MT7925_1_1_hdr.bin
WIFI_MT7925_PATCH_MCU_1_1_hdr.bin
WIFI_RAM_CODE_MT7925_1_1.bin
Is there a way to “force” it to load the firmware?
From my testing mt7925e module gets wifi working, which makes sense since it’s on the PCIe bus (as you pointed out in Discord @rv6502) but then logically the bluetooth should work with mt7825u which is the usb module, but it seems like it’s not pulling in the firmware with tat.
Hello, sorry I didn’t visit the forum in a bit. I “found” the solution by writing a patch to the Linux kernel that adds the card so that it loads the correct firmware. I’m not sure if this patch has landed in mainline yet but it was accepted by the bluetooth people.
Bluetooth is still “spotty” and the range on my bluetooth connection is much worse than on my laptop even though we have the “shark fin”. I assume this has to be fixed in the firmware however so nothing we as users can do.
I’m here 6 months later with the same problem running Debian 12. I just backported the kernel to 6.10.6 thinking the new drivers should be in there, but neither the Wi-Fi nor Bluetooth is being detected.
So, it’s been a hot minute for this issue, but the 6.12.6 kernel has my Mediatek 7925 Bluetooth functioning on Z890; looks like it was commit 058067b73b9da46f69c374097ad249aa06cd19e2 that got thrown in with 6.12.5.
Kind of a long time for a “fix”, but it also appears that the MT7925 has become very common in both Intel and AMD desktop boards; the Gigabyte Z890 board I have appears to have multiple options depending on luck of the draw, and I just happened to get one with the Mediatek chip.
My bluetooth is back on. I tried disabling bluetooth in the BIOS and (cold) restarting a couple times, with no effect.
What seems to have done the job was changing IOMMU in the BIOS from AUTO to ENABLED.
I am not totally confident this is the real solution because the problem appeared (that is, bluetooth disappeared) after months of working properly with kernel version 6.11, prior to any firmware updates.
As usual, the real solution is to never turn your computer off after it turns on with everything you need.
I have a similar story, but weirder.
My TRX50-SAGE’s bluetooth was working fine for months running Fedora 40. My last kernel version was 6.11.4-201.fc40.x86_64.
However, after a reboot, the bluetooth stopped working, which brought me to this thread.
I just upgraded to kernel 6.12.8 with no luck. I keep having the same issue reported here.
Does anyone have any updates or suggestions for debugging or solving the issue?