Installation and Setup¶
LedFx is a network controller that aim to enable synchronization of multiple lights across a network. LedFx doesn’t currently support local control of LED strinngs so you will need a seperate devices (e.g. ESP8266) to directly control the LEDs. To be able to add your LED strips to LedFx your device will need to be capable of receiving data either via the E1.31 sACN protocol, or a generic (simple) UDP protocol. See below for a list of tested ESP8266 firmware that can be used with LedFx.
Here is everything you need to get started with LedFx:
A Computer (or Raspberry Pi) with Python 3.6 or 3.7 (Anaconda is recommended on Windows)
A E1.31 capable device with addressiable LEDs connected
- Commercial grade DMX controllers
- ESP8266 modules can be purchased for as little as $2 USD from Aliexpress
Here is a list of tested ESP8266 firmware that work with LedFx:
- ESPixelStick is a great E1.31 based firmware
- Scott’s Audio Reactive Firmware which inspired this project!
- WLED has lots of firmware effects and supports E1.31 and UDP
Windows Installation¶
To get started on Windows it is highly recommended that you use Anaconda to make installation of Cython components easier.
First, create a conda virtual environment (this step is optional but highly recommended)
conda create -n ledfx
conda activate ledfx
Install LedFx and all the dependencies using pip and the conda package manager
conda config --add channels conda-forge
conda install aubio portaudio pywin32
pip install ledfx
Launch LedFx (with the ‘open-ui’ option to launch the browser):
ledfx --open-ui
Linux Installation¶
To install on Linux first ensure you have at least Python 3.6 (optionally use Anaconda) installed.
Install LedFx and all the dependencies using apt-get and pip:
sudo apt-get install portaudio19-dev
pip install ledfx
ledfx --open-ui
Device Configuration¶
Once you have LedFx running it’s time to add devices! Once you have a device setup with appropriate firmware for integration to LedFx nagivate the the ‘Device Management’ page and click the ‘+’ in the bottom right. Add the device using the following configuration based on your firmware:
- Add the device as a E1.31 device. The default E1.31 settings should work fine.
Scott’s Audio Reactive Firmware
- Add the device as a UDP
- Click ‘Additional Properties’ and check ‘Include Indexes’
- Enabled E1.31 support from the WLED web-interface
- Add the device as an E1.31 device
- If you have more than 170 LEDs click ‘Additional Properties’ and set the ‘Universe Size’ to 510
Table of Contents¶
- Installation and Setup
- Development Setup
- REST API
- GET /api/info
- GET /api/config
- GET /api/log
- GET /api/schema/devices
- GET /api/schema/effects
- GET /api/devices
- POST /api/devices
- GET /api/devices/<deviceId>
- PUT /api/devices/<deviceId>
- DELETE /api/devices/<deviceId>
- GET /api/effects
- POST /api/effects
- GET /api/effects/<effectId>
- PUT /api/effects/<effectId>
- DELETE /api/effects/<effectId>
- WebSocket API
License¶
LedFx is licensed under the MIT license.