acer-lighting
Thanks
This project benefited greatly from the work, testing and research of several community contributors — especially: @ZoeBattleSand, @0x189D7997, and @JakeBrxwn. Their reverse-engineering, testing, tooling and discussion (see https://github.com/0x7375646F/Linuwu-Sense/pull/65) made much of this possible.
Small tools to control Acer laptop RGB zones and a daemon that persists/apply states.
Build
- Build the daemon only:
make acer-rgbd
- Build the CLI (used for manual commands and test targets):
make acer-rgb-cli
Or build everything with:
make build
Install
Install the daemon, helper script and systemd units:
sudo make install
The install target will:
- Copy
acer-rgbdto/usr/local/bin/acer-rgbdandacer-rgbto/usr/local/bin/acer-rgb. - Install systemd unit and socket under
/etc/systemd/system/and enable/start the service. - Create
/var/lib/acer-rgbd/state.txtwith an initial "all green" state so the daemon applies green on first start.
If you need to undo the install:
sudo make uninstall
Usage
- Send commands to the daemon using the
acer-rgbhelper (it talks to the daemon socket):
acer-rgb SET dev=keyboard hidraw=/dev/hidraw2 effect=static bright=100 r=0 g=255 b=0 zone=all
acer-rgb GET
- You can also use the CLI binary for direct HID control (for testing):
sudo ./acer-rgb-cli /dev/hidraw2 keyboard static --brightness 100 --rgb 0 255 0 --zone all
State file
The daemon persists three lines (keyboard, lid, button) in /var/lib/acer-rgbd/state.txt. Editing that file (as root) changes the values the daemon will reapply on start.
Logs & troubleshooting
View the daemon logs with:
journalctl -u acer-rgbd.service -f
If you modify the state file and want the daemon to reapply immediately, restart it:
sudo systemctl restart acer-rgbd.service
Notes
- The installer writes an initial all-green state (keyboard/lid/button) to
/var/lib/acer-rgbd/state.txtso newly installed systems show green LEDs by default. - Running the daemon requires root privileges (or appropriate udev rules) to access the HID device.