# Table of Content
- Description
- Building and Install
- Install
- Using
- Sysfs
- Kernel Parameter
- Modes
# Description
TUXEDO Computers Kernel module for keyboard backlighting.
Additions
- Sysfs interface to control the brightness, mode, color, on/off state
- DKMS Ready
- Full RGB Color Support
- WMI Support for switch over the FN-Keys
# Building and Install
## Dependencies
- make
- gcc
- linux-headers
- dkms (Only when use this module with the DKMS functionality)
## Build the Module
```sh
make clean && make
```
## dkms
### Add as DKMS Module
At first point add the Module
```sh
make clean
sudo cp -R . /usr/src/tuxedo_keyboard-1
sudo dkms add -m tuxedo_keyboard -v 1
```
The secound step is compile the module
```sh
sudo dkms build -m tuxedo_keyboard -v 1
```
Install the DKMS module
```sh
sudo dkms install -m tuxedo_keyboard -v 1
```
Load the module with modprobe
```sh
modprobe tuxedo_keyboard
```
### Remove DKMS Module
Remove the dkms module
```sh
sudo dkms remove -m tuxedo_keyboard -v 1 --all
```
Remove the source
```sh
sudo rm -rf /usr/src/tuxedo_keyboard-1
```
# Using
## modprobe
```sh
modprobe tuxedo_keyboard
```
## Load at Boot-Up
Add Module to /etc/modules
```sh
sudo su
echo tuxedo_keyboard >> /etc/modules
```
Default Parameters at start.
In this example we start the kernel module with
- mode 0 (Custom / Default Mode)
- red color for the left side of keyboard
- green color for the center of keyboard
- blue color for the right side of keyboard
```sh
sudo su
echo "options tuxedo_keyboard mode=0 color_left=0xFF0000 color_center=0x00FF00 color_right=0x0000FF" > /etc/modprobe.d/tuxedo_keyboard.conf
```
# Sysfs
## General
Path: /sys/devices/platform/tuxedo_keyboard
## color_left
Allowed Values: Hex-Value (e.g. 0xFF0000 for the Color Red)
Description: Set the color of the left Keyboard Side
## color_center
Allowed Values: Hex-Value (e.g. 0xFF0000 for the Color Red)
Description: Set the color of the center of Keyboard
## color_right
Allowed Values: Hex-Value (e.g. 0xFF0000 for the Color Red)
Description: Set the color of the right Keyboard Side
## color_extra
Allowed Values: Hex-Value (e.g. 0xFF0000 for the Color Red)
Description: Set the color of the extra region (if exist) of the Keyboard
## brightness
Allowed Values: 0 - 255
Description: Set the brightness of the Keyboard
## mode
Allowed Values: 0 - 7
Description: Set the mode of the Keyboard. A list with the modes is under Modes
## state
Allowed Values: 0, 1
Description: Set the State of keyboard, 0 is keyboard is off and 1 is keyboard is on
## extra
Allowed Values: 0, 1
Description: Only get the information, if the keyboard have the extra region
# Kernel Parameter
## Using
```sh
sudo modprobe tuxedo_keyboard
```
## color_left
Set the color of the left Keyboard Side
## color_center
Set the color of the left Keyboard Side
## color_right
Set the color of the left Keyboard Side
## color_extra
Set the color of the left Keyboard extra region (Only when is a supported keyboard)
## mode
Set the mode (on/off) of keyboard
## brightness
Set the brightness of keyboard
## state
# Modes
## CUSTOM
Value: 0
## BREATHE
Value: 1
## CYCLE
Value: 2
## DANCE
Value: 3
## FLASH
Value: 4
## RANDOM_COLOR
Value: 5
## TEMPO
Value: 6
## WAVE
Value: 7