1
0
forked from drath/libratbag
Commit Graph

1988 Commits

Author SHA1 Message Date
Stephan Lachnit
abcec1d349 Register Roccat Kone Pure driver
Signed-off-by: Stephan Lachnit <stephanlachnit@protonmail.com>
2021-07-24 21:25:56 +01:00
Stephen Kitt
206bc5996d man: add both variants in ratbagctl.1 synopsis
PR #1188
2021-06-30 19:23:30 +01:00
Stephen Kitt
366f19abdd openinput: fix "Unknown" typo
PR #1187
2021-06-30 19:21:47 +01:00
Filipe Laíns
952bd9dc07 libratbag 0.16
Signed-off-by: Filipe Laíns <lains@riseup.net>
v0.16
2021-06-24 15:11:34 +01:00
staticssleever668
6b97d94a2f sinowealth: print out firmware version when probing 2021-06-23 15:40:38 +00:00
Thomas Weißschuh
ccaa8d1b6c ratbagd: register task to run as soon as possible
Previously the scheduled task would only have been executed after some
other event woke up the mainloop.
If no such event happens, the task will be delayed significantly.

Fixes #1121
2021-06-21 22:47:42 +01:00
Elián Hanisch
abe451df33 sinowealth-nubwo: fix implicit declaration of function ‘vasprintf’
driver-sinowealth-nubwo.c was missing to include "config.h" so
_GNU_SOURCE wasn't defined soon enough.

Co-authored-by: Elián Hanisch <elian.hanisch@ing.unlp.edu.ar>
2021-04-29 01:38:03 +01:00
Sethox
a3fa876c3d data: add SEL variant to Roccat Kone Pure
The last part added is for a variant called "Roccat Kone Pure SEL".

PR #1152
2021-04-21 03:45:25 +01:00
Filipe Laíns
230647c7f3 openinput: fail probe if we can't enumerate
These functions are mandatory[1], fail to probe if they fail.

[1] https://github.com/openinput-fw/openinput-protocol/tree/master/specification/device-protocol#mandatory-functions

Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-04-04 15:08:21 +01:00
Filipe Laíns
3f99446a1b ci: temporarily disable arch
See my description of the problem in [1].
Essentially, docker is mishandling the failuire when a syscall is not
available, returning EPERM instead of ENOSYS, and making code misbehave.
The current issue with arch is glibc, which explodes on EPERM, causing
pacman to misbehave.

Once the fix hits CircleCI, we will re-enable.

[1] https://github.com/fwupd/fwupd/issues/2894

Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-03-01 10:34:10 +10:00
Filip Laurentiu
a766f8e909 data: add new identifier for DeviceMatch to match MX Anywhere2 mouse
PR #1137
2021-02-28 19:02:52 +00:00
Pavel Kovar
9ae975f9a9 data: add support for Logitech M500s mouse 2021-02-17 17:53:27 +00:00
Filipe Laíns
780934b1a1 data: add openinput device
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
337fb935c4 openinput: refactor function discovery
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
c9cf5fe90c openinput: add function discovery
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
18af0f97d2 openinput: print device protocol name
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
286f13c654 openinput: read firmware information
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
c6b9cc0c2a openinput: add error support
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
7d82bb51a6 openinput: save protocol version
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
8976033da7 openinput: add openinput_send_report
Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
Filipe Laíns
c9c6a1675f openinput: add barebones driver
This is the minimal code required to have a working driver, now we just
need a .device file.

Note the hardcoding of `profile->is_active = true` in
openinput_read_profile, this works because we just have one profile.

Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-02-16 00:15:59 +00:00
the Weld
f1e2a4ccff data: add extra USB device ID for MX Vertical
Fixes #1132, for my own model of MX Vertical at the least.
2021-02-15 20:00:34 +00:00
Filipe Laíns
104543fdf1 data: add G Pro X Wireless Superlight
Support for this receiver, and for the device using the powerplay
receiver, still needs to be added to the kernel driver. For now, you can
used the wired connection to configure the device.

You should also not try to use with the powerplay receiver as the kernel
driver does not support the connection and won't forward any input
events to userspace.

Signed-off-by: Filipe Laíns <lains@riseup.net>
2021-01-30 10:59:37 +00:00
Matt
b3275e10d7 data: add Logitech M545 2020-12-30 17:43:52 +00:00
Filipe Laíns
120908bda8 data: add G915 TKL
Closes #1008

Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-10-22 20:20:04 +01:00
Filipe Laíns
32d6443553 data: add an ID to the MX Anywhere 2
Fixes #1078

Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-10-17 18:22:54 +01:00
Calvin Walton
ae943eaee7 data: Add configuration for SteelSeries Kinzu V2 Pro Edition
Appears to be basically the same as the V2 - the differences were
mostly in hardware (upgraded switches & image sensor). I've verified
that the list of DPI settings is correct and matches the Windows
software. Adjusting DPI config in both profiles works correctly.
2020-10-15 01:50:44 +01:00
Calvin Walton
4a9503f2da data: add device IDs for Logitech MX Anywhere 3 2020-10-14 21:57:19 +01:00
Filipe Laíns
e268100d31 libratbag-data: log message if the device is a Logitech receiver
We have been receiving countless issues and PRs reporting or "fixing"
the device IDs because they think it's wrong. Hopefully this will give
them an hint that is intended behavior. If they look closely at the log,
on a recent enough kernel, they should see their device show up with the
internal ID.

Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-10-09 17:37:44 +01:00
Filipe Laíns
8ec0e8bbc5 Revert "meson: bump required meson version"
This reverts commit e753db72f9.

The new version is too recent for lgtm.com.
See https://lgtm.com/projects/g/libratbag/libratbag/logs/rev/pr-c8dd47f8b4d0c40fc0a27b13e031bbb8e6c76987/lang:cpp/stage:Build%20merge_7b2f50275451a899db1bf70b6eaae9d88ecc56d0

Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-10-08 01:46:03 +01:00
bluemner
e6a9fba498 Update add support for G-Shift keys on g600 2020-10-05 00:44:27 +01:00
Thomas H.P. Andersen
e753db72f9 meson: bump required meson version
Bump the required meson version to match the features that we make
use of.

We now also make use of the 'copy:' keyword in configure_file that
is available in version 0.47.
2020-10-05 00:39:43 +01:00
Thomas H.P. Andersen
e1f4fac9a2 ratbagd-json: fix compilation with clang
Compilation on clang failed as we would try to jump to
the 'out' label and then jump over the initialization
of a variable with __attribute__((cleanup)).

We move the initaliztion up to make sure it happens before
the goto.
2020-09-29 02:11:09 +01:00
Thomas H.P. Andersen
8f981c8b87 circleci: bump to fedora 32
Bump to fedora 32 to updated meson version
2020-09-29 02:08:17 +01:00
Thomas H.P. Andersen
01d2cf8477 sinowealth: silence warning 2020-09-29 01:07:12 +02:00
Filipe Laíns
f7c22ed88c libratbag 0.15
Signed-off-by: Filipe Laíns <lains@archlinux.org>
v0.15
2020-09-25 21:38:01 +01:00
Thomas H.P. Andersen
aeda65cbfa sinowealth: remove per-resolution led
The glorious mice uses a single profile. To differentiate between
resolutions each one has customizable color. A led on the bottom
of the mouse shows the active resolution color.

Libratbag does not support a per-resolution color.

To allow adjusting these colors the sinowealth driver defines a led
for each resolution. This is a misuse of the model and will cause
problems when the mouse is added to Piper.

This patch removes the per-resolution leds and hardcodes the led
count to one.
2020-09-25 20:51:45 +01:00
Pipat Saengow
ed2439e5e2 sinowealthnubwo: more reasonable default and refactor 2020-09-21 17:39:28 +02:00
Pipat Saengow
f407521e8f Add driver for Nubwo X7 Spectrum
Nubwo X7 Spectrum is a sinowealth-based gaming mouse.
The sinowealth-nubwo driver included in this commit provides

- LED support (except color mode that are not available in libratbag)
- DPI and reporting support
- NO button mapping/macros support
2020-09-21 17:39:28 +02:00
heimer16
3c4fe23f70 data: update Logitech g9x (#913)
* add LED for Logitech g9x
* update min dpi range and step for Logitech g9x

Co-authored-by: Erin Heimer <heimer16@gmail.com>
2020-09-11 22:28:57 +02:00
Mike Crowe
9e2ac55dbc libratbag-private.h: Ensure that _GNU_SOURCE is defined early enough
When compiling on Ubuntu 20.04 with GCC 9.3.0 and glibc 2.31, I get:

In file included from ../src/libratbag-private.h:32,
                 from ../src/driver-sinowealth.c:24:
../src/libratbag-util.h: In function ‘asprintf_safe’:
../src/libratbag-util.h:154:7: warning: implicit declaration of function ‘vasprintf’; did you mean ‘vsprintf’? [-Wimplicit-function-declaration]
  154 |  rc = vasprintf(&result, fmt, args);
      |       ^~~~~~~~~
      |       vsprintf

This appears to be because <features.h> is being included by another
header before config.h has been included. If _GNU_SOURCE has not been
defined at that point, then the other macros that control whether
vasprintf is declared are not set correctly.

Include config.h right at the top of libratbag-private.h to ensure
that _GNU_SOURCE is defined before any system headers are included to
avoid this problem.
2020-08-30 19:16:51 +02:00
Nguyễn Chính Hữu
1e72ebaa7b data: add the G203 name to the .device file 2020-08-29 22:23:35 +01:00
peelz
920bc2b993 driver-hidpp10: fix segfault when committing unnamed profiles 2020-08-23 16:21:05 +01:00
TurkeyTheGobbler
20b573668e g300: use the correct step size 2020-07-25 17:26:37 +01:00
Daniel Lehmann
49acc11db3 Fix enumeration of Logitech G5 (2007)
Before this patch, ratbagd would abort initialization of the device because
no profiles are returned.

Once that was handled more gracefully, ratbagd would fail because it doesn't
read the DpiList from its own config file, as no ProfileType is specified.
Specifying G500 as the closest match.
2020-07-23 01:04:14 +01:00
Stephan Lachnit
364e3fd965 data: add additional USB-ID for the M720 Thriatlon
Signed-off-by: Stephan Lachnit <stephanlachnit@protonmail.com>
2020-07-23 01:00:33 +01:00
Marian Beermann
bb230d390d sinowealth: fix reading RGB brightness from device 2020-07-23 00:45:29 +01:00
Marian Beermann
93a076bed9 sinowealth: code style changes 2020-07-23 00:45:29 +01:00
Marian Beermann
e7b50c9061 sinowealth: rewrite RGB LED mode conversions 2020-07-23 00:45:29 +01:00
Marian Beermann
9d533bdc3e sinowealth: fix dpi_count not being updated
The firmware of these mice only considers the first dpi_count zero bits
in dpi_enabled.
2020-07-23 00:45:29 +01:00