Hi all, I wanted to report that basic functions of the DualShock4 work under Linux (USB connected), but I'd like to work on it to get everything working - like we have on the DualShock3.
Attached are a couple of logs and the report descriptor. Haptic/Rumble does not work, even though I have my machine patched to make DualShock3 work. If we look at the hidraw stream there's a lot (64 bytes) more there! -- $ hexdump -v -e '64/1 "%02x " "\n"' < /dev/hidraw0 -- Anyone here want to collaborate? Simon
Bus 003 Device 002: ID 054c:05c4 Sony Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x054c Sony Corp.
idProduct 0x05c4
bcdDevice 1.00
iManufacturer 1 Sony Computer Entertainment
iProduct 2 Wireless Controller
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 41
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 467
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 5
Device Status: 0x0000
(Bus Powered)
des.code
Description: Binary data
des.bin
Description: Binary data
Driver version is 2.1.0.
Joystick (Sony Computer Entertainment Wireless Controller) has 8 axes (X, Y, Z,
Rx, Ry, Rz, Hat0X, Hat0Y)
and 14 buttons (BtnX, BtnY, BtnZ, BtnTL, BtnTR, BtnTL2, BtnTR2, BtnSelect,
BtnStart, BtnMode, BtnThumbL, BtnThumbR, ?, ?).
Testing ... (interrupt to exit)
Axes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 6: 0 7:
0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off
9:off 10:off 11:off 12:off 13:off
Axes:
0: 0 L-Thumbstick X (left -ve)
1: 0 L-Thumbstick Y (up -ve)
2: 0 R-Thumbstick X (left -ve)
3: 0 L-Trigger (released -ve)
4: 0 R-Trigger (released -ve)
5: 0 R-Thumbstick Y (up -ve)
6: 0 D-Pad X (left -ve)
7: 0 D-Pad Y (up -ve)
Buttons:
0:off Square
1:off Cross
2:off Circle
3:off Triangle
4:off L1 (Shoulder)
5:off R1 (Shoulder)
6:off L2 (Trigger) - also axis
7:off R2 (Trigger) - also axis
8:off Share
9:off Options
10:off L-Thumbstick
11:off R-Thumbstick
12:off PS
13:off TouchPadDec 7 09:59:31 womble kernel: [ 190.548071] usb 3-2: new full-speed USB device number 2 using uhci_hcd Dec 7 09:59:31 womble kernel: [ 190.723988] usb 3-2: New USB device found, idVendor=054c, idProduct=05c4 Dec 7 09:59:31 womble kernel: [ 190.724001] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 Dec 7 09:59:31 womble kernel: [ 190.724039] usb 3-2: Product: Wireless Controller Dec 7 09:59:31 womble kernel: [ 190.724049] usb 3-2: Manufacturer: Sony Computer Entertainment Dec 7 09:59:32 womble mtp-probe: checking bus 3, device 2: "/sys/devices/pci0000:00/0000:00:1d.1/usb3/3-2" Dec 7 09:59:32 womble mtp-probe: bus: 3, device: 2 was not an MTP device Dec 7 09:59:32 womble kernel: [ 191.302128] usbcore: registered new interface driver usbhid Dec 7 09:59:32 womble kernel: [ 191.302135] usbhid: USB HID core driver Dec 7 09:59:32 womble kernel: [ 191.397030] input: Sony Computer Entertainment Wireless Controller as /devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.0/input/input7 Dec 7 09:59:32 womble kernel: [ 191.397438] hid-generic 0003:054C:05C4.0001: input,hidraw0: USB HID v1.11 Gamepad [Sony Computer Entertainment Wireless Controller] on usb-0000:00:1d.1-2/input0
