Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error running Test with Logitech Wingman Formula Force #213

Open
coffeebird opened this issue Jun 25, 2024 · 7 comments
Open

Error running Test with Logitech Wingman Formula Force #213

coffeebird opened this issue Jun 25, 2024 · 7 comments

Comments

@coffeebird
Copy link

coffeebird commented Jun 25, 2024

Happy to see the red Logitech WingMan Formula Force (non-GP) is detected and auto centering works well.

Hoping to get force feedback working in the Model 2 emulator like it does in Windows.

In my efforts, I noticed that the 'test' option does nothing. Looking at the logs I noticed this.

Exception in thread Thread-3 (test1):
Traceback (most recent call last):
  File "/usr/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.11/threading.py", line 982, in run
    self._target(*self._args, **self._kwargs)
  File "/app/lib/python3.11/site-packages/oversteer/test.py", line 137, in test1
    self.update_effect(left_effect)
  File "/app/lib/python3.11/site-packages/oversteer/test.py", line 81, in update_effect
    self.input_device.upload_effect(effect)
  File "/app/lib/python3.11/site-packages/evdev/device.py", line 340, in upload_effect
    ff_id = _input.upload_effect(self.fd, data)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
BlockingIOError: [Errno 11] Resource temporarily unavailable

No clue what this means so thought I'd post it here. Is the test even necessary for getting Force Feedback to work in games or is that outside the scope of Oversteer altogether? Apologies if I've misunderstood

Currently running Opensuse 15.5 and using the flatpak version of Oversteer.

@berarma
Copy link
Owner

berarma commented Jun 25, 2024

It could be that some other application is using the device. Are you sure it wasn't being used when you tried the test?

The Flatpak version has just been released and I couldn't completely test it since I don't have my wheel with me. @jo5huajohn, did you try running the tests?

@jo5huajohn
Copy link
Contributor

I tested it initially when I was working on the flatpak, but haven't since. I tested it now and I believe #197 is affecting the application with with newer versions of matplotlib. Changing get_navigation_toolbar to return NavigationToolbar(canvas) instead of NavigationToolbar(canvas, window) seems to fix the issue.

@berarma
Copy link
Owner

berarma commented Jun 25, 2024

I tested it initially when I was working on the flatpak, but haven't since. I tested it now and I believe #197 is affecting the application with with newer versions of matplotlib. Changing get_navigation_toolbar to return NavigationToolbar(canvas) instead of NavigationToolbar(canvas, window) seems to fix the issue.

I think that's a separate issue. Isn't matplotlib packaged in the Flatpak?

@jo5huajohn
Copy link
Contributor

It is, but matplotlib deprecated the window parameter in 3.6, so systems with versions above that are affected. The tests work, but it fails to generate the chart due to the issue.

Regarding the current issue, it doesn't seem to be an issue with tests, but one of these two lines:

if os.access(self.dev_name, os.R_OK):
    self.input_device = InputDevice(self.dev_name)

in get_input_device. I don't think its the flatpak permissions, since I've given read-write access to /sys/devices (for driver), /sys/class/leds (for leds), and /run/udev, so permissions should be covered.

@coffeebird
Copy link
Author

It could be that some other application is using the device. Are you sure it wasn't being used when you tried the test?

The Flatpak version has just been released and I couldn't completely test it since I don't have my wheel with me. @jo5huajohn, did you try running the tests?

Tried a reboot and closing any apps like steam or sunshine that might be using the wheel. Same result. I couldn't get the version of oversteer in the opensuse build service to run at all, so next might try following the install instructions on the readme and see if that gets me anywhere.

For now I've just set the auto-centering strength to 30% as that's already a huge improvement compared to nothing. I'll keep looking into how to get FF working in Model 2 emu with Wine. Thank you!

@berarma
Copy link
Owner

berarma commented Jun 26, 2024

I've tried the Flatpak version and the test works. I haven't run it fully but it starts.

If the FFB doesn't work anywhere, it's probably because there's some issue in your system. Are you using new-lg4ff? Are there any messages related to the wheel in dmesg?

@coffeebird
Copy link
Author

Tried running POP_OS on another machine and got what looks like there same error when running the test. This happens after the prompt asking me to push a button on the wheel and wait to feel force feedback.

$ flatpak run io.github.berarma.Oversteer Gtk-Message: 12:33:49.638: Failed to load module "canberra-gtk-module" Exception in thread Thread-3 (test1): Traceback (most recent call last): File "/usr/lib/python3.11/threading.py", line 1045, in _bootstrap_inner self.run() File "/usr/lib/python3.11/threading.py", line 982, in run self._target(*self._args, **self._kwargs) File "/app/lib/python3.11/site-packages/oversteer/test.py", line 137, in test1 self.update_effect(left_effect) File "/app/lib/python3.11/site-packages/oversteer/test.py", line 81, in update_effect self.input_device.upload_effect(effect) File "/app/lib/python3.11/site-packages/evdev/device.py", line 340, in upload_effect ff_id = _input.upload_effect(self.fd, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ BlockingIOError: [Errno 11] Resource temporarily unavailable

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants