[SOLVED] No force feedback in wine game from a Logitech Driving Force GT
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
No force feedback in wine game from a Logitech Driving Force GT
Hi, almost finished moving my main desktop machine at home to Slackware64 (14.1). The last thing I need to get working is my Logitech Driving Force GT (steering wheel game controller).
I only need it for one game, Richard Burns Rally, which runs well under wine. I am moving it from Kwheezy (Debian Stable) where the force feedback works OK. In Debian, the RBR force feedback settings is enable, acknowledging that it is detected. However, when I move the wine prefix to Slackware, the game works perfectly except the force feedback settings are disabled and the steering wheel is very loose. I don't need the force feedback effects to play the game, but the wheel needs to have some resistance, otherwise it's unplayable. I have also installed RBR again in a fresh wine prefix on Slackware, no difference.
The wine version on Debian is 1.4.1, whilst on Slackware64 it is 1.6.1. I wonder if this could be the difference in behaviour. I have tried to test it in Linux itself, this is the first logical step. However the fftest I downloaded from here: https://github.com/flosse/linuxconso...utils/fftest.c does not work in either Slackware or Debian.
Using Slackware huge kernel, the config files suggests CONFIG_LOGITECH_FF=y.
How can I test Force Feedback under Linux? Is there an additional driver/libraries needing installed for it to work?
Thanks cwizardone, I will try that tonight maybe. The thing is that it works in wine version 1.4.1 on Debian. No harm in trying 1.7.x though. I was really hoping there was a way to test it in Linux natively, in case that is the problem.
Since WINE 1.5.9, there is a control panel for joysticks. In terminal type "wine control" and there is an icon for joysticks. On Slackware with WINE 1.6.1 the Driving Force GT shows up as a contoller but there's nothing in the Force Feedback section. Whereas on Debian, RBR game detects FF, so it definetely works. But there is no control panel for joysticks in WINE 1.4.1.
Just tried WINE 1.7.14 from alien bob's package, as suggested by cwizardone. No joy, still no FF in RBR or "wine control".
Quote:
So Debian has a WINE fork that supports FFB?
I'm not sure if Debian does that. I don't expect they care too much about wine. But I suppose it's possible. It's just as likely that the support is there at the linux level. Perhaps Slackware is missing some support for FF. That's why I would like to be able to test it within Linux natively.
As you can see, in Debian the FF handler is /dev/input/event17 and has permissions crw-rw----+. In Slackware the FF handler is /dev/input/event21 and has permissions crw-r-----.
So if I totally relax permissions on /dev/input/js0 and /dev/input/event21 as follows:
I got fftest working in doth distros by using "fftest /dev/input/eventXX" where XX is the event mentioned in /proc/bus/input/devices for my wheel. Interesting to note that only one effect was reported available in fftest, even on Debian. Also, slackware worked better on that test with a much stronger force feedback.
After the permissions change, RBR now detects and uses the FF for my wheel. I haven't played it yet, but it looks liek the FF is stronger, which would be great.
So, the question now is; what do I need to do to make the default perms for input devices using FF? What does Debian do to get the access rights correct for use by relevant software. The "+" sign indicates that ACLs are used, perhaps integrated into policykit or something similar.
Of course I could probably hack something so that the perms are right for gaming. But I think all Slackware users should be able to get their FF and other game controllers working out-the-box.
Bigger distributions like Ubuntu use a udev rule to set the permissions right. This also affects users of "Steam", see the issue and solution at the bottom of it here:
Thanks to schmatzler, I have been able to create a udev rules that works well for me. I just don't know if it is 100% correct. I guess it may not be the best security-wise. But it seems to be more or less what debian is doing.
The solution was to make a udev rules in the following file:
I'm asuming plugdev is an appropriate group to give write access to /dev/input/eventXX. Otherwise, one could create a new group called say "joystick" and add their users to that group, then change the udev accordingly.
Quote:
So the thread can be marked as solved with the conclusion that udev sucks as usual. Well, nothing surprising...
Maybe, I don't know enough about udev, though I've heard others say similar things about it. What I do know is that Debian made it work, and I don't see a udev rule for it in /etc/udev/rules.d. Perhaps they patched udev, that's the kind of thing they do.
Perhaps Slackware just needs to add a similar udev rule, so that others don't have to find my solution on linuxquestions. Maybe a slackbuilds package, called something like "joystick-force-feedback-udev" or "js-ff-udev", or put it in extra on the DVD.
Perhaps Slackware just needs to add a similar udev rule, so that others don't have to find my solution on linuxquestions. Maybe a slackbuilds package, called something like "joystick-force-feedback-udev" or "js-ff-udev", or put it in extra on the DVD.
I think it's actually the task of ConsoleKit to get this right, because making raw event input devices accessible to any logged in user without further consideration may open a security holes, which can be used for keyboard hijacking / keyloggers etc.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.