Skip to content

dav/oryx-kb-leds

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Oryx KB LEDs


****
What
****

A utility to control the LED colors and brightness on the System76 Oryx Pro. Includes modes like:

* Breathing: pulses the brightness of the LEDs in a pattern similar to human breathing. Can hook into CPU usage to determine breathing speed.
* Color gradients: smoothly transition between 2 or more colors. Speed adjustable.
* Seizure disco: just random color flashing as fast as possible.

***
How
***

The class OryxKBDLeds provides R/W access methods to various sysfs endpoints related to KB LEDs. Uses locks to prevent concurrent writes, asserts certain limits aren't exceeded.

class ColorControl uses the prev class to implement certain patterns. Figures out gradients between colors, does the math required to approximate human breathing, etc.

*****
To-Do
*****

* Implement command line options, config files for all settings
* Implement as a systemd service
* Add more patterns, functionality, eg.: link breathing speed to network throughput, etc
* multi-threading, to allow colors and brightness to be modified concurrently

# systemd service for breathe API
# needs config file for service
# /etc/oryxkbleds
# /etc/oryxleds/config.yml

About

Control your Oryx Pro's Keyboard LEDs

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Python 98.4%
  • Makefile 1.6%