Submit #2921

Allow moused to accept userland mouse events

Added by tautolog about 5 years ago. Updated about 1 month ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


Allow moused to work with sysmouse when the port is a pipe,
not a real mouse device with working ioctls. Allows simple userland injection
of mouse events.

Attached is an example that works with the Griffin PowerMate

Just run `./ scroller.fifo` as a user account, and then run `moused -p scroller.fifo -t sysmouse` as root.

If you press down the wheel, it will multiply scrolls by 32, so you can fly through code like in the movies.


0001-Allow-moused-to-work-with-sysmouse-when-the-port-is-.patch (1.41 KB) 0001-Allow-moused-to-work-with-sysmouse-when-the-port-is-.patch trivial fix for moused tautolog, 06/10/2016 02:30 PM (2.8 KB) example that maps a volume knob USB HID device to scrolling mouse events tautolog, 06/10/2016 02:31 PM



Updated by tautolog about 4 years ago

I cleaned up the PowerMate python generic USB Driver to also be able to use libxdo to send keyboard or mouse events to X. This should work on any platform with X, and bypasses the moused hack. However, I also left a moused option because it also works on the console. I also placed the code for it on github.

This makes the moused hack not really necessary, unless you want console support as well. But I still think the patch should be applied because it isn't just a "hack", because all it does is fix a couple of uncaught errors relating to ioctls not existing. The errors weren't really handled properly anyway. Before, the code just assumed that the ioctls worked. With the patch, it merely falls back to not breaking sysmouse protocol handling.


Updated by tuxillo about 1 month ago

  • Target version changed from 4.2 to 6.0

Also available in: Atom PDF