Skip to content

E1DIGITALPF/OpenRGB-msi-steelseries

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MSI SteelSeries RGB Keyboard Control for Ubuntu (modded by E1DIGITAL)

This repository contains scripts and tools to control the RGB lighting on MSI SteelSeries keyboards (device ID 1770:FF00) on Ubuntu Linux systems.

Table of Contents

Prerequisites

  • Ubuntu Linux (tested on version 24.04, should work on other recent versions)
  • MSI laptop with SteelSeries RGB keyboard (device ID 1770:FF00)
  • User with sudo privileges
  • Internet connection (for initial installation)

Installation

Step 1: Install msi-keyboard Package

The msi-keyboard package is available in the official Ubuntu repositories. Install it using:

sudo apt update
sudo apt install msi-keyboard

Step 2: Verify Installation

Verify that the installation was successful:

msi-keyboard --help

You should see the help documentation for the msi-keyboard command.

Step 3: Clone or Download This Repository

If you haven't already, download or clone this repository:

git clone https://github.com/E1DIGITALPF/OpenRGB-msi-steelseries.git
cd OpenRGB-msi-steelseries

Or if you already have the files, navigate to the directory containing the scripts.

Step 4: Make Scripts Executable

Make all the shell scripts executable:

chmod +x keyboard-*.sh color-selector.sh

Quick Start

Change Keyboard Color Immediately

The easiest way to change your keyboard color is using the interactive selector:

./color-selector.sh

Or use one of the individual color scripts:

./keyboard-blue.sh    # Set to blue
./keyboard-red.sh     # Set to red
./keyboard-green.sh   # Set to green

Usage

Individual Color Scripts

This repository includes individual scripts for each available color. Each script sets the entire keyboard to a fixed color:

  • keyboard-red.sh - Red
  • keyboard-orange.sh - Orange
  • keyboard-yellow.sh - Yellow
  • keyboard-green.sh - Green
  • keyboard-cyan.sh - Cyan/Sky
  • keyboard-blue.sh - Blue
  • keyboard-purple.sh - Purple
  • keyboard-white.sh - White
  • keyboard-off.sh - Turn off keyboard lights
  • keyboard-rasta.sh - Rastafari colors (green, yellow, red) with breathing effect

Usage:

./keyboard-blue.sh

Interactive Color Selector

The color-selector.sh script provides an interactive menu to choose colors:

./color-selector.sh

This will display a numbered menu:

=== MSI Keyboard Color Selector ===
Select a color:
1. Red
2. Orange
3. Yellow
4. Green
5. Cyan/Sky
6. Blue
7. Purple
8. White
9. Off
10. Rastafari (breathing)

Simply enter the number corresponding to your desired color.

Note: The selected color configuration is automatically saved and will persist after system reboot. The script automatically updates the systemd service to apply your chosen color on startup.

Command Line Usage

You can also use the msi-keyboard command directly:

Set entire keyboard to one color:

sudo msi-keyboard -m normal -c left,blue,high -c middle,blue,high -c right,blue,high

Set different colors for each zone:

sudo msi-keyboard -m normal -c left,red,high -c middle,green,high -c right,blue,high

Use breathing effect:

sudo msi-keyboard -m breathe -c left,purple,high -c middle,purple,high -c right,purple,high

Use wave effect:

sudo msi-keyboard -m wave -c left,blue,high -c middle,blue,high -c right,blue,high

Available Modes:

  • normal - Static lighting
  • gaming - Gaming mode lighting
  • breathe - Breathing effect (pulsing lights)
  • demo - Demonstration mode (cycles through colors)
  • wave - Wave effect across keyboard

Available Colors:

  • red, orange, yellow, green, sky (cyan), blue, purple, white, off

Available Intensities:

  • high, medium, low, light

Automatic Startup Configuration

Good news! All color scripts (keyboard-*.sh and color-selector.sh) automatically save your configuration and apply it on system startup. You don't need to manually configure anything.

When you run any color script or use the color selector, it will:

  1. Apply the color immediately
  2. Automatically update the systemd service with your chosen configuration
  3. Enable the service to run on startup
  4. Save the configuration so it persists after reboot

Manual Configuration (Optional)

If you want to manually configure the service or use a custom command:

Step 1: Create Systemd Service

Create a service file:

sudo nano /etc/systemd/system/msi-keyboard.service

Step 2: Add Service Configuration

Add the following content (you can customize the colors and mode):

[Unit]
Description=MSI Keyboard RGB Service
After=multi-user.target

[Service]
Type=oneshot
ExecStart=/usr/bin/msi-keyboard -m normal -c left,blue,high -c middle,blue,high -c right,blue,high
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Step 3: Enable and Start Service

sudo systemctl daemon-reload
sudo systemctl enable msi-keyboard.service
sudo systemctl start msi-keyboard.service

Step 4: Verify Service Status

Check if the service is running:

sudo systemctl status msi-keyboard.service

Troubleshooting

Keyboard lights don't turn on

  1. Check if you're using sudo: All msi-keyboard commands require sudo privileges.

  2. Verify keyboard detection:

    lsusb | grep -i msi

    You should see: Bus 001 Device 003: ID 1770:ff00 MSI steel series rgb keyboard

  3. Check hidraw device permissions:

    ls -l /dev/hidraw*

    If permissions are restricted, add your user to the input group:

    sudo usermod -a -G input $USER

    Then log out and log back in.

Resource busy error

If you get a "resource busy" error, another application might be controlling the keyboard. Try:

  • Killing any other RGB control applications
  • Restarting your system
  • Unplugging and replugging the keyboard (if external)

Scripts not executable

If you get "Permission denied" errors:

chmod +x keyboard-*.sh color-selector.sh

Service not starting at boot

Check the service status:

sudo systemctl status msi-keyboard.service
sudo journalctl -u msi-keyboard.service

Files Description

Shell Scripts

  • keyboard-*.sh - Individual color scripts for quick color changes
  • color-selector.sh - Interactive menu to select colors
  • keyboard-rasta.sh - Special Rastafari color pattern with breathing effect

Python Scripts (Alternative Methods)

  • msi_keyboard_rgb.py - Direct HID communication script (requires hidraw access)
  • msi_keyboard_usb.py - USB direct communication script (experimental)

Configuration Files

  • msi-keyboard.service - Systemd service file template for automatic startup

Documentation

  • README.md - This file

Additional Resources

Credits

This repository has been modified and enhanced by E1DIGITAL.

Original work based on the msi-keyboard package from Ubuntu repositories and OpenRGB project.

License

The scripts in this repository are provided as-is for educational and personal use. The msi-keyboard tool is open source software.

Contributing

Feel free to submit issues, fork the repository, and create pull requests for any improvements.

Notes

  • The scripts use the official msi-keyboard package from Ubuntu repositories, which is the recommended method for controlling MSI SteelSeries keyboards on Linux.
  • The Python scripts (msi_keyboard_rgb.py and msi_keyboard_usb.py) are alternative experimental methods and may not work on all systems.
  • Always use sudo when running msi-keyboard commands directly.
  • The keyboard has three zones: left, middle, and right, which can be controlled independently.

About

MSI SteelSeries RGB Keyboard Control (modded)

Resources

License

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors