http://bugs.winehq.org/show_bug.cgi?id=33522
Bug #: 33522 Summary: Trackmania United Forever: Force feedback not working with xboxdrv driver Product: Wine Version: 1.5.29 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-dinput AssignedTo: wine-bugs@winehq.org ReportedBy: post+wine@ralfj.de Classification: Unclassified
Force Feedback is not working properly in Trackmania United Forever when using the xboxdrv userspace driver for my Xbox 360 wired gamepad. I start xboxdrv with
sudo xboxdrv --detach-kernel-driver --trigger-as-zaxis --axismap "-z=z" --force-feedback
In "wine control", I can still do force feedback testing and it will make the motors rumble (though I cannot notice any effect of me changing the direction). The "fftest" tool from the linuxconsole project also still does force feedback with the xboxdrv device. However, in the game, no force feedback is done.
If I use the default kernel driver (xbox) for this device, then force feedback in Trackmania works fine. However, in this case Trackmania treats the Gas and Break axes incorrectly, it will often accelerate the car even though I don't press the triggers.
I will try to capture logfiles for both cases.
http://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #1 from Ralf Jung post+wine@ralfj.de 2013-05-04 03:45:07 CDT --- Created attachment 44364 --> http://bugs.winehq.org/attachment.cgi?id=44364 +dinput logfile when using xbox (kernel) driver
http://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #2 from Ralf Jung post+wine@ralfj.de 2013-05-04 03:45:59 CDT --- Created attachment 44365 --> http://bugs.winehq.org/attachment.cgi?id=44365 +dinout output when using xboxdrv (userspace) driver
http://bugs.winehq.org/show_bug.cgi?id=33522
Ralf Jung post+wine@ralfj.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #44364|text/plain |application/x-gzip mime type| |
http://bugs.winehq.org/show_bug.cgi?id=33522
Ralf Jung post+wine@ralfj.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #44365|0 |1 is obsolete| |
--- Comment #3 from Ralf Jung post+wine@ralfj.de 2013-05-04 03:52:56 CDT --- Created attachment 44366 --> http://bugs.winehq.org/attachment.cgi?id=44366 +dinout output when using xboxdrv (userspace) driver [corrected]
I used different xboxdrv settings last time, this one was really captured with the configuration given in the description.
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #4 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for over a year. Is this still an issue in current (1.7.37 or newer) wine? If so, please attach the terminal output in 1.7.37 (see http://wiki.winehq.org/FAQ#get_log).
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #5 from Ralf Jung post+wine@ralfj.de --- The bug is still present in wine 1.7.29, the current version in Debian Unstable. Interesting enough, the console output is entirely empty...?
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #6 from Austin English austinenglish@gmail.com --- (In reply to Ralf Jung from comment #5)
The bug is still present in wine 1.7.29, the current version in Debian Unstable. Interesting enough, the console output is entirely empty...?
The Debian packages set WINEDEBUG=-all, try setting it to WINEDEBUG=fixme+all,err+all and you'll likely get something.
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #7 from Ralf Jung post+wine@ralfj.de --- I upgraded to wine 1.7.39 from Debian experimental, and captured a log.
Never mind the errors about "winemenubuilder.exe", that's due to my work-around for https://bugs.winehq.org/show_bug.cgi?id=19182.
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #8 from Ralf Jung post+wine@ralfj.de --- Created attachment 51168 --> https://bugs.winehq.org/attachment.cgi?id=51168 WINEDEBUG=fixme+all,err+all log using xboxdrv, dysfunctional force-feedback
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #9 from Bruno Jesus 00cpxxx@gmail.com --- Please try again in wine 1.9.17, force feedback works fine for me.
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #10 from Ralf Jung post+wine@ralfj.de --- I tried Wine 1.9.20. The behavior is still as described in the first post:
* If I use the kernel driver, I get force feedback, but the assignment of buttons to in-game controls is not very useful.
* If I use xboxdrv
sudo xboxdrv --detach-kernel-driver --trigger-as-zaxis --axismap "-z=z" --force-feedback
then the buttons work fine (I can break and accelerate with the analog shoulder triggers), but I get no force feedback.
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #11 from Bruno Jesus 00cpxxx@gmail.com ---
From comment 8 and comment 1 logs:
find_joydevs Found a joystick on /dev/input/event15: Xbox Gamepad (userspace driver) (event) ({9e573eda-7734-11d2-8d4a-23903fb6bdf7}) find_joydevs ... with axis 0: cur=-2572, min=-32768, max=32767, fuzz=0, flat=0 find_joydevs ... with axis 1: cur=-229, min=-32768, max=32767, fuzz=0, flat=0 find_joydevs ... with axis 2: cur=0, min=-255, max=255, fuzz=0, flat=0 find_joydevs ... with axis 3: cur=1941, min=-32768, max=32767, fuzz=0, flat=0 find_joydevs ... with axis 4: cur=788, min=-32768, max=32767, fuzz=0, flat=0 find_joydevs ... with axis 16: cur=0, min=-1, max=1, fuzz=0, flat=0 find_joydevs ... with axis 17: cur=0, min=-1, max=1, fuzz=0, flat=0
The userland driver is not advertising force feedback support, that is why dinput does not enable it. If you compare to the kernel driver:
find_joydevs Found a joystick on /dev/input/event15: Microsoft X-Box 360 pad (event) ({9e573eda-7734-11d2-8d4a-23903fb6bdf7}) find_joydevs ... with force feedback <<< ==========---------------- find_joydevs ... with axis 0: cur=-3447, min=-32768, max=32767, fuzz=16, flat=128 find_joydevs ... with axis 1: cur=-1942, min=-32768, max=32767, fuzz=16, flat=128 find_joydevs ... with axis 2: cur=0, min=0, max=255, fuzz=0, flat=0 find_joydevs ... with axis 3: cur=-1941, min=-32768, max=32767, fuzz=16, flat=128 find_joydevs ... with axis 4: cur=998, min=-32768, max=32767, fuzz=16, flat=128 find_joydevs ... with axis 5: cur=0, min=0, max=255, fuzz=0, flat=0 find_joydevs ... with axis 16: cur=0, min=-1, max=1, fuzz=0, flat=0 find_joydevs ... with axis 17: cur=0, min=-1, max=1, fuzz=0, flat=0
(see second line)
https://bugs.winehq.org/show_bug.cgi?id=33522
--- Comment #12 from Ralf Jung post+wine@ralfj.de --- Ah, I see. I forwarded this to the driver at https://github.com/xboxdrv/xboxdrv/issues/232. Still, I am surprised that force feedback is working fine (despite not being advertised?) both in "fftest" and in "wine control". It seems they both ignore what the controller/driver advertises, and try using force feedback anyway?