Opened 15 months ago

Last modified 3 weeks ago

#15022 new bug

USB 'Joystick' controller no longer works

Reported by: Pete Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Drivers/Input/USB-HID Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

Pre-PM, I sometimes used a Microsoft "Strategic Commander" (actually to control some functions of MusicWeaver). I wanted to use it once again in my current PM system, but it no longer works. I went back to the pre-PM partition, and it still functions fine there.

Strangely, I dug out another old USB controller -- a Thrustmaster "Top Gun" -- and it does work in my current system! (BTW, the behaviour is not dependent on MusicWeaver. The 'Stickit' test program shows the same.)

The pre-PM system in which everything works is hrev44674. My usual partition is hrev50180. The latest system I've managed to install is hrev51670, and behaviour there is exactly the same as my usual one.

For comparison, here are extracts from syslog in 44674 and 51670, when plugging in and removing both devices:

Pre-PM:

Thrustmaster:
KERN: usb hub 56: port 0: new device connected
KERN: usb_audio:01.51.770:init_driver::ver.0.0.4
KERN: usb hub 56: KERN: port 0: device removed
KERN: usb_audio:02.06.801:init_driver::ver.0.0.4

Microsoft:
KERN: usb hub 56: KERN: port 0: new device connected
KERN: usb_audio:03.15.795:init_driver::ver.0.0.4
KERN: usb hub 56: KERN: port 0: device removed
KERN: usb_audio:03.32.829:init_driver::ver.0.0.4

PM:

ThrustMaster:
KERN: usb hub 56: port 0: new device connected
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0c45/0x6457
KERN: usb_serial: probing device: 0x046d/0xc52b
KERN: usb_serial: probing device: 0x0a12/0x0001
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x044f/0xb102
KERN: usb_serial: probing device: 0x0bda/0x0138

KERN: usb hub 56: KERN: port 0: device removed
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0c45/0x6457
KERN: usb_serial: probing device: 0x046d/0xc52b
KERN: usb_serial: probing device: 0x0a12/0x0001
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0bda/0x0138

Microsoft:
KERN: usb hub 56: KERN: port 0: new device connected
KERN: usb_hid: no handlers for hid device
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0c45/0x6457
KERN: usb_serial: probing device: 0x046d/0xc52b
KERN: usb_serial: probing device: 0x0a12/0x0001
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x045e/0x0033
KERN: usb_serial: probing device: 0x0bda/0x0138

KERN: usb hub 56: KERN: port 0: device removed
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0c45/0x6457
KERN: usb_serial: probing device: 0x046d/0xc52b
KERN: usb_serial: probing device: 0x0a12/0x0001
KERN: usb_serial: probing device: 0x0000/0x0000
KERN: usb_serial: probing device: 0x8087/0x0024
KERN: usb_serial: probing device: 0x0bda/0x0138

(I've removed some intervening messages that are not relevant.)

listusb always shows the same thing. Here are the relevant entries:

044f:b102 /dev/bus/usb/1/0/0 "ThrustMaster, Inc." "Top Gun Fox 2  Pro " ver. 0100
045e:0033 /dev/bus/usb/1/0/1 "Microsoft Corp." "Sidewinder Strategic Commander" ver. 0051

Attachments (3)

usb_hid_report_descriptor_045e_0033_0.bin (190 bytes ) - added by Pete 6 months ago.
HID report for Strategic Commander joystick
TopGun_USB_44674 (1.1 KB ) - added by Pete 3 weeks ago.
listusb output for (working) 'Top Gun'
Sidewinder_USB_44674 (1.1 KB ) - added by Pete 3 weeks ago.
listusb output of inactive 'Sidewinder'

Download all attachments as: .zip

Change History (11)

comment:1 by waddlesplash, 15 months ago

Does blacklisting the "usb_serial" driver help at all?

comment:2 by Pete, 15 months ago

Good thought, thanks. But no, it has no effect. I even tried removing usb_serial temporarily from the pre-PM system, just in case it was affecting things somehow. Worked just as before.

comment:3 by pulkomandy, 6 months ago

Hi, do you get an USB HID report descriptor in /tmp when connecting this device? Can you attach it to the ticket?

by Pete, 6 months ago

HID report for Strategic Commander joystick

comment:4 by Pete, 6 months ago

HID report attached. (For reference, can I decode that binary?)

comment:5 by pulkomandy, 6 months ago

Yes, use for example xxd -g1 -i to get an he@dump and paste that into https://eleccelerator.com/usbdescreqparser/

comment:6 by Pete, 6 months ago

Thanks! Not much the wiser, because I don't know what the entries mean (:-/) but it's nice to know about that. And I learned that xxd exists!

comment:7 by pulkomandy, 5 months ago

Might work better with hrev53816, can you retry?

by Pete, 3 weeks ago

Attachment: TopGun_USB_44674 added

listusb output for (working) 'Top Gun'

by Pete, 3 weeks ago

Attachment: Sidewinder_USB_44674 added

listusb output of inactive 'Sidewinder'

comment:8 by Pete, 3 weeks ago

Sorry it took so long to get to this, but I've finally been able to update (to beta 2) so I could check.

I'm sorry to say that it's just the same. My Thrustmaster Top Gun works, the Microsoft Sidewinder doesn't. If i go back to my ancient hrev44674, both work, but from my hrev50180 onward it doesn't. The Sidewinder still shows up in listusb, but not in /dev/joysticks.

In case it's any use, I'll attach the full listusb printouts for both devices. (They're the same on all hrevs except fo the USB version. These are from the one that works.)

Note: See TracTickets for help on using tickets.