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

FF_RUMBLE supported but FF_PERIODIC is not. #167

Open
Moros1138 opened this issue Apr 12, 2021 · 1 comment
Open

FF_RUMBLE supported but FF_PERIODIC is not. #167

Moros1138 opened this issue Apr 12, 2021 · 1 comment

Comments

@Moros1138
Copy link

The Issue

According to Kernel.org documentation regarding force feedback.

In most cases you should use FF_PERIODIC instead of FF_RUMBLE. All devices that support FF_RUMBLE support FF_PERIODIC (square, triangle, sine) and the other way around.

Despite this specification, the XOW driver supports FF_RUMBLE, but not FF_PERIODIC. I gave it a shot at hacking it in but I'm just making things worse. If it's helpful, in controller.cpp, I see FF_RUMBLE, so it seems like at the very least that's the starting point for fixing this issue.

I hope the information is useful. Thanks for your attention.

System Info

Xubuntu 20.04 running in a QEMU VM, on an UNRAID host machine.

My Host Machine:

Intel Core i7 7700K, clocked at 4.2Ghz
32GB DDR4 2133 MHz RAM
NVIDIA GeForce GTX1060 with 6GB DDR5
Intel Onboard Graphics

NVMe SSD from Samsung EVO
Several SSD in a cache pool
Several spinning disk drives for data storage array

My Virtual Machine

Intel Core i7 7700K, 4.2Ghz, (6 Cores allocated)
16GB DDR4 2133 MHz RAM allocated
NVIDIA GeForce GTX1060 with 6GB DDR5 (passthrough)
NVMe SSD from Samsung EVO (passthrough)
USB Hub (passthrough)

Microsoft XBOX Wireless Dongle
various other devices, not pertinent to this situation.
@kakra
Copy link
Contributor

kakra commented Apr 12, 2021

The hardware supports only rumble. It's the ff-memless driver in Linux which is able to emulate periodic feedback over rumble but that's only true for kernel drivers: ff-memless is a separate feedback driver layer that only kernel drivers can connect to, the kernel drivers itself also only support rumble. With xow being a user-space driver, it has no access to ff-memless: There no user-facing API for the required emulation calls.

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

2 participants