Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alien-lights

A small Linux CLI with no Python-package dependencies for the Alienware AW-ELC USB lighting controller (187c:0550). It controls chassis brightness, static RGB colors, native effects, and a handful of curated presets without Alienware Command Center.

The project intentionally stays simple: one Python executable, one udev rule, and one installer.

Compatibility

Tested on:

  • Alienware Aurora ACT1250
  • AW-ELC platform 0x0811, firmware 1.1.11
  • Ubuntu 24.04 with Python 3 and libusb-1.0

Other Alienware systems using USB ID 187c:0550 may work, but their segment ordering can differ. Open an issue with the output of alien-lights status if you test another model.

Install

git clone https://github.com/JakeLaney/alien-lights.git
cd alien-lights
./install.sh

This installs alien-lights and convenience symlinks into ~/.local/bin, then installs a udev rule limited to 187c:0550. On Ubuntu, ensure your account is in plugdev; desktop sessions can also receive access through uaccess.

To skip the system udev rule and use the automatic pkexec fallback instead:

./install.sh --user-only

Quick start

lights-off
lights-on
lights-dim 25
lights-status

lights-preset aurora --brightness 25
lights-preset synthwave
lights-preset rainbow
lights-presets

The full and shortcut forms are equivalent:

alien-lights preset aurora --brightness 25
lights-preset aurora --brightness 25

Colors and effects

Use a named color, RRGGBB, #RRGGBB, or 0xRRGGBB:

lights-color violet --brightness 30
lights-color 00ffaa --brightness 20
lights-colors

Native effects:

lights-effect breathe cyan --speed slow --brightness 30
lights-effect morph magenta blue --speed slow --brightness 40
lights-effect pulse red --speed fast --brightness 20
lights-effect spectrum --brightness 35
lights-effect wave --brightness 35

Available speeds are slow, medium, and fast. Brightness is expressed as an intuitive percentage from 0 to 100; the CLI translates that to the controller's inverted dim scale.

Curated presets:

Preset Look Default brightness
aurora Teal, electric blue, and violet morph 50%
synthwave Neon magenta, purple, and cyan chase 55%
rainbow Phased full-spectrum wave 55%
ember Red, orange, and amber fire glow 35%
ice Cool white, cyan, and deep-blue drift 40%
matrix Staggered phosphor-green breathing 30%
heartbeat Low red pulse 25%
gold Warm static amber 30%
stealth Very dim static red 7%

Override any preset's default with --brightness.

Design and safety

  • The controller reports its segment count at runtime; the tested ACT1250 has 70 segments.
  • Effects use the volatile 0xffff animation slot. The CLI does not save a theme, change the startup animation, or expose the controller's flash-erase command.
  • Failed animation transactions attempt to dim every reported segment to zero.
  • The controller does not expose its current brightness, so status reports identity and capabilities rather than inferred state.
  • Run with ALIEN_LIGHTS_DEBUG=1 to print raw request and response packets.

This is an unofficial, reverse-engineered utility. Use it at your own risk.

Attribution

The protocol implementation was informed by the Alienware controller support in OpenRGB and AlienFX-Aurora. Thanks to their contributors for documenting the AW-ELC protocol.

License

GPL-3.0-or-later. See LICENSE.

About

Lightweight Linux CLI for Alienware AW-ELC RGB lighting

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages