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.