||4 years ago|
|ledd||6 years ago|
|.gitignore||6 years ago|
|LICENSE||6 years ago|
|README.md||4 years ago|
|ledd.py||6 years ago|
|ledd.service||6 years ago|
|setup.py||6 years ago|
This project is no longer maintained and has been superseded by LedD.Go.
LedD is a multipurpose daemon for interfacing LED(s) written in python. It provides an abstract interface for effects to control any kind of LED through an backend, although its original purpose was interfacing a PCA9685 chip via i2c. Since there are multiple ways to control leds we made the decision to write LedD as open as possible to other ways of controlling leds. As a result of this decision we split LedD in a server part (this repository) and multiple clients, which can be written in any kind of language and can use a custom way to control its LEDs, as long as they implement LedD's protobuf protocol they can be controled with LedD.
As for frontends there is only an Android app available at this time, there will be more some time in the future. (You are encouraged to write your own!)
- Python 3.x, tested with Python 3.4
- Linux with i2c-dev module loaded and permissions to access /dev/i2c-* devices, preferably as non-root (add your user to the i2c group)
- Compatible controller device connected via i2c; currently supported controllers:
- Note: Plugins can have different permission requirements
Make sure your i2c devices are available (modprobe i2c-dev) before you follow these steps.
apt-get install python3-dev python3-pip python3-cffi python3-docopt python3-nose python3-sqlalchemy python-smbus libffi-dev
pip3 install -U cffi(fixes a bug where smbus-cffi can't install)
pip3 install coloredlogs spectra json-rpc smbus-cffi
adduser $USER i2c
Plugins & Effects
Plugin functionality is planned as we provide APIs for effects and plugins to use. Here are some we are going to provide when they are finished.
- lux sensor (TSL2591) for providing information if lights need to be turned on
- start/stop hook so you can switch your LED power supply
- planned hook points for plugins include
- set color (for e.g. gamma correction)
- controller support
- strobe (as far as possible)
This project is licensed under the conditions of the GNU GPL 3.0.