I’ve got a PS5 (dualsense) controller that I’ve successfully connected (and trusted) via bluetooth. Here’s the info from blueoothctl followed by info <device-id>:
Device 48:18:8D:68:A6:61 (public)
Name: Wireless Controller
Alias: ps5-con
Class: 0x00002508 (9480)
Icon: input-gaming
Paired: yes
Bonded: no
Trusted: yes
Blocked: no
Connected: yes
WakeAllowed: no
LegacyPairing: no
UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
Modalias: usb:v054Cp0CE6d0100
But in steam and retroarch, the controller does not appear nor does it give any input. I have confirmed that it works if plugged in via usb. For log files, this is all I could find with journalctl:
Aug 20 21:22:59 nix-tower bluetoothd[842]: profiles/input/device.c:hidp_add_connection() Rejected connection from !bonded device /org/bluez/hci0/dev_48_18_8D_68_A6_61
Aug 20 21:26:18 nix-tower sudo[189398]: thain : TTY=pts/1 ; PWD=/home/thain ; USER=root ; COMMAND=/run/current-system/sw/bin/bluetoothctl
and finally, with dmesg, this appears when it connects:
[215840.062400] Bluetooth: hci0: No such BR/EDR device 48:18:8d:68:a6:61 (0x0)
I’ve tried rebooting the system, unpairing/repairing the controller, restarting steam/retroarch, but nothing works. Lastly, I do have relevant udev rules in my config:
services.udev.extraRules = ''
# PS5 DualSense controller over USB hidraw
KERNEL=="hidraw*", KERNELS=="*054C:0CE6*", MODE="0660", TAG+="uaccess"
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660", TAG+="uaccess"
# Steam Controller udev write access
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"
'';
hardware.uinput.enable = true;
hardware.bluetooth = {
enable = true;
powerOnBoot = true;
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
Experimental = true;
AutoEnable = true;
ControllerMode = "bredr";
};
};
};
Any ideas how I can get this working on bluetooth, please?

