Revision: 03.01.2014
Drafted: 03.01.2014

Game Controlls and the Web

This complements the main page.

Pad#2 Speedlink Thunderstrike

Next one is a no name bought at Conrad (again Euro 9.99). It's a PS-Style variation, but this time silent.

Packaging

Speedlink Thunderstrike package picture 1Speedlink Thunderstrike package picture 2

Basic Data

BrandnameSpeedlink
ProductnameThunderstrike
Product-IDSL-6515-BK(BK = Black)
USB Product String"Generic USB Joystick "
USB-VID0079DragonRise Inc.
USB-PID0006Generic USB Joystick
USB-REV0107
USB-Class(es)03/00/00
USB-Device (Windows)USBPDO-12
gamepad.id (Firefox)"79-6-Generic USB Joystick"
Layout StylePS
SwitchableYes: Default digital, switchable to Analogue
Detected parts in FireFox12 Buttons
6 Axis
Detected parts in Windows12 Buttons
4 Axis
1 8-Way Rocker/Hat

Guessing from a quick search, this controller (either just the chip or the whole device) is also sold as "SpeedLink Strike"

USB Descriptor Information from USB Device Tree Viewer

    =========================== USB Port3 ===========================

Connection Status        : Device is connected
Port Chain               : 1-5-1-3

      ======================== USB Device ========================

        +++++++++++++++++ Device Information ++++++++++++++++++
Device Description       : USB Input Device
Device ID                : USB\VID_0079&PID_0006\7&D2AC4E7&0&3
Driver KeyName           : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0014 (GUID_DEVCLASS_HIDCLASS)
Driver                   : C:\Windows\system32\DRIVERS\hidusb.sys (Version: 6.1.7601.17514  Date: 2010-11-21)
Legacy BusType           : PNPBus
Class                    : HIDClass
Service                  : HidUsb
Enumerator               : USB
Location Info            : Port_#0003.Hub_#0009
Location IDs             : PCIROOT(0)#PCI(1202)#USBROOT(0)#USB(5)#USB(1)#USB(3)
Container ID             : {52e0fb13-7246-11e3-bea4-bcaec58addcf}
Manufacturer Info        : (Standard system devices)
Capabilities             : Removable, SurpriseRemovalOK
Address                  : 3
Problem Code             : 0
Power State              : D0 (supported: D0, D2, D3, wake from D0, wake from D2)
 Child Device 1          : HID-compliant game controller
  Device ID              : HID\VID_0079&PID_0006\8&FFE1A2B&0&0000
  Class                  : HIDClass

        ---------------- Connection Information ---------------
Connection Index         : 0x03
Connection Status        : 0x01 (DeviceConnected)
Current Config Value     : 0x01
Device Address           : 0x05
Is Hub                   : 0x00 (no)
Number Of Open Pipes     : 0x02 (2)
Device Bus Speed         : 0x00 (Low-Speed)
Pipe0ScheduleOffset      : 0x01 (1)
Pipe1ScheduleOffset      : 0x02 (2)

        ------------------ Device Descriptor ------------------
bLength                  : 0x12 (18 bytes)
bDescriptorType          : 0x01 (Device Descriptor)
bcdUSB                   : 0x100 (USB Version 1.00)
bDeviceClass             : 0x00 (defined by the interface descriptors)
bDeviceSubClass          : 0x00
bDeviceProtocol          : 0x00
bMaxPacketSize0          : 0x08 (8 bytes)
idVendor                 : 0x0079
idProduct                : 0x0006
bcdDevice                : 0x107
iManufacturer            : 0x01
 Language 0x0409         : "DragonRise Inc.  "  *!*CAUTION  trailing space characters
iProduct                 : 0x02
 Language 0x0409         : "Generic   USB  Joystick  "  *!*CAUTION  trailing space characters
iSerialNumber            : 0x00
bNumConfigurations       : 0x01

        -------------- Configuration Descriptor ---------------
bLength                  : 0x09 (9 bytes)
bDescriptorType          : 0x02 (Configuration Descriptor)
wTotalLength             : 0x0029 (41 bytes)
bNumInterfaces           : 0x01
bConfigurationValue      : 0x01
iConfiguration           : 0x00
bmAttributes             : 0x80 (Bus Powered)
MaxPower                 : 0xFA (500 mA)

        ---------------- Interface Descriptor -----------------
bLength                  : 0x09 (9 bytes)
bDescriptorType          : 0x04 (Interface Descriptor)
bInterfaceNumber         : 0x00
bAlternateSetting        : 0x00
bNumEndpoints            : 0x02
bInterfaceClass          : 0x03 (HID - Human Interface Device)
bInterfaceSubClass       : 0x00 (None)
bInterfaceProtocol       : 0x00 (None)
iInterface               : 0x00

        ------------------- HID Descriptor --------------------
bLength                  : 0x09 (9 bytes)
bDescriptorType          : 0x21 (HID Descriptor)
bcdHID                   : 0x0110 (HID Version 1.10)
bCountryCode             : 0x21 (33 = US)
bNumDescriptors          : 0x01
Descriptor 1:
bDescriptorType          : 0x22 (Class=Report)
wDescriptorLength        : 0x0065 (101 bytes)
  05 01             Usage Page (Generic Desktop Controls)
  09 04             Usage (Joystick)
  A1 01             Collection (Application)
  A1 02               Collection (Logical)
  75 08                 Report Size (8)
  95 05                 Report Count (5)
  15 00                 Logical Minimum (0)
  26 FF 00              Logical Maximum (255)
  35 00                 Physical Minimum (0)
  46 FF 00              Physical Maximum (255)
  09 30                 Usage (Direction-X)
  09 31                 Usage (Direction-Y)
  09 32                 Usage (Direction-Z)
  09 32                 Usage (Direction-Z)
  09 35                 Usage (Rotate-Z)
  81 02                 Input (Var)
  75 04                 Report Size (4)
  95 01                 Report Count (1)
  25 07                 Logical Maximum (7)
  46 3B 01              Physical Maximum (315)
  65 14                 Unit (0x14)
  09 39                 Usage (Hat Switch)
  81 42                 Input (Var, NullState)
  65 00                 Unit (0x00)
  75 01                 Report Size (1)
  95 0C                 Report Count (12)
  25 01                 Logical Maximum (1)
  45 01                 Physical Maximum (1)
  05 09                 Usage Page (Buttons)
  19 01                 Usage Minimum (1)
  29 0C                 Usage Maximum (12)
  81 02                 Input (Var)
  06 00 FF              Usage Page (unk)
  75 01                 Report Size (1)
  95 08                 Report Count (8)
  25 01                 Logical Maximum (1)
  45 01                 Physical Maximum (1)
  09 01                 Usage (0x01)
  81 02                 Input (Var)
  C0                  End Collection
  A1 02               Collection (Logical)
  75 08                 Report Size (8)
  95 07                 Report Count (7)
  46 FF 00              Physical Maximum (255)
  26 FF 00              Logical Maximum (255)
  09 02                 Usage (0x02)
  91 02                 Output (Var)
  C0                  End Collection
  C0                End Collection

        ----------------- Endpoint Descriptor -----------------
bLength                  : 0x07 (7 bytes)
bDescriptorType          : 0x05 (Endpoint Descriptor)
bEndpointAddress         : 0x81 (Direction=IN  EndpointID=1)
bmAttributes             : 0x03 (TransferType=Interrupt)
wMaxPacketSize           : 0x08
bInterval                : 0x0A (10 ms)

        ----------------- Endpoint Descriptor -----------------
bLength                  : 0x07 (7 bytes)
bDescriptorType          : 0x05 (Endpoint Descriptor)
bEndpointAddress         : 0x01 (Direction=OUT  EndpointID=1)
bmAttributes             : 0x03 (TransferType=Interrupt)
wMaxPacketSize           : 0x08
bInterval                : 0x0A (10 ms)
Again rather funny Strings:
"DragonRise Inc.  "
"Generic   USB  Joystick  "
I realy wonder how come that two different controllers house the same mal formated Product string - is there any strange compatibility issue, oder just common copy and paste?

The HID Descriptor is a bit weired. It reports 5 axis values, two of them named 'Direction Z' (usage 04/32)

More over, why is there an additional OUT-pipe? The HID descriptor even offers a structure for it. This would make sense if we had some vibrator motors or such. No Idea.

USB Descriptor Information from TDD

Information for device Generic   USB  Joystick   (VID=0x0079 PID=0x0006): 

Connection Information:
------------------------------
Connection status: Device connected
Device actual bus speed: Low 
Device is hub: No
Device adress: 0x0005
Current configuration value: 0x01
Number of open pipes: 2

Device Descriptor:
------------------------------
0x12	bLength
0x01	bDescriptorType
0x0100	bcdUSB
0x00	bDeviceClass   
0x00	bDeviceSubClass   
0x00	bDeviceProtocol   
0x08	bMaxPacketSize0   (8 Bytes)
0x0079	idVendor
0x0006	idProduct
0x0107	bcdDevice
0x01	iManufacturer   "DragonRise Inc.  "
0x02	iProduct   "Generic   USB  Joystick  "
0x00	iSerialNumber
0x01	bNumConfigurations

Configuration Descriptor:
------------------------------
0x09	bLength
0x02	bDescriptorType
0x0029	wTotalLength
0x01	bNumInterfaces
0x01	bConfigurationValue
0x00	iConfiguration
0x80	bmAttributes   (Bus-powered Device)
0xFA	bMaxPower   (500 mA)

Interface Descriptor:
------------------------------
0x09	bLength
0x04	bDescriptorType
0x00	bInterfaceNumber
0x00	bAlternateSetting
0x02	bNumEndPoints
0x03	bInterfaceClass   (Human Interface Device Class)
0x00	bInterfaceSubClass   
0x00	bInterfaceProtocol   
0x00	iInterface

HID Descriptor:
------------------------------
0x09	bLength
0x21	bDescriptorType
0x0110	bcdHID
0x21	bCountryCode
0x01	bNumDescriptors
0x22	bDescriptorType   (Report descriptor)
0x0065	bDescriptorLength

Endpoint Descriptor:
------------------------------
0x07	bLength
0x05	bDescriptorType
0x81	bEndpointAddress   (IN Endpoint)
0x03	bmAttributes	(Transfer: Interrupt / Synch: None / Usage: Data)
0x0008	wMaxPacketSize   (8 Bytes) 
0x0A	bInterval

Endpoint Descriptor:
------------------------------
0x07	bLength
0x05	bDescriptorType
0x01	bEndpointAddress   (OUT Endpoint)
0x03	bmAttributes	(Transfer: Interrupt / Synch: None / Usage: Data)
0x0008	wMaxPacketSize   (8 Bytes) 
0x0A	bInterval

String Descriptor Table
--------------------------------
Index  LANGID  String
0x00   0x0000  0x0409 
0x01   0x0409  "DragonRise Inc.  "
0x02   0x0409  "Generic   USB  Joystick  "
0x03   0x0409  "A"
0x04   0x0409  "?"
0x05   0x0409  "DragonRise Inc.  "
0x06   0x0409  "Generic   USB  Joystick  "
0x07   0x0409  "A"
0x08   0x0409  "?"
0x09   0x0409  "DragonRise Inc.  "
0x0A   0x0409  "Generic   USB  Joystick  "
0x0B   0x0409  "A"
0x0C   0x0409  "?"
0x0D   0x0409  "DragonRise Inc.  "
0x0E   0x0409  "Generic   USB  Joystick  "
0x0F   0x0409  "A"
0x10   0x0409  "?"
0x11   0x0409  "DragonRise Inc.  "
0x12   0x0409  "Generic   USB  Joystick  "
0x13   0x0409  "A"
0x14   0x0409  "?"
0x15   0x0409  "DragonRise Inc.  "
0x16   0x0409  "Generic   USB  Joystick  "
0x17   0x0409  "A"
0x18   0x0409  "?"
0x19   0x0409  "DragonRise Inc.  "
0x1A   0x0409  "Generic   USB  Joystick  "
0x1B   0x0409  "A"
0x1C   0x0409  "?"
0x1D   0x0409  "DragonRise Inc.  "
0x1E   0x0409  "Generic   USB  Joystick  "
0x1F   0x0409  "A"
0x20   0x0409  "?"
0x21   0x0409  "DragonRise Inc.  "
0x22   0x0409  "Generic   USB  Joystick  "
0x23   0x0409  "A"
0x24   0x0409  "?"
0x25   0x0409  "DragonRise Inc.  "
0x26   0x0409  "Generic   USB  Joystick  "
0x27   0x0409  "A"
0x28   0x0409  "?"
0x29   0x0409  "DragonRise Inc.  "
0x2A   0x0409  "Generic   USB  Joystick  "
0x2B   0x0409  "A"
0x2C   0x0409  "?"
0x2D   0x0409  "DragonRise Inc.  "
0x2E   0x0409  "Generic   USB  Joystick  "
0x2F   0x0409  "A"
0x30   0x0409  "?"
0x31   0x0409  "DragonRise Inc.  "
0x32   0x0409  "Generic   USB  Joystick  "
0x33   0x0409  "A"
0x34   0x0409  "?"
0x35   0x0409  "DragonRise Inc.  "
0x36   0x0409  "Generic   USB  Joystick  "
0x37   0x0409  "A"
0x38   0x0409  "?"
0x39   0x0409  "DragonRise Inc.  "
0x3A   0x0409  "Generic   USB  Joystick  "
0x3B   0x0409  "A"
0x3C   0x0409  "?"
0x3D   0x0409  "DragonRise Inc.  "
0x3E   0x0409  "Generic   USB  Joystick  "
0x3F   0x0409  "A"
0x40   0x0409  "?"
0x41   0x0409  "DragonRise Inc.  "
0x42   0x0409  "Generic   USB  Joystick  "
0x43   0x0409  "A"
0x44   0x0409  "?"
0x45   0x0409  "DragonRise Inc.  "
0x46   0x0409  "Generic   USB  Joystick  "
0x47   0x0409  "A"
0x48   0x0409  "?"
0x49   0x0409  "DragonRise Inc.  "
0x4A   0x0409  "Generic   USB  Joystick  "
0x4B   0x0409  "A"
0x4C   0x0409  "?"
0x4D   0x0409  "DragonRise Inc.  "
0x4E   0x0409  "Generic   USB  Joystick  "
0x4F   0x0409  "A"
0x50   0x0409  "?"
0x51   0x0409  "DragonRise Inc.  "
0x52   0x0409  "Generic   USB  Joystick  "
0x53   0x0409  "A"
0x54   0x0409  "?"
0x55   0x0409  "DragonRise Inc.  "
0x56   0x0409  "Generic   USB  Joystick  "
0x57   0x0409  "A"
0x58   0x0409  "?"
0x59   0x0409  "DragonRise Inc.  "
0x5A   0x0409  "Generic   USB  Joystick  "
0x5B   0x0409  "A"
0x5C   0x0409  "?"
0x5D   0x0409  "DragonRise Inc.  "
0x5E   0x0409  "Generic   USB  Joystick  "
0x5F   0x0409  "A"
0x60   0x0409  "?"
0x61   0x0409  "DragonRise Inc.  "
0x62   0x0409  "Generic   USB  Joystick  "
0x63   0x0409  "A"
0x64   0x0409  "?"
0x65   0x0409  "DragonRise Inc.  "
0x66   0x0409  "Generic   USB  Joystick  "
0x67   0x0409  "A"
0x68   0x0409  "?"
0x69   0x0409  "DragonRise Inc.  "
0x6A   0x0409  "Generic   USB  Joystick  "
0x6B   0x0409  "A"
0x6C   0x0409  "?"
0x6D   0x0409  "DragonRise Inc.  "
0x6E   0x0409  "Generic   USB  Joystick  "
0x6F   0x0409  "A"
0x70   0x0409  "?"
0x71   0x0409  "DragonRise Inc.  "
0x72   0x0409  "Generic   USB  Joystick  "
0x73   0x0409  "A"
0x74   0x0409  "?"
0x75   0x0409  "DragonRise Inc.  "
0x76   0x0409  "Generic   USB  Joystick  "
0x77   0x0409  "A"
0x78   0x0409  "?"
0x79   0x0409  "DragonRise Inc.  "
0x7A   0x0409  "Generic   USB  Joystick  "
0x7B   0x0409  "A"
0x7C   0x0409  "?"
0x7D   0x0409  "DragonRise Inc.  "
0x7E   0x0409  "Generic   USB  Joystick  "
0x7F   0x0409  "A"
0x80   0x0409  "?"
0x81   0x0409  "DragonRise Inc.  "
0x82   0x0409  "Generic   USB  Joystick  "
0x83   0x0409  "A"
0x84   0x0409  "?"
0x85   0x0409  "DragonRise Inc.  "
0x86   0x0409  "Generic   USB  Joystick  "
0x87   0x0409  "A"
0x88   0x0409  "?"
0x89   0x0409  "DragonRise Inc.  "
0x8A   0x0409  "Generic   USB  Joystick  "
0x8B   0x0409  "A"
0x8C   0x0409  "?"
0x8D   0x0409  "DragonRise Inc.  "
0x8E   0x0409  "Generic   USB  Joystick  "
0x8F   0x0409  "A"
0x90   0x0409  "?"
0x91   0x0409  "DragonRise Inc.  "
0x92   0x0409  "Generic   USB  Joystick  "
0x93   0x0409  "A"
0x94   0x0409  "?"
0x95   0x0409  "DragonRise Inc.  "
0x96   0x0409  "Generic   USB  Joystick  "
0x97   0x0409  "A"
0x98   0x0409  "?"
0x99   0x0409  "DragonRise Inc.  "
0x9A   0x0409  "Generic   USB  Joystick  "
0x9B   0x0409  "A"
0x9C   0x0409  "?"
0x9D   0x0409  "DragonRise Inc.  "
0x9E   0x0409  "Generic   USB  Joystick  "
0x9F   0x0409  "A"
0xA0   0x0409  "?"
0xA1   0x0409  "DragonRise Inc.  "
0xA2   0x0409  "Generic   USB  Joystick  "
0xA3   0x0409  "A"
0xA4   0x0409  "?"
0xA5   0x0409  "DragonRise Inc.  "
0xA6   0x0409  "Generic   USB  Joystick  "
0xA7   0x0409  "A"
0xA8   0x0409  "?"
0xA9   0x0409  "DragonRise Inc.  "
0xAA   0x0409  "Generic   USB  Joystick  "
0xAB   0x0409  "A"
0xAC   0x0409  "?"
0xAD   0x0409  "DragonRise Inc.  "
0xAE   0x0409  "Generic   USB  Joystick  "
0xAF   0x0409  "A"
0xB0   0x0409  "?"
0xB1   0x0409  "DragonRise Inc.  "
0xB2   0x0409  "Generic   USB  Joystick  "
0xB3   0x0409  "A"
0xB4   0x0409  "?"
0xB5   0x0409  "DragonRise Inc.  "
0xB6   0x0409  "Generic   USB  Joystick  "
0xB7   0x0409  "A"
0xB8   0x0409  "?"
0xB9   0x0409  "DragonRise Inc.  "
0xBA   0x0409  "Generic   USB  Joystick  "
0xBB   0x0409  "A"
0xBC   0x0409  "?"
0xBD   0x0409  "DragonRise Inc.  "
0xBE   0x0409  "Generic   USB  Joystick  "
0xBF   0x0409  "A"
0xC0   0x0409  "?"
0xC1   0x0409  "DragonRise Inc.  "
0xC2   0x0409  "Generic   USB  Joystick  "
0xC3   0x0409  "A"
0xC4   0x0409  "?"
0xC5   0x0409  "DragonRise Inc.  "
0xC6   0x0409  "Generic   USB  Joystick  "
0xC7   0x0409  "A"
0xC8   0x0409  "?"
0xC9   0x0409  "DragonRise Inc.  "
0xCA   0x0409  "Generic   USB  Joystick  "
0xCB   0x0409  "A"
0xCC   0x0409  "?"
0xCD   0x0409  "DragonRise Inc.  "
0xCE   0x0409  "Generic   USB  Joystick  "
0xCF   0x0409  "A"
0xD0   0x0409  "?"
0xD1   0x0409  "DragonRise Inc.  "
0xD2   0x0409  "Generic   USB  Joystick  "
0xD3   0x0409  "A"
0xD4   0x0409  "?"
0xD5   0x0409  "DragonRise Inc.  "
0xD6   0x0409  "Generic   USB  Joystick  "
0xD7   0x0409  "A"
0xD8   0x0409  "?"
0xD9   0x0409  "DragonRise Inc.  "
0xDA   0x0409  "Generic   USB  Joystick  "
0xDB   0x0409  "A"
0xDC   0x0409  "?"
0xDD   0x0409  "DragonRise Inc.  "
0xDE   0x0409  "Generic   USB  Joystick  "
0xDF   0x0409  "A"
0xE0   0x0409  "?"
0xE1   0x0409  "DragonRise Inc.  "
0xE2   0x0409  "Generic   USB  Joystick  "
0xE3   0x0409  "A"
0xE4   0x0409  "?"
0xE5   0x0409  "DragonRise Inc.  "
0xE6   0x0409  "Generic   USB  Joystick  "
0xE7   0x0409  "A"
0xE8   0x0409  "?"
0xE9   0x0409  "DragonRise Inc.  "
0xEA   0x0409  "Generic   USB  Joystick  "
0xEB   0x0409  "A"
0xEC   0x0409  "?"
0xED   0x0409  "DragonRise Inc.  "
0xEE   0x0409  "Generic   USB  Joystick  "
0xEF   0x0409  "A"
0xF0   0x0409  "?"
0xF1   0x0409  "DragonRise Inc.  "
0xF2   0x0409  "Generic   USB  Joystick  "
0xF3   0x0409  "A"
0xF4   0x0409  "?"
0xF5   0x0409  "DragonRise Inc.  "
0xF6   0x0409  "Generic   USB  Joystick  "
0xF7   0x0409  "A"
0xF8   0x0409  "?"
0xF9   0x0409  "DragonRise Inc.  "
0xFA   0x0409  "Generic   USB  Joystick  "
0xFB   0x0409  "A"
0xFC   0x0409  "?"
0xFD   0x0409  "DragonRise Inc.  "
0xFE   0x0409  "Generic   USB  Joystick  "
0xFF   0x0409  "A"
0xEE   0x0000  "Generic   USB  Joystick  "

------------------------------

Connection path for device: 
Standard Enhanced PCI to USB Host Controller
Root Hub
Generic USB Hub
Generic USB Hub
Generic   USB  Joystick   (VID=0x0079 PID=0x0006)

Brought to you by TDD v1.82.0, Aug 20 2013, 17:17:20
Now, thats a prime example of a screwed up descriptor.

Windows7 Control Panel Icon

Windows7 Control Panel Info

No Nuthing - just the weired name:)

Windows7 Test Screen

All elements are detected:

Switching the Mode button does not result in any change. The displayed Structure matches the HID Descriptor.

Device

Speedlink Thunderstrike top view; Buttons NumberedSpeedlink Thunderstrike bottom view

Note that the sequence of the 4 diamond buttons is changed The controller features a 'MODE' button, switching various functions. A red LED displays the state. Further 'On' refers to a once pressed mode button with a lit LED. Further two switches labled 'Rapid' and 'Auto' are present. They control a local auto fire mechanism. If Auto is pressed with another button, this button will be repeated (~8Hz?) indefinite. The LED will flicker accordingly. If Rapid is pressed with another button, this button will be repeated when ever pressed. The Assignments are reet by a reset button on the back. No additional information is transfered over USB (except for triggering) - or?

Behaviour

The following assignment can be detected:
Win7 TestscreenGamepad API Test
OffOnOffOn
Left StickUpY (Up -1 )1,2Y (Up -1)Axis 1: -11,2Axis 1: -1
DownY (Down +1)1,2Y (Down +1)Axis 1: +11,2Axis 1: +1
LeftX (Left -1)1,2X (Left -1)Axis 0: -11,2Axis 0: -1
RightX (Right +1)1,2X (Right +1)Axis 0: +11,2Axis 0: +1
Right StickUpBtn 1Z-Rotation (Left -1)Btn 0Axis 5: -1
DownBtn 3Z-Rotation (Right +1)Btn 2Axis 5: +1
LeftBtn 4Z-Axis (Left -1)Btn 3Axis 2: -1
RightBtn 2Z-Axis (Right +1)Btn 1Axis 2: +1
Rocker/HatUpY (Up -1 )1,2UpAxis 1: -11,2Axis 5: -11,2
DownY (Down +1)1,2DownAxis 1: +11,2Axis 5: +11,2
LeftX (Left -1)1,2LeftAxis 0: -11,2Axis 4: -11,2
RightX (Right +1)1,2RightAxis 0: +11,2Axis 4: +11,2
Buttons11100
22211
33322
44433
55544
66655
77766
88877
99988
10101099
11 (Left Stick)11111010
12 (Right Stick)12121111
1Only digital movement (-1,0,+1) - 28-Way

Windows assigns the standard HID driver (hidusb.sys) which includes Joystick handling.

Except for a different asignment of the 4 top right buttons it's virtually equal to the bigben gamepad. See there for comments regarding handling and FF-'features'.