MQTT control of PWM capable pins on the Raspberry Pi - not strictly limited to lighting either...
Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
LICENSE
README
mqtt-pwm-lights.cfg.example
mqtt-pwm-lights.default
mqtt-pwm-lights.init
mqtt-pwm-lights.py

README

SUMMARY
=======

This script subscribes to a topic defined in /etc/mqtt-pwm-lights/mqtt-pwm-lights.cfg, and adjust the PWM value on the configured pin (18 by defualt) on a Raspberry Pi. It requires the WiringPi library from https://projects.drogon.net/raspberry-pi/wiringpi/ as the gpio command is used to control the PWM values on the GPIO interface. Neither WiringPi SYSFS exporting or RPi.GPIO (Python library) support PWM at this point in time.

When any change to the lighting level is required, it will ramp up or down to the desired level, creating a smooth lighting level change effect.

INSTALL
=======

# This needs automated and/or packaged up

sudo echo "deb http://repo.mosquitto.org/debian wheezy main" > /etc/apt/sources.list.d/mosquitto-wheezy.list
wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key -O /tmp/mosquitto-repo.gpg.key
sudo apt-key add /tmp/mosquitto-repo.gpg.key
sudo apt-get update

sudo apt-get install python-mosquitto git
mkdir /etc/mqtt-pwm-lights/
git clone git://github.com/kylegordon/mqtt-pwm-lights.git /usr/local/mqtt-pwm-lights/
cp /usr/local/mqtt-pwm-lights/mqtt-pwm-lights.cfg.example /etc/mqtt-pwm-lights/mqtt-pwm-lights.cfg
cp /usr/local/mqtt-pwm-lights/mqtt-pwm-lights.init /etc/init.d/mqtt-pwm-lights
update-rc.d mqtt-pwm-lights defaults
cp /usr/local/mqtt-pwm-lights/mqtt-pwm-lights.default /etc/default/mqtt-pwm-lights
## Edit /etc/default/mqtt-pwm-lights and /etc/mqtt-pwm-lights/mqtt-pwm-lights.cfg to suit
/etc/init.d/mqtt-pwm-lights start

LICENSE
=======
See LICENSE file