You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tanner Collin 44b57a1641 Fix thumbwheel interval bug. Add my config. 1 year ago
.github Add GitHub Actions 4 years ago
src/logid Fix thumbwheel interval bug. Add my config. 1 year ago
.editorconfig add .editorconfig to ease contribution by external devs 2 years ago
.gitignore Added mutex to devices to avoid cuncurrency issues 5 years ago
CMakeLists.txt Fix versioning system 4 years ago
LICENSE Initial commit 5 years ago Add Logitech trademarks to README 2 years ago Merge pull request #272 from lazarin/patch-1 2 years ago
logid.cfg Fix thumbwheel interval bug. Add my config. 1 year ago
logid.example.cfg docs: Update config example to match hidpp20 name 4 years ago
version.txt Add version.txt for tarballs 4 years ago


This is an unofficial driver for Logitech mice and keyboard.

This is currently only compatible with HID++ >2.0 devices.


Refer to the wiki for details.

You may also refer to logid.example.cfg for an example.

Default location for the configuration file is /etc/logid.cfg, but another can be specified using the -c flag.


This project requires a C++14 compiler, cmake, libevdev, libudev, and libconfig. For popular distributions, I've included commands below.

Arch Linux: sudo pacman -S cmake libevdev libconfig pkgconf

Debian/Ubuntu: sudo apt install cmake libevdev-dev libudev-dev libconfig++-dev

Fedora: sudo dnf install cmake libevdev-devel systemd-devel libconfig-devel gcc-c++

Gentoo Linux: sudo emerge dev-libs/libconfig dev-libs/libevdev dev-util/cmake virtual/libudev

Solus: sudo eopkg install libevdev-devel libconfig-devel libgudev-devel

openSUSE: sudo zypper install cmake libevdev-devel systemd-devel libconfig-devel gcc-c++ libconfig++-devel libudev-devel


To build this project, run:

mkdir build
cd build
cmake ..

To install, run sudo make install after building. You can set the daemon to start at boot by running sudo systemctl enable logid or sudo systemctl enable --now logid if you want to enable and start the daemon.


This program is (and will always be) provided free of charge. If you would like to support the development of this project by donating, you can donate to my Ko-Fi below.

Buy Me a Coffee at

I'm also looking for contributors to help in my project; feel free to submit a pull request or e-mail me if you would like to contribute.

Compatible Devices

For a list of tested devices, check


Logitech, Logi, and their logos are trademarks or registered trademarks of Logitech Europe S.A. and/or its affiliates in the United States and/or other countries. This software is an independent product that is not endorsed or created by Logitech.

Thanks to the following people for contributing to this repository.