# colorlight-blaster Control Colorlight 5A-75B LED "receiver" boards using raw ethernet frames from Linux. `colorlight.py` script accepts 128x128 RGB (24-bit) bitmap stream and sends it out over ethernet (interface can be adjusted using `COLORLIGHT_IFACE`, defaults to `enp0s31f6`) `launch-led` script can be used to spawn a single command in a dedicated Xephyr (embedded Xorg "desktop") server, output from which will be automatically captured and transmitted to the LED panel using `colorlight.py`. Usage examples: ```sh ./launch-led xterm ./launch-led mpv -fs -vo xv movie.mp4 ./launch-led projectMSDL ``` ## Configuration - `COLORLIGHT_IFACE` - ethernet interface name to use as output (default: `enp0s31f6`) - `XEPHYR_RES` - adjust internal xephyr resolution (default 512) ## Requirements `colorlight.py` should work using plain python3. `launch-led` requires gstreamer, xdotool and xephyr (contains built-in nix-shell shebang so should theoretically work straight away if you have nix installed) ## Limitations `colorlight.py` is currently hardcoded to transmit 128x128 bitmap on bottom right quadrant of 256x256 panel (due to how our panel is wired up right now). This is not an issue, unless you want to build your own LED panel from scratch. Keep in mind Colorlight 5A-75B board needs to be configured first (if brand new) using [LEDVision software](https://www.colorlight-led.com/colorlight-software.html) (Windows-only). This is not an issue, unless you want to build your own LED panel from scratch. LEDVision versions before 9.0 have built-in (raw ethernet transmission) functionality equivalent to this script (although with somewhat limited framerate) - this is somewhat of a solution if you are looking for Windows support.