My dualshock controllers report different names when connected using USB and bluetooth. I think they should report the same name, as it is the same controller. Could this be the reason for some games not correctly discovering the dualshock-controllers when using bluetooth? I know my Steam installation is having trouble correctly detecting my Dualshock 4 when connected with bluetooth. It works as expected if connected with USB. These are my findings: Dualshock 4v2 USB: Input driver version is 1.0.1 Input device ID: bus 0x3 vendor 0x54c product 0x9cc version 0x8111 Input device name: "Sony Interactive Entertainment Wireless Controller” Bluetooth: Input driver version is 1.0.1 Input device ID: bus 0x5 vendor 0x54c product 0x9cc version 0x8100 Input device name: "Wireless Controller" Dualshock 3: Wired: Input driver version is 1.0.1 Input device ID: bus 0x3 vendor 0x54c product 0x268 version 0x111 Input device name: "Sony PLAYSTATION(R)3 Controller” Bluetooth: Input driver version is 1.0.1 Input device ID: bus 0x5 vendor 0x54c product 0x268 version 0x100 Input device name: "PLAYSTATION(R)3 Controller"
Created attachment 257819 [details] bluez patch for sixaxis I had the same problem with my Dual Shock 3. I actually wrote a patch that fixes this issue and sent it to the bluez mailing list, but I got no responses. Maybe I should poke them again...
At least in the USB case (need trace BT kernel path) the device strings just come from the device. Applications typically don't use (and should not use) strings, but instead use hardware device ids. In case of steam in early 2017, I'm not sure if they handled the new ds4 model yet and maybe because of that fell back to strings, but that's just a guess.