Skip to content

[Feature Request] Filters/smoothing of noisy inputs (e.g. pointing devices) #536

@KayJay7

Description

@KayJay7

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).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions