SUMMARY When trying to use the Bluetooth pairing dialogue (bluedevil-wizard) to pair a DualSense controller, it fails to pair the device, leaving it in a state that is unable to connect. Same issue doesn't happen when 'manually' using `bluetoothctl` STEPS TO REPRODUCE 1. From either the widget or the System settings enable Bluetooth 2. Select to pair a new device 3. Turn on the controller in pairing mode (in my case PS button + three lines button) 4. Select the controller from the list and click to pair OBSERVED RESULT The controller will turn off mid-pairing, and the pairing window will show "The setup of DualSense Wireless Controller has failed". The controller will appear in the list of paired devices, but will be unable to be connected to (turning on the controller it will still be in a "awaiting for connection" mode, and trying to press the connect button in Plasma will result in a silent failure) EXPECTED RESULT Properly pair and connect the controller to the system and be able to automatically reconnect to it whenever turned off and on again and Bluetooth is enabled on the computer SOFTWARE/OS VERSIONS Operating System: CachyOS Linux KDE Plasma Version: 6.2.5 KDE Frameworks Version: 6.10.0 Qt Version: 6.8.1 Kernel Version: 6.12.10-2-cachyos (64-bit) Graphics Platform: Wayland Processors: 12 × Intel® Core™ i7-10750H CPU @ 2.60GHz Memory: 15.5 GiB of RAM Graphics Processor: Mesa Intel® UHD Graphics ADDITIONAL INFORMATION The device is only unable to pair when using the dialogue, using `bluetoothctl` in the terminal the pairing works fine and the device is able to automatically connect to the computer whenever turned off and on again The steps to connect trough `bluetoothctl` being: ``` $ bluetoothctl [bluetooth]# Agent registered [bluetooth]# scan on [bluetooth]# SetDiscoveryFilter success [bluetooth]# Discovery started ... [bluetooth]# trust 58:10:31:65:E4:FC [bluetooth]# [CHG] Device 58:10:31:65:E4:FC Trusted: yes [bluetooth]# Changing 58:10:31:65:E4:FC trust succeeded [bluetooth]# [CHG] Device 58:10:31:65:E4:FC Class: 0x00000508 (1288) [bluetooth]# [CHG] Device 58:10:31:65:E4:FC Icon: input-gaming [bluetooth]# pair 58:10:31:65:E4:FC Attempting to pair with 58:10:31:65:E4:FC [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Connected: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Bonded: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC WakeAllowed: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC ServicesResolved: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Paired: yes [DualSense Wireless Controller]# Pairing successful [DualSense Wireless Controller]# ``` (with the device being unpaired) When running `bluedevil-wizard` from the terminal and going trough the pairing attempt, I get the following lines: ``` $ bluedevil-wizard kf.bluezqt: PendingCall Error: "No discovery started" kf.bluezqt: PendingCall Error: "br-connection-create-socket" ``` Also, if I keep `bluetoothctl` opened in a terminal, but don't touch it (using only as a monitor for events) and use bluedevil-wizard for attempting to pair, the following appear: ``` [bluetooth]# Agent registered [bluetooth]# [CHG] Controller 8C:C6:81:96:17:9C Discovering: yes [bluetooth]# [NEW] Device 58:10:31:65:E4:FC DualSense Wireless Controller [bluetooth]# [CHG] Device 58:10:31:65:E4:FC RSSI is nil [bluetooth]# [CHG] Controller 8C:C6:81:96:17:9C Discovering: no [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Connected: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Bonded: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC WakeAllowed: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC ServicesResolved: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC Paired: yes [DualSense Wireless Controller]# [CHG] Device 58:10:31:65:E4:FC ServicesResolved: no [bluetooth]# [CHG] Device 58:10:31:65:E4:FC Connected: no [bluetooth]# [CHG] Device 58:10:31:65:E4:FC Trusted: yes ``` When looking at logs from `journalctl` after attempting to pair from bluedevil-wizard, the following appears: ``` jan 27 21:13:41 woods systemd[971]: Started Add Bluetooth Device - Add Bluetooth Device. ... jan 27 21:13:53 woods bluetoothd[727]: No matching connection for device ... jan 27 21:13:58 woods bluetoothd[727]: profiles/input/device.c:control_connect_cb() connect to 58:10:31:65:E4:FC: Host is down (112) jan 27 21:13:58 woods bluedevil-wizard[607123]: kf.bluezqt: PendingCall Error: "br-connection-create-socket" ``` While when pairing successfully with `bluetoothctl` the following logs appear: ``` jan 27 21:16:41 woods kernel: playstation 0005:054C:0CE6.000F: unknown main item tag 0x0 jan 27 21:16:41 woods kernel: playstation 0005:054C:0CE6.000F: hidraw1: BLUETOOTH HID v1.00 Gamepad [DualSense Wireless Controller] on 8c:c6:81:96:17:9c jan 27 21:16:41 woods kernel: input: DualSense Wireless Controller as /devices/virtual/misc/uhid/0005:054C:0CE6.000F/input/input62 jan 27 21:16:41 woods kernel: input: DualSense Wireless Controller Motion Sensors as /devices/virtual/misc/uhid/0005:054C:0CE6.000F/input/input63 jan 27 21:16:41 woods kernel: input: DualSense Wireless Controller Touchpad as /devices/virtual/misc/uhid/0005:054C:0CE6.000F/input/input64 jan 27 21:16:41 woods kernel: playstation 0005:054C:0CE6.000F: Registered DualSense controller hw_version=0x00000513 fw_version=0x01070008 ``` This issue might be related to https://bugs.kde.org/show_bug.cgi?id=484847 that was closed but am unsure for the lack of more logs and info there The computer I'm using is a laptop (Legion 5i) with a built in wireless card with Bluetooth functionality
I am seeing the same behavior with a MX Ergo mouse. I was able to pair it with bluetoothctl but not with bluedevil-wizard. I saw the same "No matching connection for device" message in the system log. I am using OpenSUSE Tumbleweed, kernel 6.14.1-1-default. My bluedevil version is 6.3.4-1.1.
SUMMARY When trying to use the Bluetooth pairing dialog (bluedevil-wizard) to pair a DualSense controller on Fedora 42 KDE, the pairing process fails, leaving the controller in an unusable state. Additionally, even when pairing manually using bluetoothctl, the controller does not reconnect automatically. Each time I want to use it, I have to manually remove and re-pair it via bluetoothctl, as reconnecting through the GUI does not work at all. STEPS TO REPRODUCE From either the widget or the System Settings, enable Bluetooth Select to pair a new device Put the controller in pairing mode (PS button + three lines button) Select the controller from the list and click to pair OBSERVED RESULT The controller turns off mid-pairing, and the pairing window shows: "The setup of DualSense Wireless Controller has failed." The controller appears in the list of paired devices but cannot be connected to. Turning on the controller leaves it in a "waiting for connection" state, and pressing the connect button in Plasma silently fails. Even when paired successfully using bluetoothctl, the controller does not reconnect automatically. Instead, I must remove and re-pair it every time I want to use it. Reconnecting through the GUI does not work at all. EXPECTED RESULT The controller should pair and connect properly to the system and automatically reconnect when powered on again, assuming Bluetooth is enabled.
Same issue, immidiatelly disocnnects on fedora 42 kde, and i isntalled @gnome package, and it works there, even keeps working on kde if I logout from gnoem and login into kde... its just issue when connecting, it immidiatelly disconnects. RCA: LOG: > ACL Data RX: Handle 71 flags 0x02 dlen 12 L2CAP: Connection Request (0x02) ident 4 len 4 PSM: 17 (0x0011) Source CID: 65 < ACL Data TX: Handle 71 flags 0x00 dlen 16 L2CAP: Connection Response (0x03) ident 4 len 8 Destination CID: 0 Source CID: 65 Result: Connection refused - PSM not supported (0x0002) Status: No further information available (0x0000) This log snippet shows: The DualSense controller requesting PSM 17 (HID control channel) The system refusing the connection with "PSM not supported" The controller disconnecting because it can't establish the HID connection "Controller tries to connect on PSM 17 (HID) but gets 'PSM not supported' error" "Connection disconnects with 'Remote User Terminated Connection'" How I solved it temporarary: This fixes the issue where a DualSense controller connects briefly and then immediately disconnects while maintaining Bluetooth autostart functionality. The issue is specific to KDE and related to missing HID (Human Interface Device) support. Create the bluetooth service override: sudo mkdir -p /etc/systemd/system/bluetooth.service.d/ sudo nano /etc/systemd/system/bluetooth.service.d/override.conf Add: [Service] ExecStartPost=/bin/sh -c "sleep 3; rfkill unblock bluetooth; /usr/bin/bluetoothctl power on" ExecStart= ExecStart=/usr/libexec/bluetooth/bluetoothd --experimental -p input Create the input configuration: sudo nano /etc/bluetooth/input.conf Add: [General] UserspaceHID = true ClassicBondedOnly = false IdleTimeout = 30 Create the udev rules: sudo nano /etc/udev/rules.d/99-dualsense.rules Add: KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0666" SUBSYSTEM=="usb", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0666" SUBSYSTEM=="input", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1" Set up kernel modules: sudo modprobe hid-generic sudo modprobe hid-sony sudo modprobe uhid echo "hid-generic" | sudo tee /etc/modules-load.d/hid.conf echo "hid-sony" | sudo tee -a /etc/modules-load.d/hid.conf echo "uhid" | sudo tee -a /etc/modules-load.d/hid.conf Apply changes: sudo udevadm control --reload-rules sudo systemctl daemon-reload sudo systemctl restart bluetooth The solution combines: Service Override: Ensures Bluetooth service starts with HID support and auto-enables Bluetooth Input Configuration: Configures proper HID handling Udev Rules: Sets correct permissions for DualSense hardware Kernel Modules: Loads necessary drivers for DualSense support It keeps controller always connected though, even at idle...
(In reply to Rijad from comment #3) > Same issue, immidiatelly disocnnects on fedora 42 kde, and i isntalled > @gnome package, and it works there, even keeps working on kde if I logout > from gnoem and login into kde... its just issue when connecting, it > immidiatelly disconnects. > RCA: > LOG: > > ACL Data RX: Handle 71 flags 0x02 dlen 12 > L2CAP: Connection Request (0x02) ident 4 len 4 > PSM: 17 (0x0011) > Source CID: 65 > < ACL Data TX: Handle 71 flags 0x00 dlen 16 > L2CAP: Connection Response (0x03) ident 4 len 8 > Destination CID: 0 > Source CID: 65 > Result: Connection refused - PSM not supported (0x0002) > Status: No further information available (0x0000) > This log snippet shows: > > The DualSense controller requesting PSM 17 (HID control channel) > The system refusing the connection with "PSM not supported" > The controller disconnecting because it can't establish the HID connection > > "Controller tries to connect on PSM 17 (HID) but gets 'PSM not supported' > error" > "Connection disconnects with 'Remote User Terminated Connection'" > > > How I solved it temporarary: > > This fixes the issue where a DualSense controller connects briefly and then > immediately disconnects while maintaining Bluetooth autostart functionality. > The issue is specific to KDE and related to missing HID (Human Interface > Device) support. > > Create the bluetooth service override: > > sudo mkdir -p /etc/systemd/system/bluetooth.service.d/ > sudo nano /etc/systemd/system/bluetooth.service.d/override.conf > Add: > [Service] > ExecStartPost=/bin/sh -c "sleep 3; rfkill unblock bluetooth; > /usr/bin/bluetoothctl power on" > ExecStart= > ExecStart=/usr/libexec/bluetooth/bluetoothd --experimental -p input > > Create the input configuration: > > sudo nano /etc/bluetooth/input.conf > Add: > [General] > UserspaceHID = true > ClassicBondedOnly = false > IdleTimeout = 30 > > Create the udev rules: > > sudo nano /etc/udev/rules.d/99-dualsense.rules > Add: > KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", > MODE="0666" > SUBSYSTEM=="usb", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", > MODE="0666" > SUBSYSTEM=="input", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", > MODE="0666", ENV{ID_INPUT_JOYSTICK}="1" > > Set up kernel modules: > > sudo modprobe hid-generic > sudo modprobe hid-sony > sudo modprobe uhid > echo "hid-generic" | sudo tee /etc/modules-load.d/hid.conf > echo "hid-sony" | sudo tee -a /etc/modules-load.d/hid.conf > echo "uhid" | sudo tee -a /etc/modules-load.d/hid.conf > > Apply changes: > > sudo udevadm control --reload-rules > sudo systemctl daemon-reload > sudo systemctl restart bluetooth > > The solution combines: > > Service Override: Ensures Bluetooth service starts with HID support and > auto-enables Bluetooth > Input Configuration: Configures proper HID handling > Udev Rules: Sets correct permissions for DualSense hardware > Kernel Modules: Loads necessary drivers for DualSense support > > It keeps controller always connected though, even at idle... Hi i tried your solution but sadly no luck. But i have to say im fairly new to linux :D is there anything else you did besides what you listed in your temp fix? Do i have to remove those config files later on when there is a proper fix for this? Thanks in advace
*** This bug has been marked as a duplicate of bug 495615 ***