samclane / LIFX-Control-Panel

As LIFX no longer supports their Windows 10 app, I created an open-source alternative for controlling LIFX-brand smart lights.
https://github.com/samclane/LIFX-Control-Panel
MIT License
161 stars 19 forks source link
home-automation lifx lifx-control-panel lifx-devices light smart-bulb smartbulb

Development is now being continued on the new Mantle project

LIFX-Control-Panel

codecov Smoke Build And Test

LIFX-Control-Panel is an open source application for controlling your LIFX brand lights. It integrates simple features, such as monitoring and changing bulb color, with more advanced ones, like:

Screenshot

Color Averaging Demo (Click for Video):

Avg Test Youtube

The application uses a fork of mclarkk's's lifxlan module to discover and send commands to the lights.

The fork can be found here.

Quick Start

There are 2 3 ways to install:

  1. Go over to releases and download the latest .exe file.

  2. Run pip install lifx-control-panel. To start run python -m lifx_control_panel.

Starting the program takes a moment, as it first must scan your LAN for any LIFX devices.

Running the source code

You can now install through PyPI, by running pip install lifx-control-panel. This will automatically install dependencies.

To manually install the dependencies, run pip install -r requirements.txt.

Due to some initial PyCharm cruft, the environment paths are a bit messed up.

LIFX-Control-Panel uses PyInstaller. After downloading the repository, open a command window in the LIFX-Control-Panel directory, and run pyinstaller __main__.pyw. This should initialize the necessary file structure to build the project.

As admin, run pip install -r requirements.txt to install project dependencies. Note that pyaudio requires the use of pipwin to install - use pip install pipwin to obtain pipwin then install pyaudio using pipwin install pyaudio

To build the project, simply open a terminal in the same folder and run build_all.bat in the command prompt. It will call pyinstaller on build_all.spec. This should generate .exe files in the /dist folder of the project for each of the 3 specs:

If you need help using PyInstaller, more instructions are located here.

Testing progress

I have currently only tested on the following operating systems:

and on the following LIFX devices:

I've tried to test on the following operating systems:

However, the biggest hurdle seems to be the tk GUI library, which is not supported on MacOS X, and requires extra library installations on Linux.

Feedback

If you have any comments or concerns, please feel free to make a post on the Issues page.

If you enjoy LIFX-Control-Panel, please Like and leave a review on AlternativeTo.

NEW

Join our Discord Server

Donate

LIFX-Control-Panel will always be free and open source. However, if you appreciate the work I'm doing and would like to contribute financially, you can donate below. Thanks for your support!

Buy Me a Coffee at ko-fi.com

paypal