Skip to main content

Logitech G13 Linux driver with macro support, RGB control, and LCD display management

Project description

G13 Linux

PyPI Downloads Python CI License: MIT

Python userspace driver for the Logitech G13 Gaming Keyboard on Linux.

Features

  • 22 Programmable G-Keys with macro support
  • RGB Backlight Control with full color range
  • 160x43 LCD Display with custom text and graphics
  • Thumbstick Support with configurable zones
  • Profile Management for different applications
  • PyQt6 GUI for visual configuration

Installation

# From PyPI
pip install g13-linux

# Or with pipx (recommended for CLI tools)
pipx install g13-linux

System Dependencies

# Ubuntu/Debian
sudo apt install libhidapi-hidraw0

# Fedora
sudo dnf install hidapi

udev Rules (Required)

# Allow non-root access to G13
sudo cp udev/99-logitech-g13.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

Usage

CLI

g13-linux --help      # Show help
g13-linux --version   # Show version
g13-linux             # Run the input daemon

GUI

g13-linux-gui         # Launch the configuration GUI

Python API

from g13_linux import open_g13, G13Mapper

# Open device and start mapping
device = open_g13()
mapper = G13Mapper()

# Read events
while True:
    data = read_event(device)
    if data:
        mapper.handle_raw_report(data)

Hardware

Component Status
G1-G22 Keys ✅ Working
M1-M3 Mode Keys ✅ Working
MR Key ✅ Working
Thumbstick ✅ Working
LCD Display ✅ Working
RGB Backlight ✅ Working

Note: Button input requires either:

  • udev rules for hidraw access, or
  • sudo with libusb mode (g13-linux-gui --libusb)

Linux kernel 6.19+ will include native hid-lg-g15 support for G13.

Development

# Clone and setup
git clone https://github.com/AreteDriver/G13_Linux.git
cd G13_Linux
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

# Run tests
pytest

# Lint
ruff check src/ tests/

License

MIT License - see LICENSE for details.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

g13_linux-1.1.6.tar.gz (60.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

g13_linux-1.1.6-py3-none-any.whl (58.6 kB view details)

Uploaded Python 3

File details

Details for the file g13_linux-1.1.6.tar.gz.

File metadata

  • Download URL: g13_linux-1.1.6.tar.gz
  • Upload date:
  • Size: 60.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for g13_linux-1.1.6.tar.gz
Algorithm Hash digest
SHA256 7cc9d5f02d99bdb26ab0f5c0cd1f85c20af554970bce94606f3e9003c8290b03
MD5 d37712c7a093ab9e4ae0911372570c10
BLAKE2b-256 a3eb17b5242cb5b12a44e37e7176f1176a968b448ce88072852d3782cb1f531c

See more details on using hashes here.

File details

Details for the file g13_linux-1.1.6-py3-none-any.whl.

File metadata

  • Download URL: g13_linux-1.1.6-py3-none-any.whl
  • Upload date:
  • Size: 58.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for g13_linux-1.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c83843352871aa5a86e880c6c56502bab7c64eca3a1eb7f62de69fb078d88a8d
MD5 5f3cfdfeaaa263de52fe7136e56754c4
BLAKE2b-256 12e751b2074a6010b104c6bdfc7962c6cfb77a978a967ffdf38b96ce1a7e054e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page