This complements the main page.
Next one is a no name bought at Conrad (again Euro 9.99). It's a PS-Style variation, but this time silent.
Brandname | Speedlink | |
Productname | Thunderstrike | |
Product-ID | SL-6515-BK | (BK = Black) |
USB Product String | "Generic USB Joystick " | |
USB-VID | 0079 | DragonRise Inc. |
USB-PID | 0006 | Generic USB Joystick |
USB-REV | 0107 | |
USB-Class(es) | 03/00/00 | |
USB-Device (Windows) | USBPDO-12 | |
gamepad.id (Firefox) | "79-6-Generic USB Joystick" | |
Layout Style | PS | |
Switchable | Yes: Default digital, switchable to Analogue | |
Detected parts in FireFox | 12 Buttons 6 Axis | |
Detected parts in Windows | 12 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 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.
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:20Now, thats a prime example of a screwed up descriptor.
No Nuthing - just the weired name:)
All elements are detected:
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?
The following assignment can be detected:
Win7 Testscreen | Gamepad API Test | ||||
---|---|---|---|---|---|
Off | On | Off | On | ||
Left Stick | Up | Y (Up -1 )1,2 | Y (Up -1) | Axis 1: -11,2 | Axis 1: -1 |
Down | Y (Down +1)1,2 | Y (Down +1) | Axis 1: +11,2 | Axis 1: +1 | |
Left | X (Left -1)1,2 | X (Left -1) | Axis 0: -11,2 | Axis 0: -1 | |
Right | X (Right +1)1,2 | X (Right +1) | Axis 0: +11,2 | Axis 0: +1 | |
Right Stick | Up | Btn 1 | Z-Rotation (Left -1) | Btn 0 | Axis 5: -1 |
Down | Btn 3 | Z-Rotation (Right +1) | Btn 2 | Axis 5: +1 | |
Left | Btn 4 | Z-Axis (Left -1) | Btn 3 | Axis 2: -1 | |
Right | Btn 2 | Z-Axis (Right +1) | Btn 1 | Axis 2: +1 | |
Rocker/Hat | Up | Y (Up -1 )1,2 | Up | Axis 1: -11,2 | Axis 5: -11,2 |
Down | Y (Down +1)1,2 | Down | Axis 1: +11,2 | Axis 5: +11,2 | |
Left | X (Left -1)1,2 | Left | Axis 0: -11,2 | Axis 4: -11,2 | |
Right | X (Right +1)1,2 | Right | Axis 0: +11,2 | Axis 4: +11,2 | |
Buttons | 1 | 1 | 1 | 0 | 0 |
2 | 2 | 2 | 1 | 1 | |
3 | 3 | 3 | 2 | 2 | |
4 | 4 | 4 | 3 | 3 | |
5 | 5 | 5 | 4 | 4 | |
6 | 6 | 6 | 5 | 5 | |
7 | 7 | 7 | 6 | 6 | |
8 | 8 | 8 | 7 | 7 | |
9 | 9 | 9 | 8 | 8 | |
10 | 10 | 10 | 9 | 9 | |
11 (Left Stick) | 11 | 11 | 10 | 10 | |
12 (Right Stick) | 12 | 12 | 11 | 11 |
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'.