-
Notifications
You must be signed in to change notification settings - Fork 42
Description
Hello, I'm an (ex) moltenGamepad user. I'm using it to use a wiimote as a "remote" for my computer, while still being able to use an attached classic controller as a gamepad.
Mapping the wiimote buttons to keyboard keys looks straightforward enough. I switched to this kernel driver, which exposes the wiimote as a generic hid gamepad. The driver also exposes evdev events with absolute x-y coordinates for the IR tracker. (MoltenGamepad used the mangled upstream driver through a translation plugin)
The evdev events for the sensor looks like this: ir-events.txt, they can be used to control the cursor. One issue, common to most pointing devices (be it a pen tablet, a tracker ecc), is noise. I need to put some low-pass-ish filter on there to have something usable (e.g. a 1€ filter). What is the best course of action for this?
- tips/insights on where I should look in the code to add this? (perhaps pull request?)
- offer a selection of bundled filters, or an ABI plugin system?
- perhaps it would be more feasible to just operate over the DBus API? From where to start?
- ibinput lua script on the evdev device? (not sure)
In MoltenGamepad's case, the wii plugin could be modified. It's been dead since 2017, this looks a much broader effort. If not for the wiimote itself, even some graphics tablet drivers come with smoothing features (e.g. openTabletDriver, userspace).