MCPcopy Create free account
hub / github.com/MatMoul/g810-led

github.com/MatMoul/g810-led @v0.4.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.4.3 ↗ · + Follow
71 symbols 169 edges 7 files 2 documented · 3% updated 2y ago★ 1,45154 open issues

Browse by type

Functions 56 Types & classes 15
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

g810-led

Linux led controller for Logitech G213, G410, G413, G512, G513, G610, G810, G815, G910 and GPRO Keyboards.

Compatible keyboards :

  • G213 Prodigy

  • G410 Atlas Spectrum

  • G413 Carbon

  • G512 Carbon

  • G513 Carbon

  • G610 Orion Brown

  • G610 Orion Red

  • G810 Orion Spectrum

  • G815 LIGHTSYNC

  • G910 Orion Spark

  • G910 Orion Spectrum

  • GPRO

Contribute and evolution :

Install :

Profiles :

You can load predefined configurations on startup! * PROFILES.md

Help :

g213-led --help

g410-led --help

g413-led --help

g512-led --help

g513-led --help

g610-led --help

g810-led --help

g815-led --help

g910-led --help

gpro-led --help

g810-led --help-keys

g810-led --help-effects

g810-led --help-samples

Samples :

g810-led -p /etc/g810-led/profile # Load a profile

g810-led -k logo ff0000 # Set color of a key

g810-led -a 00ff00 # Set color of all keys

g810-led -g fkeys ff00ff # Set color of a group of keys

g810-led -s color # Set keyboard power on effect

g810-led -fx color keys 00ff00 # Set fixed color effect

g810-led -fx breathing logo 00ff00 0a # Set breathing effect

g810-led -fx cycle all 0a # Set color cycle effect

g810-led -fx hwave keys 0a # Set horizontal wave effect

g810-led -fx vwave keys 0a # Set vertical wave effect

g810-led -fx cwave keys 0a # Set center wave effect

Samples with no commit :

g810-led -an 000000 # Set color of all key with no action

g810-led -gn modifiers ff0000 # Set color of a group with no action

g810-led -kn w ff0000 # Set color of a key with no action

g810-led -kn a ff0000 # Set color of a key with no action

g810-led -kn s ff0000 # Set color of a key with no action

g810-led -kn d ff0000 # Set color of a key with no action

g810-led -c # Commit all changes

Samples for G610 :

g610-led -a 60 # Set intensity of all keys

g610-led -k logo ff # Set intensity of a key

g610-led -g fkeys aa # Set intensity of a group of keys

Samples for G213 :

g213-led -a 00ff00 # Set all keys green

g213-led -r 1 ff0000 # Set region 1 red

Samples with pipe (for effects) :

g810-led -pp < profilefile # Load a profile

echo -e "k w ff0000\nk a ff0000\nk s ff0000\nk d ff0000\nc" | g810-led -pp # Set multiple keys

Testing unsupported keyboards :

Start by retrieving the VendorID and the ProductID of your keyboard using lsusb.

lsusb

Sample return :

Bus 001 Device 001: ID 046d:c331 Logitech, Inc.

In this sample VendorID is 046d and ProductID is c331. Now test your keyboard with all supported protocol (for 2019 keyboard start with -tuk 4):

g810-led -dv 046d -dp c331 -tuk 1 -a 000000

If your keyboard set all key to off you have found the protocol (1), if not continue.

g810-led -dv 046d -dp c331 -tuk 2 -a 000000

If your keyboard set all key to off you have found the protocol (2), if not continue.

g810-led -dv 046d -dp c331 -tuk 3 -a 000000

If your keyboard set all key to off you have found the protocol (2), if not continue.

g810-led -dv 046d -dp c331 -tuk 4 -a 000000

If your keyboard set all key to off you have found the protocol (3), if not, need new dump.

Building and linking against the libg810-led library :

Include in implementing source files.

#include <g810-led/Keyboard.h>

To link, simply provide -lg810-led to the build flags.

To build the g810-led application as a dynamically-linked variant, run the target:

make bin-linked

Dumps :

Dumps of keyboards are now stored in a separate project to preserve a small download size of this project. You can find them here : https://github.com/MatMoul/g810-led-resources

Core symbols most depended-on inside this repo

Shape

Function 35
Method 21
Enum 11
Class 4

Languages

C++100%

Modules by API surface

src/classes/Keyboard.cpp22 symbols
src/main.cpp18 symbols
src/classes/Keyboard.h13 symbols
src/helpers/utils.cpp11 symbols
src/helpers/help.cpp6 symbols
src/helpers/help.h1 symbols

For agents

$ claude mcp add g810-led \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page