CaseLights is an Arduino based RGB LED controller using a simple MOSFET setup. The lights are controlled with a Mac OS X Menu Bar App that can set static colors, animations, or visualize various computer status values using the included JSystemInfoKit.
You could connect pretty much any hardware. I’m using a N-Channel MOSFET Setup with IRF530 and a 10-piece RGB LED strip as well as an UV light tube.
My finished setup is made with a cheap Arduino Pro Mini clone from China and a dead simple RS232-TTL converter connected to its serial port. You may need to change Serial
to Serial1
in the Sketch if you’re trying to do this with an Arduino Leonardo, as I did at first.
Uncomment the #define DEBUG
at the beginning of the Sketch to enable very verbose debug messages sent on the serial port. This is not recommended for use with the CaseLights App.
The CaseLights XCode project includes the JSystemInfoKit project from the submodule in this repository. Just run xcodebuild
on the command line or open the project in XCode and click Run
to start the App.
CaseLights is only visible in the system menu bar. You can enable or disable the fourth channel (used for UV lighting in my case), set the RGB LEDs to static colors or simple animations, and select different visualizations for the RGB LEDs like CPU, GPU and RAM usage or hardware temperatures. The minimum and maximum values for these modes are hardcoded, but can be modified easily.
You can also select one of the displays connected to the Host machine. The CaseLights App will then create a Screenshot of this display 10-times per second and calculate the average color to display it on the RGB LEDs.
To clone this repository, enter the following:
git clone https://xythobuz.de/git/CaseLights.git
git submodule init
git submodule update
When pulling changes from this repository, you may need to update the submodule:
git submodule update
The included JSystemInfoKit project is licensed under the GPLv2.
CaseLights itself is made by Thomas Buck xythobuz@xythobuz.de and released under a BSD 2-Clause License. See the accompanying COPYING file.