-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bluetooth AX200 chipset: The Pad is Still Flashing fast #270
Comments
This may be a duplicate as @lights0123 pointed out. But just FTR, did you disable ERTM?
It should say |
The ERTM was and is disabled... (it say yes) I've pasted this in main config file [Policy] and nothing... I'm open to any suggest and if you explain the procedures I can post here any information is required for find out the problem... thanks. |
At this point it seems very likely that the driver for your onboard Bluetooth chip is lacking some features. Are you able to try a USB Bluetooth dongle? A cheap one would do but it should be Bluetooth 4.0 capable at least. What gamepad model are we talking about anyways? You didn't post the output of |
I have not a dongle at the moment.... but if it can help I've connected the controller to an android 10 phone successfully yesterday i run an update so the current system now is: the controller is an xbox series X | S (blue colored) I haven't post the output of dmesg becouse I didn't know how to do... I hope I've done this correctly if it is not correct please talk like I am a terminal |
Okay, opening drkshw shell prompt now: :-D
Your controller is a BLE controller, so you probably need to enable Bluetooth privacy mode as outlined in the other reports. You can add that to the Bluez configuration file. If every prerequisite has been setup correctly, you may need to remove your controller from bluez before starting the pairing process. You can use
|
I've turned on the privacy flag by doing power off, privacy on, power on in btmgmt this is the dmesg result this is what I've done on the second terminal sudo bluetoothctl |
I've done a btmon command while attempting to pair if it could help |
There's nothing logged to dmesg, xpadneo even doesn't become active. "Authentication failed" usually means ERTM is still turned on, or privacy is missing. Please edit |
Privacy is set to device in the main.conf yet. and when I send is any other place where this ERTM needs to be disabled I have no clue of what is going on @-@ |
It's very likely your internal Bluetooth doesn't support the exact features required by this controller, and the controller is very picky about this anyways. Your best chance seems to be trying with a dedicated USB dongle. Apparently, I cannot give any recommendation here because your controller uses BLE, and the ones I own do use traditional Bluetooth, so any recommendation may be wrong because it may not work for BLE. Other people here who successfully managed to get the BLE controller running may share their setup. |
I've got an Update... I I bought an Asus USB-BT400 Nano Bluetooth Stick, it supports bt 4.0 and the controller now is connected and works perfectly. No Issue at all even with xpadneo. So the problem is in the driver of my internal bt I guess... |
Hi, I'm seeing similar behaviour on my end with the AX200 chip on my ASUS B550-i. One thing I would like to add is that I see some traces from bluetoothd: bluetoothd[584]: profiles/deviceinfo/deviceinfo.c:read_pnpid_cb() Error reading PNP_ID value: Request attribute has encountered an unlikely error And this happens everytime the controller tries to connect. Running bluetoothd version 5.55 |
If problems remain, please check the following settings in your Bluez configuration:
|
Closes: atar-axis#270 Signed-off-by: Kai Krakow <kai@kaishome.de>
Hi, Some info:
|
@witem Usually, with ERTM disabled, you should get past the reconnect loop. But sometimes it may not work. If you're using Other people had success transplanting a link key from an established Windows Bluetooth connection but I don't remember a link to a proper list of instructions on how to do that. Also, it sometimes helps to pair the controller to a Windows box (using the original dongle) first. While at it, you should also check if the latest firmware is installed using the Xbox accessories app. If you have no access to Windows but own the original dongle, there's a pretty easy way to download an official eval copy of Windows 10 from Microsoft as ISO, install it in a qemu or VirtualBox VM, enable USB passthrough for the dongle and just pair and update it. |
I try many times using |
I think there are still some features missing in the Linux Bluetooth stack. Will it pair to an Android phone for you? (which is closest to Linux as it uses the Linux kernel but fluoride instead of bluez for Bluetooth) |
Also, I started writing in the bluetooth mailing list: https://lore.kernel.org/linux-bluetooth/CAC2ZOYuG_BBG0uisXkoTtroxwgvv+JO-yMFC2+bRQZjsvwK1qw@mail.gmail.com/T/#u We should probably get one combination of hardware working properly first, then port over the required fixes and quirks to other drivers. |
Yes, with Android it's pair, connect and works good |
While that test doesn't test just one thing alone (bluez vs fluoride) because your Android uses different drivers, things are still pointing towards bluez as the problem. We already covered different drivers, and except some quirks (spontaneous connection loss, laggy input), they all behave more or less the same (except some onboard Intel chips). I'm pretty sure the kernel drivers are pretty solid at this point (if you're using kernel 5.10+). So we should probably shift focus towards bluez versions. |
Closes: atar-axis#270 Signed-off-by: Kai Krakow <kai@kaishome.de>
Closes: #270 Signed-off-by: Kai Krakow <kai@kaishome.de>
I'm still having the "unlikely error" on an AX200 chipset (integrated into my motherboard). This is on kernel 5.12, regardless of ERTM. |
@c-x-berger Could you try with a USB Bluetooth dongle so we could rule out other factors? |
Unfortunately, I don't have a dongle or another machine with a non-AX200 chipset. I've tried updating the controller firmware on Windows, and that didn't improve anything either. |
@kakra I did a test with a TP-Link dongle (and kernel 5.12):
AX200:
|
In wired mode, you're not using xpadneo as the driver. Which driver are you using? It should not be too different for rumble. Which software did you use to compare it? There's a difference with some drivers which allow sending too high rumble strengths to the motors (0-255) while only 0-100 is allowed, and compensate for that by dividing rumble power by 4 (which ends up with 0-63), so xpadneo would actually be more correct here. But timing should be the same. However, the other driver may not use ff-memless which could make a difference. But without knowing about the other driver you're using for USB, this is pure speculation. |
Xpad driver. Actually just ran another test with the controller wired, There was no rumble at all. I was doing a quick test with the game Furi via Steam and Proton. I just did a full retest again: So I might actually have missinterpreted the rumble, its the impulse triggers (wasn't aware that that was a thing, so thats my bad) that are acting wild. Maybe the Xpad driver doesn't support that feature and thats why there is no feedback when running wired. Retested with https://gamepad-tester.com/ both wireless and wired, rumble is equal as far as I can tell. |
Yes, xpad doesn't support the impulse triggers. Neither does the Linux kernel. However, xpadneo uses a trick to make them work by using the higher amplitude of both main rumble motors, and then applying it to the impulse triggers based on how far those are pressed currently. This works quite well for many games, and I actually think it works very well for Cyberpunk 2077 while driving the car. |
I have ax200 and xbox series x controller on kernel 5.12. I get the rumble as described but the controller keeps blinking. Works perfectly fine in Windows 10 on same PC. Gigabyte x570 Aorus Master motherboard. Is there anything you need to assist debugging? EDIT: I have tried disabling ERTM I have tried using a dongle too (Bus 003 Device 007: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)), oddly I can't even get to the rumble. In both cases the controller only shows up in a scan if I open the system bluetooth page while doing a scan in bluetoothctl. dmesg shows this for my controller
|
From kernel 5.12, ERTM should be enabled (thus But besides that, the Ax200 chipset seems to have several problems in Linux, not only with the Xbox gamepads. I think the Ax200 driver is still under heavy development. For the CSR dongles: There seems to exists a lot of clone/fake chipsets that don't work that well. But you can try a few things: Upgrade bluez to the latest version, enable ERTM in kernel 5.12, disable before 5.12, try to get a CSR dongle from a well known vendor (mine is from TP-LINK, it works fine, model BT-400), pair the controller to your mobile phone, then try to pair it with Linux again, use a Windows box to upgrade the controller firmware to its latest version (Xbox Accessories app). |
Okay I'm retarded, I was not pressing the pair button on the controller (paired flawlessly first try as per instructions). For some reason it's not necessary to press pair on the controller for me in Windows but is required here otherwise all hell breaks loose! Works perfectly so far, tested in steam games natively like super meat boy and even with proton like fallout 76, button mappings are correct. For reference my kernel is 5.12.6-xanmod1 and I am on Pop!_OS with AX200 chipset. Motherboard is Gigabyte X570 Aorus Master (rev 1.0). Controller is Xbox Series X controller. Maybe the website should say AX200 works fine now? Presently it suggests it doesn't work at https://atar-axis.github.io/xpadneo/ |
Yeah, there's a problem with the HCI event ordering: bluez/bluez#127 One can work around this by putting the gamepad into pairing mode (hold connect), then manually connect from the Bluetooth GUI applet. |
@kakra Seems this bug doesn't exist for me, maybe it has been fixed? I can turn my controller off and on repeatedly after initial pairing without needing to put it in pairing mode. The controller connects rapidly and vibrates every time. For the initial pairing I needed to press pair and then I paired it in bluetoothctl as the instructions specified but for subsequent reconnects I haven't even needed to click anything other than turning the controller on with a single press of the Xbox button.
|
I needed to update the firmware (by using the xbox app thingy from Microsoft). After that everything seemed to work great. Kernel: 5.12.9-arch1-1 |
After using the controller (1914) for a while, I can confirm that everything seems to work as expected
If anybody needs me to test anything else just tell me. |
This is most likely a duplicate of #295 and isn't related to AX200 at all. |
What was the model of Bluetooth card? AX200? I couldn't find this information, I just found the start of the OUI and it just inform is Intel. |
I can provide a data point: Did not work on my AX200 ( NixOS unstable with kernel 6.6.10, which as of now has xpadneo 0.9.5 and bluez 5.70. Plugged in a UGREEN Realtek radio ( |
Odd, Pop!_OS 22.04 with kernel 6.6.6 works fine with xpadneo and |
It's a Starfield Edition controller, so I'd be very surprised if the firmware is older than the last post in this thread, but I'll check tomorrow! Edit: turns out the firmware's outdatedness was matched to Starfield's game design, unexpected! |
Some controllers are still shipping with the 4.x firmware version because that probably better matches with older or unpatched Xbox consoles. Then, firmware patching would occur the first time you connect the controller to a newer/updated Xbox console. There must be a reason why MS has a partially secret but official downgrade path from 5.x to 4.x firmware. |
Version of xpadneo
0.9
Severity / Impact
Describe the bug
the pad does not connect correctly, I've followed the steps in the guide, bluetoothctl says that is paired and connected and actually the pad rumbles but the light is still flashing fast and is not working
Steps to Reproduce
on manjaro distro install the driver then follow the guide... (aorus b450 pro wifi 1.0, bt integrated)
Expected behavior
the light stops flashing and the pad is working
Screenshots/Gifs
System information
Controller and Bluetooth information
Index list with 1 item
hci0: Primary controller
addr DC:1B:A1:xx:xx:xx version 10 manufacturer 2 class 0x3c0104
supported settings: powered connectable fast-connectable discoverable bondable link-security ssp br/edr hs le advertising secure-conn debug-keys privacy configuration static-addr phy-configuration wide-band-speech
current settings: powered connectable discoverable bondable ssp br/edr le secure-conn
name drk-Mainframe
short name
hci0: Configuration options
supported options: public-address
missing options:
The text was updated successfully, but these errors were encountered: