Support for Street Fighter Pad

Bug #933258 reported by Zombie Ryushu on 2012-02-16
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
QtSixA
Undecided
Unassigned

Bug Description

Can you add support for the PS3 Street Fighter "Fight Pad" (The Mad Catz RF Pad)

falkTX (falk-t-j) wrote :

I would love to support this, but I don't have access to the hardware itself.

would you be willing to donate a little to support the costs?

On 02/20/2012 09:21 AM, falkTX wrote:
> I would love to support this, but I don't have access to the hardware
> itself.
>
> would you be willing to donate a little to support the costs?
>
I own one currently, and if you like, what I can do is provide you with
information with my system. Let's try that, I can give you the results
of evtest, or jstest, and any other information you request. Instruct
me, how, if that fails, then I will subsidize a controller in march for you.

falkTX (falk-t-j) wrote :

fair enough for me.

I'm currently busy with other stuff at the moment, but nothing stops you from giving me information about the device.
1- device ID as reported by 'lsusb' (connect it over usb and use 'lsusb', you should have some XXXX:YYYY code)
2- jstest information, run it and report me number of axis and buttons. also which button and axis number maps to what buttons on the hardware
3- event dump, run 'sudo hidraw-dump /dev/hidrawX' with it connected over USB. it should print a consistent hexadecimal data. do some analisys to figure out which the codes, like:

0xA0 0x00 0x01 0x00 ....

and report to me the values in order, which in this example could be:
0xA0 - static value, never changes
0x00 - same
0x01 - button #1
0x00 - button #2

then go for line 2, etc until you find a blank newline in hidraw-dump's output.

some of the dumped events may correspond to voltage, battery status, connection status, or other.

thanks in advance!

Zombie Ryushu (zombie-ryushu) wrote :

I shall compose a report. this device uses a USB Dongle, it currently
works fine with an ordinary HID Driver, the problem is, no Quadrant
lights light up.

Zombie Ryushu (zombie-ryushu) wrote :

lsusb
Bus 003 Device 004: ID 0738:8828 Mad Catz, Inc.

On, Idle

00 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 D2

Off Idle

00 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 97

X Depressed

02 00 0F 80 80 80 80 00 00 00 00 00 00 FF 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 C6

Square Depressed

01 00 0F 80 80 80 80 00 00 00 00 00 00 00 FF 00
00 00 00 FF 01 A0 01 00 02 FF 01 DF

Triangle Depressed

08 00 0F 80 80 80 80 00 00 00 00 FF 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 88

Circle Depressed

04 00 0F 80 80 80 80 00 00 00 00 00 FF 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 98

80 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 FF FF 01 A0 01 00 02 FF 01 5E

R2 Depressed

80 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 FF FF 01 A0 01 00 02 FF 01 29

R1 Depressed

20 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
FF 00 00 FF 01 A0 01 00 02 FF 01 E0

L2 Depressed

40 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 FF 00 FF 01 A0 01 00 02 FF 01 B8

L1 Depressed

10 00 0F 80 80 80 80 00 00 00 00 00 00 00 00 FF
00 00 00 FF 01 A0 01 00 02 FF 01 9F

Select Depressed

00 01 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 66

Start Depressed

00 02 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 EF

Home Depressed

00 10 0F 80 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 2C

Left Stick up

00 00 0F 80 00 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 4D

Left Stick Down

00 00 0F 80 FF 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 4F

Left Stick Right

00 00 0F FF 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 EA

Left Stick Left

00 00 0F 00 80 80 80 00 00 00 00 00 00 00 00 00
00 00 00 FF 01 A0 01 00 02 FF 01 87

Zombie Ryushu (zombie-ryushu) wrote :

$ jstest /dev/js0
Driver version is 2.1.0.
Joystick (Mad Catz,Inc. PS3 RF pad) has 6 axes (X, Y, Z, Rz, Hat0X, Hat0Y)
and 13 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 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:offAxes: 0: 0 1: 0 2: 0 3: 0 4: 0 5: 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

Zombie Ryushu (zombie-ryushu) wrote :

$ sudo evtest /dev/input/event2
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x738 product 0x8828 version 0x101
Input device name: "Mad Catz,Inc. PS3 RF pad"
Supported events:
  Event type 0 (Sync)
  Event type 1 (Key)
    Event code 304 (BtnA)
    Event code 305 (BtnB)
    Event code 306 (BtnC)
    Event code 307 (BtnX)
    Event code 308 (BtnY)
    Event code 309 (BtnZ)
    Event code 310 (BtnTL)
    Event code 311 (BtnTR)
    Event code 312 (BtnTL2)
    Event code 313 (BtnTR2)
    Event code 314 (BtnSelect)
    Event code 315 (BtnStart)
    Event code 316 (BtnMode)
  Event type 3 (Absolute)
    Event code 0 (X)
      Value 128
      Min 0
      Max 255
      Flat 15
    Event code 1 (Y)
      Value 128
      Min 0
      Max 255
      Flat 15
    Event code 2 (Z)
      Value 128
      Min 0
      Max 255
      Flat 15
    Event code 5 (Rz)
      Value 128
      Min 0
      Max 255
      Flat 15
    Event code 16 (Hat0X)
      Value 0
      Min -1
      Max 1
    Event code 17 (Hat0Y)
      Value 0
      Min -1
      Max 1
  Event type 4 (Misc)
    Event code 4 (ScanCode)
Testing ... (interrupt to exit)

Zombie Ryushu (zombie-ryushu) wrote :
Download full text (6.0 KiB)

Event: time 1329762130.278516, type 4 (Misc), code 4 (ScanCode), value 90002
Event: time 1329762130.278527, type 1 (Key), code 305 (BtnB), value 1
Event: time 1329762130.278647, -------------- Report Sync ------------
Event: time 1329762130.510518, type 4 (Misc), code 4 (ScanCode), value 90002
Event: time 1329762130.510527, type 1 (Key), code 305 (BtnB), value 0
Event: time 1329762130.510647, -------------- Report Sync ------------
Event: time 1329762135.046561, type 4 (Misc), code 4 (ScanCode), value 90001
Event: time 1329762135.046570, type 1 (Key), code 304 (BtnA), value 1
Event: time 1329762135.046694, -------------- Report Sync ------------
Event: time 1329762135.310562, type 4 (Misc), code 4 (ScanCode), value 90001
Event: time 1329762135.310571, type 1 (Key), code 304 (BtnA), value 0
Event: time 1329762135.310694, -------------- Report Sync ------------
Event: time 1329762136.998580, type 4 (Misc), code 4 (ScanCode), value 90001
Event: time 1329762136.998589, type 1 (Key), code 304 (BtnA), value 1
Event: time 1329762136.998713, -------------- Report Sync ------------
Event: time 1329762137.822586, type 4 (Misc), code 4 (ScanCode), value 90001
Event: time 1329762137.822595, type 1 (Key), code 304 (BtnA), value 0
Event: time 1329762137.822719, -------------- Report Sync ------------
Event: time 1329762138.966606, type 4 (Misc), code 4 (ScanCode), value 90004
Event: time 1329762138.966616, type 1 (Key), code 307 (BtnX), value 1
Event: time 1329762138.966730, -------------- Report Sync ------------
Event: time 1329762139.486620, type 4 (Misc), code 4 (ScanCode), value 90004
Event: time 1329762139.486629, type 1 (Key), code 307 (BtnX), value 0
Event: time 1329762139.486766, -------------- Report Sync ------------
Event: time 1329762144.022668, type 4 (Misc), code 4 (ScanCode), value 90003
Event: time 1329762144.022677, type 1 (Key), code 306 (BtnC), value 1
Event: time 1329762144.022797, -------------- Report Sync ------------
Event: time 1329762144.326656, type 4 (Misc), code 4 (ScanCode), value 90003
Event: time 1329762144.326665, type 1 (Key), code 306 (BtnC), value 0
Event: time 1329762144.326782, -------------- Report Sync ------------
Event: time 1329762147.254689, type 4 (Misc), code 4 (ScanCode), value 90005
Event: time 1329762147.254697, type 1 (Key), code 308 (BtnY), value 1
Event: time 1329762147.254809, -------------- Report Sync ------------
Event: time 1329762147.558690, type 4 (Misc), code 4 (ScanCode), value 90005
Event: time 1329762147.558699, type 1 (Key), code 308 (BtnY), value 0
Event: time 1329762147.558810, -------------- Report Sync ------------
Event: time 1329762148.318717, type 4 (Misc), code 4 (ScanCode), value 90007
Event: time 1329762148.318726, type 1 (Key), code 310 (BtnTL), value 1
Event: time 1329762148.318854, -------------- Report Sync ------------
Event: time 1329762148.622709, type 4 (Misc), code 4 (ScanCode), value 90007
Event: time 1329762148.622717, type 1 (Key), code 310 (BtnTL), value 0
Event: time 1329762148.622823, -------------- Report Sync ------------
Event: time 1329762150.358731, type 4 (Misc), code 4 (ScanCode), value 90008
Event: time 1329762150.358740, type 1 (Key), code 311 (BtnTR), value ...

Read more...

Zombie Ryushu (zombie-ryushu) wrote :

Bus 003 Device 002: ID 0738:8828 Mad Catz, Inc.
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 1.10
  bDeviceClass 0 (Defined at Interface level)
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 64
  idVendor 0x0738 Mad Catz, Inc.
  idProduct 0x8828
  bcdDevice 3.13
  iManufacturer 1 Mad Catz,Inc.
  iProduct 2 PS3 RF pad
  iSerial 0
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 41
    bNumInterfaces 1
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0x80
      (Bus Powered)
    MaxPower 100mA
    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.01
          bCountryCode 0 Not supported
          bNumDescriptors 1
          bDescriptorType 34 Report
          wDescriptorLength 137
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 10
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x02 EP 2 OUT
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 1
Device Status: 0x0000

falkTX (falk-t-j) wrote :

The information you gave me should be enough for now, many thanks!

I don't have time to work on this right now; I'll work when possible (preferably before 12.04 is released).

Zombie Ryushu (zombie-ryushu) wrote :
Download full text (8.3 KiB)

Bus 003 Device 005: ID 0738:8828 Mad Catz, Inc.
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 1.10
  bDeviceClass 0 (Defined at Interface level)
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 64
  idVendor 0x0738 Mad Catz, Inc.
  idProduct 0x8828
  bcdDevice 3.13
  iManufacturer 1 Mad Catz,Inc.
  iProduct 2 PS3 RF pad
  iSerial 0
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 41
    bNumInterfaces 1
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0x80
      (Bus Powered)
    MaxPower 100mA
    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.01
          bCountryCode 0 Not supported
          bNumDescriptors 1
          bDescriptorType 34 Report
          wDescriptorLength 137
          Report Descriptor: (length is 137)
            Item(Global): Usage Page, data= [ 0x01 ] 1
                            Generic Desktop Controls
            Item(Local ): Usage, data= [ 0x05 ] 5
                            Gamepad
            Item(Main ): Collection, data= [ 0x01 ] 1
                            Application
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Global): Physical Minimum, data= [ 0x00 ] 0
            Item(Global): Physical Maximum, data= [ 0x01 ] 1
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x0d ] 13
            Item(Global): Usage Page, data= [ 0x09 ] 9
                            Buttons
            Item(Local ): Usage Minimum, data= [ 0x01 ] 1
                            Button 1 (Primary)
            Item(Local ): Usage Maximum, data= [ 0x0d ] 13
                            (null)
            Item(Main ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Count, data= [ 0x03 ] 3
            Item(Main ): Input, data= [ 0x01 ] 1
                            Constant Array Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Usage Page, data= [ 0x01 ] 1
                            Generic Desktop Controls
            Item(Global): Logical Maximum, data= [ 0x07 ] 7
            Item(Global): Physical Maximum, data= [ 0x3b 0x01 ] 315
            Item(Global): Report Size, data= ...

Read more...

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers