Opened 14 years ago
Closed 12 years ago
#7647 closed bug (fixed)
[usb_hid] Joystick axes not working fully for several controllers
Reported by: | umccullough | Owned by: | mmlr |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Drivers/USB | Version: | R1/Development |
Keywords: | usb_hid joystick axis | Cc: | |
Blocked By: | Blocking: | ||
Platform: | All |
Description
I have tested 3 USB game devices on my haiku test machine using gcc4 hrev41943 and the "stickit" app. mmlr asked me to attach the usb_hid descriptors for all of them to a single ticket.
The first one is a Logitech Wingman Cordless gamepad with dual analog sticks, 11 buttons, a throttle slider, and a DPad. It also has rumble support.
On Windows 7, the default mode for this gamepad shows the DPad as a hat, with the right-side analog stick being the X/Y axis. The lack of hat support in haiku still means this doesn't show up. If i switch modes, however, the DPad becomes the (non-analog) X/Y axis in Haiku. Everything else seems to work fine.
The second is a Gravis XTerminator Force gamepad:
This one has a single analog force-feedback floating DPad. WIthout the force-feedback "spring", it's dificult to center the DPad, but Windows 7 suffers the same issue, unless I install a custom driver (or a game has built-in support for this feature).
It also has 10 buttons (which all work), and two analog "flippers" or "rudders" which form a single axis on Windows 7 (each flipper moves the axis a different direction from center).
The other problem I have with this gamepad on Haiku is that the DPad movement doesn't do much - it just moves a little bit in each direction. This gamepad has a "Precision" button which is supposed to reduce the distance of the DPad movement, but it seems regardless of the state of this mode, it only moves a little bit (as if the Precision mode is always enabled).
The third controller is a Great Planes "RealFlight" R/C Flight Simulator controller - also known as an "Interlink Plus" controller:
This looks like an R/C plane controller with two analog sticks, and an analog knob and several toggles/buttons.
AFAICT, all 5 of the buttons work in Haiku, as do all of the axes on the controller. The only real issue with this controller is that an additional axis shows up on Haiku's stickit which doesn't show up in Windows 7. I can't figure out what this is for, as nothing makes it move (it's just stuck in the far left position on the slider).
Attachments (4)
Change History (11)
by , 14 years ago
Attachment: | usb_hid_report_descriptor_046d_c211_0.bin added |
---|
by , 14 years ago
Attachment: | usb_hid_report_descriptor_047d_4007_0.bin added |
---|
Gravis Xterminator Force gamepad
by , 14 years ago
Attachment: | usb_hid_report_descriptor_061c_0010_0.bin added |
---|
Great Planes RealFlight Interlink Plus
comment:1 by , 14 years ago
Perhaps devide them in 3 tickets? I to have a wingman.. older one but same "problem"
comment:2 by , 14 years ago
The hat support is still missing, which is the cause for the dpad to not function on the wingman. That's a known problem, but mmlr asked me to attach the descriptor file anyway
He also suggested a single ticket would be enough for him to analyze various descriptors to figure out what can be done. If he wants them separated, I'd be happy to do so :)
by , 14 years ago
Attachment: | usb_hid_report_descriptor_046d_c20a_0.bin added |
---|
Logitech WingMan RumblePad
follow-up: 4 comment:3 by , 14 years ago
Update: as of hrev42035 the hat (dpad) shows up now for my logitech wingman - and usb_hid seems to return the proper hat values when I use it. For some reason the values go missing somewhere in between and the squares don't highlight in stickit.
If there is additional tracing I can provide to help iron that out, let me know.
comment:4 by , 14 years ago
Replying to umccullough:
Update: as of hrev42035 the hat (dpad) shows up now for my logitech wingman - and usb_hid seems to return the proper hat values when I use it. For some reason the values go missing somewhere in between and the squares don't highlight in stickit.
I fix a bug regarding hat value(s) in hrev42208. Could you try again with this change?
comment:7 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Yeah - I'm sure the main issues are resolved now.
I haven't had a chance to go back and retest all devices (and don't even know where they are at the moment since I packed them for moving) - so I'll open a new ticket in the future if there are further problems.
Logitech Wingman Cordless gamepad