Hey Roderick, On Fri, 2020-12-18 at 22:23 -0800, Roderick Colenbrander wrote: > From: Roderick Colenbrander <roderick.colenbrander@xxxxxxxx> > > Hi, > > I am pleased to share a new Linux driver for the PlayStation 5 > 'DualSense' > game controller. The driver supports the DualSense in both Bluetooth > and USB modes. Most controller features are supported including LEDs, > Touchpad, Motion Sensors and Rumble. Excellent, this is a nice early holiday present :) I've just received a DualSense controller so I'll try to test this in the coming days. > DualSense supported is implemented in a new 'hid-playstation' driver, "hid-sony-playstation"? Not sure how much the input/hid tree maintainers will want to force this, but the same problem is going to show up for the hid-based XBox controller driver (hid-xbox, or hid- microsoft-xbox?) as hid-microsoft is as busy as hid-sony. > which > will be used for peripherals by 'Sony Interactive Entertainment' > (PlayStation). > Hid-sony will be used for devices for the larger Sony Group. We > intend to > migrate existing devices over time gradually to hid-playstation. We > do not > want to cause any regressions and maintain quality. As such moving > forward, > unit tests are important and we started by providing these through > 'hid-tools' > including DualSense. I know it's not your job to handle those, but be careful with not breaking the clone controllers. Plenty of folks use them, for better or for worse. > > The Linux driver exposes DualSense functionality as a 'compositive > device' > similar to DualShock 4 in hid-sony, spanning multiple frameworks. > First, > it exposes 3 evdev nodes for respectively the 'gamepad', 'touchpad' > and > 'motion sensors'. The FF framework is used to provide basic rumble > features. > The leds-class is used to implement the Player indicator LEDs below > the > DualSense's touchpad, while the new 'leds-class-multicolor' is used > for > the lightbars next to the touchpad. > > Not yet supported are new unique features introduced by the DualSense > such as Adaptive Triggers and the VCM based Haptics. These features > require > a large amount of data and complex data structures. It is not clear > how to > expose these. The current Evdev and FF frameworks are too limiting. > We hope > to have a dialog on how to expose these over time in a generic way. > > Enjoy the new DualSense driver and let us know if you have any > questions > or feedback. Is the audio jack on the controller already supported, or would that be part of the features that aren't supported yet? Do you think you might be able to share the information regarding how the cable pairing is done, so we can add this support to bluez? I'm fine with only sharing the implementation if you prefer to give me the details privately (or through my employer). Cheers