Controlling Onboard LEDs on a Proxmox Node with OpenRGB
Control and persist RGB lighting on Proxmox using OpenRGB with a systemd service for startup.
If you’ve ever converted a gaming PC into a Proxmox node, you’ve probably noticed the RGB LEDs reverting to their default rainbow colors. One of my Proxmox nodes uses an ASUS Zenith Extreme motherboard, and I wanted to control its onboard lighting, ideally turning it all white instead of disco mode.
Here’s how to do it using OpenRGB, directly installed on the Proxmox node.
Step 1: Install Build Dependencies
sudo apt install git build-essential qtcreator qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libusb-1.0-0-dev libhidapi-dev pkgconf libmbedtls-dev qttools5-dev-tools
Step 2: Clone and Build OpenRGB
git clone https://gitlab.com/CalcProgrammer1/OpenRGB
cd OpenRGB
mkdir build
cd build
qmake ../OpenRGB.pro
make -j$(nproc)
You can then run the application from the build directory:
./openrgb
Step 3: List Available Devices
To see connected RGB devices:
./openrgb -l
Sample output might look like this:
ASUS Aura Motherboard
Type: Motherboard
Description: ENE SMBus Device
Version: AUMA0-E6K5-0105
Location: I2C: /dev/i2c-3, address 0x66
Modes: Direct Off Static Breathing Flashing 'Spectrum Cycle' [Rainbow] 'Chase Fade' Chase 'Random Flicker'
Zones: Backplate
LEDs: 'Backplate LED 1' through 'Backplate LED 7'
This lists all supported modes and zones.
Step 4: Set Static White Lighting
To switch all lighting to white at full brightness:
./openrgb --device 0 --mode static --color FFFFFF -b 100
Note: This change is temporary, it resets after a reboot.
Step 5: Make It Persistent with systemd
Create a systemd service file to apply the settings on boot:
nano /etc/systemd/system/openrgb.service
Paste the following content:
[Unit]
Description=Set OpenRGB static white lighting on boot
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/root/OpenRGB/build/openrgb --device 0 --mode static --color FFFFFF -b 100
RemainAfterExit=true
[Install]
WantedBy=multi-user.target
Save and exit, then reload systemd and enable the service:
systemctl daemon-reexec
systemctl daemon-reload
systemctl enable openrgb.service
systemctl start openrgb.service
Step 6: Verify It’s Working
Check the service status:
systemctl status openrgb.service
If all looks good, your RGB setup will now default to static white on every boot.