Showing posts with label Python. Show all posts
Showing posts with label Python. Show all posts

Friday, November 30, 2012

Introducing LightingPi




As a companion to my pixelPi software and I've started work on an output device which works with OLA (Open Lighting Architecture).  This allows the Raspberry Pi to be use to control; servos; dimmers; relays and pixels (via pixelPi) all controlled over standardized lighting/prop control protocols supported by OLA.  This would essentially be a configurable node which drives hardware and can be controlled with Artnet; E1.31; ESP Net; Pathport; Sandnet; Shownet.

https://github.com/LightingPi/lightingPi

Features:

  • Control strings of LED pixels with a raspberry Pi
  • Control strings of analog RGB LED strings (up to 16 channels per PWM board)
  • Control Incandessent lighting via SSR boards (work in progress)
  • Control servo position
  • Control of all fixtures provided over all major lighting protocols Artnet / E1.31/ OSC ...via OLA

Overview:

DMX based protocols are quite flexible.  The LightingPi software is a client which allows control of a large variety of light fixtures attached to the Raspberry Pi



Hardware:

(1) RaspberryPi
(2) PWM Hardware (Needed for Analog RGB Pixels and Servos)
(3) Something to play with (Servo motor; LED strips; LED pixels, SSRs)

Wiring Diagram:


No rocket science here:
Dimmer and RGB analog control provided by an I2C PWM generator
Led Pixel support provided by SPI bus directly on the raspberry pi


RGB LED strings driven by passing the PWM output to FET drivers (in the form of "RGB String Amplifiers cheaply available from ebay)

Servos are directly driven from the PWM IC

SSRs for dimmers are directly driven from PWM IC

Software:

lightingPi:

Grab the latest version here: https://github.com/scottjgibson/lightingPi

Configuring the peripherals:

Have a look at config.ini; its pretty self explanitory

OLA:

Install via apt; sudo apt-get install ola





Sunday, October 28, 2012

PixelPi Update

So lots has been going on with PixelPi since my last update:


Rearchitecture:
I've forked (https://github.com/mostley/PixelPi) github fork into the PixelPi/PixelPi trunk.  It significantly changes the architecture of the project.  Now there is a simple controller.py file which simply receives pixel data (currently raw (pixel invaders) type;

DMX/Artnet/OLA Support:
 I have added on proper IP protocol support using OLA Open Lighting Architecture.  This allows support of standardized lighting protocols and allow you to control your pictures from many more applications.

There is now a shim layer which interfaces the output of OLA to the pixels; I'm still learning about the OLA package; its quite impressive and I think it will suite these needs perfectly.

Pixel Grouping:
I've added support for grouping pixels so they can be controlled with a single group of RGB DMX data.


Getting organized:
So right now the new pixel pi implementation is missing much of the test mode stuff in the original.  I'll be adding it over time.


Issues and contributions:
I've added an issues page to  the PixelPi github page; please feel free to make a new issue for any changes, bugs, enhancements.