https://bugs.winehq.org/show_bug.cgi?id=51873
Ivo Ivanov logos128@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #28 from Ivo Ivanov logos128@gmail.com --- (In reply to RĂ©mi Bernon from comment #27)
I believe this specific issue has been fixed since c2235c44c5f8fedaad775c69b9a475725874bbc7, could you confirm?
Regarding effect state report and the way IOCTL_HID_GET_INPUT_REPORT is supposed to work I suggest moving the discussion to https://bugs.winehq.org/show_bug.cgi?id=52062.
I can confirm it is fixed. I was going to change the bug status, just wanted to write my report from the weekend :)
I am happy to say that on the UDEV hidraw backend everything works as expected. With the games I tested the FFB is pretty much equal to Windows. I compared some captured usb traffic and the sent commands are similar in frequency and sequence. There are some small differences mostly around the RESET command, but I'll have to confirm that further with some conformance testing. The direction used by WheelCheck and the most games is 0x2d on both Windows and Wine.
I tested also the other backends. The SDL backend works very well now. The FFB is functional, although seems somewhat smoother with less details in comparison to Windows / Wine (hidraw). The characteristic is the same, just with less 'punch'. My first thought was that it could be higher frequency of the FFB rate, which in theory could provide a smoother force curve. As these direct drive devices are capable of playing very small changes of the forces on almost ms level. The frequencies were similar, though, ~560Hz on Wine (hidraw / SDL) and ~400Hz on Windows (Automobilista 2). So I compared some usb traffic and the first noticeable thing is a difference in the direction value, 0x2d on Windows / Wine (hidraw) and 0x5a on SDL. IMO this seems like a candidate for such slight difference in the FFB behavior. I plan to compare it with proton's joystick_sdl behavior.
The UDEV lnxev backend doesn't produce FFB, though. It manages to turn off the bump stops of the wheel, which can be resolved normally with a power-cycle of the device. There is a Reset FFB command in the TrueDrive software (Simucube 2's controlling app), which also resolves the normal behavior. That leads me to think it just turns off the actuators with an FFB command. Probably this will need another bug report.
I have also a strange crash of the winebus.sys process when using the UDEV bus. It occurs only when using an administrator account (with superuser rights). I will post a bug report with a patch, since finally had some time and found the issue.