libx52/daemon
nirenjan aa95ed306f Fix multiple virtual wheel events with noisy input
Prior to this change, the x52d virtual mouse logic was assuming that the
joystick would only send one report with the wheel button state as "on",
and subsequent reports would be "off". However, with some joysticks, the
other axis sensors could be faulty or noisy, and the joystick could send
multiple reports with the mouse button "on", without an "off" state in
between. This was causing scroll events to be much faster than would be
expected (1 mouse scroll to 1 screen scroll event)

This change should fix the problem, by comparing the value of the
previous button state. This should now trigger a wheel event only on a
rising edge (from "off" to "on").

See #46
2023-03-18 00:49:21 -07:00
..
tests Add test case for setting unknown configuration value 2022-09-22 22:14:44 -07:00
Makefile.am Add logging test cases to EXTRA_DIST 2022-09-22 14:45:15 -07:00
daemon.dox Update daemon documentation to include notify socket 2022-09-21 20:08:58 -07:00
protocol.dox Update daemon protocol documentation 2023-01-04 10:07:20 -08:00
test_daemon_comm.py Use x52ctl to test daemon communication 2022-09-23 10:02:17 -07:00
x52ctl.c Add notify API 2022-09-06 23:19:03 -07:00
x52d.conf Add option to reverse mouse scroll direction 2022-06-14 09:36:13 -07:00
x52d.service.in Revert "Enable verbose logging in systemd service" 2021-10-05 22:38:34 -07:00
x52d_client.c Add notify API 2022-09-06 23:19:03 -07:00
x52d_client.h Add notify API 2022-09-06 23:19:03 -07:00
x52d_clock.c Integrate pinelog module logging functionality 2021-11-10 09:29:27 -08:00
x52d_clock.h Add clock update functionality 2021-07-23 10:13:18 -07:00
x52d_comm_client.c Add notify API 2022-09-06 23:19:03 -07:00
x52d_comm_internal.c Move common socket code into x52d_comm_internal.c 2023-01-04 08:42:47 -08:00
x52d_command.c Move common socket code into x52d_comm_internal.c 2023-01-04 08:42:47 -08:00
x52d_command.h Move command processing into separate thread 2022-07-27 12:47:53 -07:00
x52d_config.c Add a callback to apply one configuration item immediately 2022-02-11 13:30:17 -08:00
x52d_config.def Add option to reverse mouse scroll direction 2022-06-14 09:36:13 -07:00
x52d_config.h Add option to reverse mouse scroll direction 2022-06-14 09:36:13 -07:00
x52d_config_dump.c Cleanup config dump routine 2022-09-22 21:31:49 -07:00
x52d_config_parser.c Update int_parser to reject invalid input 2022-09-01 20:50:36 -07:00
x52d_const.h Add notify API 2022-09-06 23:19:03 -07:00
x52d_device.c Add notifications when device is connected/disconnected 2022-09-23 15:15:49 -07:00
x52d_device.h Disable device check routine in daemon 2021-09-14 09:10:52 -07:00
x52d_io.c Integrate pinelog module logging functionality 2021-11-10 09:29:27 -08:00
x52d_io.h Create I/O thread to read and process events 2021-09-14 13:33:36 -07:00
x52d_led.c Integrate pinelog module logging functionality 2021-11-10 09:29:27 -08:00
x52d_main.c Ensure notification socket is bound when starting daemon 2022-09-22 21:28:20 -07:00
x52d_mouse.c Add option to reverse mouse scroll direction 2022-06-14 09:36:13 -07:00
x52d_mouse.h Add option to reverse mouse scroll direction 2022-06-14 09:36:13 -07:00
x52d_mouse_evdev.c Fix multiple virtual wheel events with noisy input 2023-03-18 00:49:21 -07:00
x52d_mouse_test.c Add unit tests for mouse reverse scroll 2022-07-03 16:00:13 -07:00
x52d_notify.c Move common socket code into x52d_comm_internal.c 2023-01-04 08:42:47 -08:00
x52d_notify.h Add notifications when device is connected/disconnected 2022-09-23 15:15:49 -07:00
x52dcomm-internal.h Move common socket code into x52d_comm_internal.c 2023-01-04 08:42:47 -08:00
x52dcomm.h Add notify API 2022-09-06 23:19:03 -07:00