Falcon Christmas

Other Controllers and Hardware => General Hardware => Topic started by: sbmcdaniel on November 22, 2014, 02:30:20 PM

Title: Raspberry Pi GPIO output direct to SSR board
Post by: sbmcdaniel on November 22, 2014, 02:30:20 PM
Hello everyone. (yes, new guy - first post) :D

I am attempting to drive relays directly from the Pi's GPIO pins. I know it is simple, but that is what I am attempting to do. I have scoured the internet for information on every resource I know of. I have successfully used Vixen 2 to make a test sequence which works with an Arduino and 8 channel SSR board. When using xLights to convert this sequence, I cannot get it to work with FPP. I am certain this has everything to do with driving a channel directly, instead of driving through an external board and associated protocol. I have setup the outputs in FPP to use GPIO and nothing works. I have tried to build a sequence in xLights/nutcracker but have been unsuccessful as I cannot find a way to link the outputs to the GPIO directly (only setup choices are USB type or E1.31 type) I have searched the forums here for GPIO output and other related searches but have come up empty handed. Any input?

/r,
Brian
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on November 22, 2014, 08:15:10 PM
Are you using the right pins for the BCM GPIO pins you have configured in the channel output screen?  There is a table in the help for that screen which lists the BCM (chip) pin to Pi header pin numbers.  Press F1 or click the link at the top right of the page under the menu.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: sbmcdaniel on November 22, 2014, 08:45:39 PM
Yes, I have configured the correct pins. I have also ensured that they were set to "active".

Thanks for the response, I will continue to dig. I believe my problem originates from the sequence. I assumed the Pi would correlate the correct output based on channel number alone. I may have an issue with the setup within xLights, when making the conversion.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: sbmcdaniel on November 22, 2014, 09:42:53 PM
Figured it out. I had to configure the xLights setup before making the conversion from .vix to .fseq. When xLights setup was blank, the .fseq file was created but xLights would crash to the desktop. After setting up a fake E1.31 device with 8 channels, using multicast, it would convert fine. All is well. Vixen > xLights > FPP > Pi B+ GPIO > 8 Ch SSR, works like a charm.

 :)

Brian
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on November 22, 2014, 09:50:02 PM
Great, thanks for reporting back.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: viperbe on October 06, 2015, 12:00:00 PM
Figured it out. I had to configure the xLights setup before making the conversion from .vix to .fseq. When xLights setup was blank, the .fseq file was created but xLights would crash to the desktop. After setting up a fake E1.31 device with 8 channels, using multicast, it would convert fine. All is well. Vixen > xLights > FPP > Pi B+ GPIO > 8 Ch SSR, works like a charm.

 :)

Brian

Would you be willing to share your config? this is what im looking to do.

I am new to Xlights, Is there a way to configure Xlights for GPIO direct output on the pi? if so can someone point me in the right direction? I tried to search but didnt find anything.
I did find the Xlights to pi conversion but i was wondering how to setup on windows to do all my work on windows first then import on the pi ..

Can someone help me out and get me started on the config for GPIO 0-7

I was looking at also vixen 3 at doing the same thing or Vixen > Xlights conversion would that be possible? Either way does anyone have a guide to setup vixen or xlights to go directly to GPIO from PI?
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: uzelessknowledge on October 06, 2015, 02:51:12 PM

Figured it out. I had to configure the xLights setup before making the conversion from .vix to .fseq. When xLights setup was blank, the .fseq file was created but xLights would crash to the desktop. After setting up a fake E1.31 device with 8 channels, using multicast, it would convert fine. All is well. Vixen > xLights > FPP > Pi B+ GPIO > 8 Ch SSR, works like a charm.

 :)

Brian

I'm interested to knowing how you did this as well. Using an SSR gives me some ideas.


Travis
Sent from my iPhone using Tapatalk
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: viperbe on October 06, 2015, 02:55:53 PM
http://doityourselfchristmas.com/forums/showthread.php?36545-Falcon-Player-Installation-Instructions

What you want to do is download all the predefined events for the pi. Configure the events to trigger with the GPIO nubers of your desire. This is all done via the FPP web interface.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: burntwood on November 11, 2015, 08:19:22 PM
I'm with uzelessknowledge... I have the info on how to setup FPP on the Raspberry Pi (http://doityourselfchristmas.com/forums/showthread.php?36545-Falcon-Player-Installation-Instructions), but curious about the specific details on getting the Vixen3 sequences to the FPP to work with GPIO's.
When I export the Vixen3 show to CSV, I can see that the channels are dimming (0-255). But when I export it to FPP, it's only turning the lights on/off.

Currently using:
* Design shows/sequences built with Vixen3
* Raspberry Pi B+ talking to 8x8 (64 channels) SainSmart SSR boards with the random cross relays (202PL)

I used an Arduino Mega last year (32 channels and dimming worked), but it's not going to scale as the show grows.

So any help would be greatly appreciated!

Thanks!
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on November 11, 2015, 09:08:22 PM
FPP's GPIO outputs only currently support on/off, any non-zero value is on and zero is off.  We might be able to support dimming in the future using the wiringPi library's PWM support but I haven't looked into that at all really.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: bzzbee2 on November 12, 2015, 11:08:33 AM
I am looking at doing a similar setup to control lights in my office.  We have a Christmas Cube Decorating contest every year.   I was thinking of doing wall to wall lights to music.  Simple on/off of the lights to the music is what I am trying to do.   Do you have any photos of your setup that you could share so I could have a better understanding of what I am getting myself into?  8 Channels through a SSR should be plenty for my cubicle.

Thanks,
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on November 12, 2015, 11:27:50 AM
Will simple PWM work to give you dimming ability?  I think that it would be easy to modify FPP to support optionally using PWM on a GPIO output instead of basic on/off control.

In regards to the Vixen3 question.  The GPIO outputs are treated like any other channel output in FPP.  Your sequencer doesn't need to know what kind of controllers are behind those channels, it just needs to know that you want 'X' channels.  Then FPP maps those channels onto the outputs you configure in FPP's Channel Output screen.  In xLights, you can use an E1.31 controller as a placeholder or a 'Null' controller.  It will vary sequencer to sequencer, but unless you are trying to also use your sequencer to drive lights directly then the controller setup in the sequencer doesn't have to be exact.  If you are using Vixen3 or Vixen+ then you can export directly to a .fseq file and don't need to use xLights to convert to .fseq.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: oceanwanderlust on November 24, 2015, 10:07:57 PM
I put some details of my GPIO/Relay setup in (humbly)Showing Off to help everyone else get started:

http://falconchristmas.com/forum/index.php/topic,3545.0.html

PWM (dimming) on GPIO would allow me to connect a strip or two of RGB lights (with a MOSFET). How many ports do you think you could accurately PWM in software without bogging the Pi down?
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on November 24, 2015, 10:30:33 PM
I put some details of my GPIO/Relay setup in (humbly)Showing Off to help everyone else get started:

http://falconchristmas.com/forum/index.php/topic,3545.0.html

PWM (dimming) on GPIO would allow me to connect a strip or two of RGB lights (with a MOSFET). How many ports do you think you could accurately PWM in software without bogging the Pi down?

According to the wiringPi Software PWM page, doing software PWM on a GPIO pin only takes 0.5% CPU, so we could drive quite a few pins without a lot of CPU.

https://projects.drogon.net/raspberry-pi/wiringpi/software-pwm-library/ (https://projects.drogon.net/raspberry-pi/wiringpi/software-pwm-library/)

I need to spend some time looking at that page and mulling it over, but if I read it correctly, we should be able to bump the range up to 255 which would still keep the maximum update frequency at almost 40hz so we should be able to play a 50ms sequence updating the PWM range every 50ms.

I think it would be easy to implement as a checkbox in the current GPIO channel output.  If the 'PWM' checkbox is checked, we call softPwmCreate() when set initialize and then instead of calling digitalWrite() for new channel values, we instead call softPwmWrite() to change the value.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on December 16, 2015, 03:59:44 AM
I would be in someones gratitude if this became a reality.

The other thing that would make my year is if the GPIO ports from expanders could be used/mapped - this is the one I have providing 32 GPIOs -  https://www.abelectronics.co.uk/products/3/Raspberry-Pi/18/IO-Pi

I'm going to pull the code and have a look, but if someone could point me in the right direction, it would be greatly appreciated.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on December 16, 2015, 09:08:13 PM
I would be in someones gratitude if this became a reality.

The other thing that would make my year is if the GPIO ports from expanders could be used/mapped - this is the one I have providing 32 GPIOs -  https://www.abelectronics.co.uk/products/3/Raspberry-Pi/18/IO-Pi

I'm going to pull the code and have a look, but if someone could point me in the right direction, it would be greatly appreciated.

The mcp23017 is supported by the wiringPi library, so it would be easy to add support for that board using by just copying our existing GPIO channel output and modifying it a little.  It is probably less than 10-15 lines of code to be changed not counting renaming the C++ class itself.  It could also be added as an option to the existing GPIO output type like I added the 'invert' option recently.  I don't know that wiringPi could support PWM on the mcp23017 though.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on December 21, 2015, 03:51:06 AM
Thanks for the reply Chris. I've pulled the code and will have a look.

I've never used/coded C++, predominantly PHP, so this will be interesting.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on December 21, 2015, 08:14:10 AM
For the C++ backend you can copy channeloutputs/GPIO.* to channeloutputs/GPIO-MCP.* and edit the new files.  Here is a page which describes the function call to initialize the MCP:  http://wiringpi.com/extensions/i2c-mcp23008-mcp23017/   We will need to pass in the I2C address and it is probably easiest to calculate a PIN number based on that.  channeloutputs/channeloutput.c will need to be modified to add the new GPIO-MCP channel output and the Makefile will need to be modified to do the same.  Then www/channeloutputs.php will have to have the setup UI added.  If you want to try to tackle adding this I can help educate.  It would probably be good for me to type up some instructions for adding a new channel output so others can chip in in the future.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on December 22, 2015, 04:32:15 AM
Perfect, thanks mate.

I am very interested in adding this functionality to FPP. I've pulled the code and configured it in Netbeans (it may not be the ideal, but I've been using it as an IDE for years). There are a couple of issues with the actual compiling that I know nothing about and need to figure out/configure correctly. Also need some advice on compiling and testing. I'm currently coding in Win10, but have access to my Ubuntu 14.04LTS CLI which I'm fairly comfortable with also.

In relation to functionality, I'm looking to accomplish the following with FPP:

1. Add the channel output for this extender. Apparently I can daisy-chain 4 of these boards for a total of 128 GPIOs. It still leaves me short formy project, but will at least get me a long way there. I need to figure out the best way to add pixels to my show. Currently only running static SSR and a number of RGB 5050 strips.
2. Add support for soft PWM.
3. Happy to help document as needed (I've documented in a private Wiki before).

Do you have a preferred communication channel? IM/Email/etc.?

Cheers,

Craig.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on December 22, 2015, 12:26:56 PM
I think there are quite a few issues compiling under windows currently, so you will want to use Ubuntu or do it right on the Pi or BBB.

We have a Makefile which builds everything, you may be able to call that directly, I don't use netbeans so I am not sure.

If you need more outputs than supported on one Pi, you can run multiple Pi's synced together using FPP MultiSync.

I am not sure how fast soft PWM can be on GPIO pins other than the built in GPIO pins on the Pi.  I am also not sure if the SoftPWM support in the wiringPi library can be used for anything other than the built in pins.  If it does then we can also look at converting the GPIO-595 output to use wiringPi's 595 support, right now I only use wiringPi to manipulate the Pi's pins directly.

We are working on getting a better doc system up and also have one user who has started on a manual.  I think our current plan is that the new doc system will be open to updating by users so we can get more contributors.

Thread posting or PM on here is probably the best method of communication for now.  I prefer to keep conversations like this on adding a new channel output in the public area so other users can benefit from the knowledge later.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 02, 2016, 08:11:52 PM
Thanks for that. I'll build it on the Pi then if that's the way to go.

I've modified most of the files and am currently working out the best way to define the I2C addresses in the GUI. My thought is to simply replicate the interface for the GPIO 595 and instead of a dropdown with pre-filled values, have a text box where each MCP chip could be mapped to it's unique I2C address.

i.e.
Code: [Select]
#   |   Act   |   Type       |   Start Ch.   |   Ch. Count                                          |   Output Config
1   |    X    |   GPIO-MCP   |       1       |   <Auto populated when chip is selected - 8 or 16>   |  Chip Type - <Dropdown - Chip Select - MCP23008 or MCP23017> - Chip Address - <Textbox - I2C Address>

The tricky part would be where you have multiple chips with the Start Channel I think. Not especially hard, but forces the user to calculate the next Start Channel. Based on what I can see, the Start Channel is not dynamically populated based on the previous Start Channel + Channel Count? I might have a look at this also in due course.

I'm going to concentrate on this initially and then look at the PWM. It seems that we need to use wiringPi for the MCP chips anyway, hopefully getting a working model of the PWM won't be too difficult.

Any thoughts on the above?

Also, am I losing my mind - where is USEWIRINGPI defined - in a config file somewhere???
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 03, 2016, 04:43:04 AM
Hey there,

Progress update.

I found the USEWIRINGPI variable - passed in the Makefile correct?

The GUI is complete, as well as the vast majority of code. I've got a logic issue that I'm working on now relating to the fact that in the GPIO.c it's a 1 to 1 relationship. But now, I've got a 1 to Many relationship which causes some grief on the initialisation and pin selection (as that is where m_GPIOPin is set in GPIO.c). I'm just trying to determine where/how the channel is sent in the data stream and how to grab it, convert it and output it.

Other than that, I've managed to successfully compile and run the new version, so I'll need some help on what the protocol is for submitting changes to GITHUB for review and hopefully inclusion in the next FPP version.

I've also discovered that there is an SPI version of the MCP chip - MCP23S08 and MCP23S17 which I'll attempt to add in when I receive the chip. Adding two of these onto the SPI pins should bring the Pi to an absolute maximum of 384 GPIO pins.

Cheers,

Craig.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: Bshaver on January 03, 2016, 09:14:09 AM
Absolutely amazing! now with PWM control so you can dim channels as well? :)
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: techathead on January 03, 2016, 02:52:29 PM
I am willing and able to be a tester if needed. This is my first year in the hobby and I have a RPi2 with an 8 Channel Sainsmart SSR (ran this years display using Lightshowpi since I didn't have time to sequence once I decided to get my Griswald on). Excited to be able to help...
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 03, 2016, 05:33:11 PM
Absolutely amazing! now with PWM control so you can dim channels as well? :)

Unfortunately not just yet. Currently due to the learning curve, I'm currently still working on the logic issue as previous post.

And the more I look into the MCP specifications, the more I'm concerned that the speed is going to be an issue (max. 1.7Mhz apparently) with the MCP23008 and MCP23017. i.e. flickering lights. I'm yet to build a working model and will hopefully get something together shortly.

I doubt the MCP23S08 and MCP23S17 will have any issues as they are SPI based and run at 10Mhz.

So for my setup, I'm probably going to use the 128 channels of multiple  MCP23017's as my SSR GPIO's and then 256 channels of multiple MCP23S17's as the PWM RGB strands. For my config, this will be more than enough (i.e. 128 static strands + ~85 RGB PWM strands (SMD5050).

Then, for the pixels side I'll use the PixLite 16's. Hopfully FPP will cope with all of this, and if not, I'll simply split the channels to another (or more) slave RPi's.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 04, 2016, 08:07:44 AM
I've managed to get a working circuit for software PWM working through the MCP23017 chip. As anticipated, there is much flickering as the speed is just too slow, and also each SoftPWM enabled pin consumes approx 4-5% of CPU. FPPD running with 4 single LED's equated to 26% CPU. I'm not sure how the SPI chip will fare either. Based on this testing, we could only use a max. of 10-15 LEDs (strings?) before topping out PWM on the Pi.

I suspect that I might have to invest in a dedicated hardware PWM chip and configure that also to achieve my goal.

I have, however, just remembered that I haven't got an inline MOFSET in the breadboard...more testing to do.

Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 04, 2016, 09:43:08 PM
So a little more progress.

The MCP chips are working as expected using on/off only.

The PWM through wiringPi is still flickering. But to clear up my previous post, the CPU utilisation appears as below:

0 PWM GPIOs (idle) = ~2% CPU
0 PWM GPIOs (load) = ~24% CPU

16 PWM GPIOs (idle) = ~6.5% CPU
16 PWM GPIOs (load) = ~26% CPU

32 PWM GPIOs (idle) = ~12.5% CPU
32 PWM GPIOs (load) = ~31% CPU

I've also found another library for DMA based software PWM which looks far more promising - http://pythonhosted.org/RPIO/pwm_py.html (http://pythonhosted.org/RPIO/pwm_py.html) and https://github.com/metachris/RPIO/tree/master/source/c_pwm (https://github.com/metachris/RPIO/tree/master/source/c_pwm). I'm certainly no expert, but the DMA implementation looks to be far quicker and basically zero load on the CPU with an (ahem) unlimited number of GPIOs enabled.

I'm currently building in this library to test it out - if the testing works well, I think it should be added to the core FPP rather than just my channel development. Seems to be pretty straight forward, although CaptainMurdoch may have other idea's/objections.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on January 05, 2016, 12:57:42 AM
What channel outputs do you have enabled, your load shouldn't be going up that high normally for the 0 GPIO stats.  From your stats, it looks like your CPU utilization per PWM GPIO is only about 0.22% since the difference between 0 GPIO and 32 GPIO is only 7% CPU utilization.

I looked through that pwm code, but don't see where it would work for the MCP chip.  Is it supposed to or does it just work with the built in GPIO on the broadcom chip?

You could possibly cut down on CPU usage by caching the previous channel data values and comparing them in RawSendData() so that you don't have to call softPwmWrite() again if a channel value hasn't changed from the last frame to the current frame.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 05, 2016, 01:11:35 AM
On the 0 PWM GPIO's I had a single MCP23017 configured in the outputs with 16 channels using digitalWrite instead of the PWM.

Yeah, I was also surprised at the 0.22% per GPIO so it may not be a linear 0.5% increase in CPU usage with the addition of more chips?

I've also gone through the code and found the same thing unfortunately. This is a noob talking, but can we not initialise the MCP chips using wiringPi (to obtain the standard GPIO pin numbers), then pass those pin numbers to the RPIO.PWM call? This is where I'm probably getting out of my depth...

I too have penciled in here to cache the previous values and only output the changed values, but my thinking is that shouldn't that be done higher up the heirarchy - in the base channel output? It would be beneficial across the board, not just for MCP chips?
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on January 05, 2016, 01:23:05 AM
If you left the 16 non-PWM outputs enabled, that seems to indicate that 32 PWM outputs used less CPU than 16 non-PWM.

The wiringPi GPIO pin numbers are just virtual numbers, wiringPi is talking to the i2c bus in the background, so you can't use the normal DMA code that is in the software pwm code you found.

The caching has to be done inside each individual channel output.  FPP's main channel output thread effectively calls each individual output's RawSendData() for every frame of data and the individual channel output code is responsible for sending the data it needs to send.  For the main channel output code to do the caching, it would have to call the individual channel output code (GPIO-MCP, GPIO, etc.) if any single channel changed so it would likely be called most of the time.  In the individual channel output, you can cache and eliminate softPwmWrite() calls on a channel by channel basis, sometimes only 3 channels might be changed so it would only be called for those 3, sometimes all 16 might change so softPwmWrite() would be called 16 times inside RawSendData(), and sometimes all channels might be unchanged, so there would be no calls to softPwmWrite().
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 07, 2016, 04:08:11 PM
Yeah, the CPU usage is strange. It seems to fluctuate a little - it could be my setup and loose testing methods too.

The test setup I've got using RPIO.PWM is great - there is basically no flickering at all and nice smooth fading. I've had a look at the back-end of wiringPi specifically for the 2 chips and there are only about half a dozen methods in each, essentially the same just with a different pin config. I think we have a couple of options here.

1. Request wiringPi developer to implement the DMA method of software PWM instead of the clock based PWM that it's currently doing (ideal solution across the board)
2. Request RPIO.PWM developer to implement the MCP chips
3. We undertake option 1/2 ourselves. For our purpose, this would mean a full PWM on any GPIO pin, whether on board OR via expansion boards. Essentially giving a RPi up to 128 channels of PWM on board (assuming that CPU is under control)
4. Ditch the PWM on the FPP RPi GPIO's completely and just use external hardware.

I'd really like to see PWM on the GPIO pins, but I'm not sure my level of ability/knowledge will suffice. Ideally, if we could get the developer of wiringPi on board, I think that would be the best solution.

In relation to the caching, I've only used Memcache/d on PHP - I've done some googling however have found little that makes sense to me for caching through C++. Are you able to point me in the direction of an example?

Cheers.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on January 07, 2016, 05:56:55 PM
The MCP chip requires a i2c call to set the values while I believe the Broadcom CPU supports toggling the GPIO pins by writing to a memory location, that is why DMA works for the onboard pins but I don't think it will work for the MCP connected over the i2c bus.  The SPI version might be faster but that might be limited in the number of outputs it could support.  I will try to do a little research but you might want to search for "raspberry Pi PWM over i2c" to see if anyone else has tried.

For the cache, that is just an array where you track the last known value.  If the last known value is the same as the new incoming value then don't issue the softPwmWrite call to "change" the value.  I haven't looked at the wiringPi code so Gordon may already do this in the library itself.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: powerfix on January 10, 2016, 05:07:51 AM
Thanks Chris,

I shot off an email to Gordon, author of wiringPi, and he was very helpful with hist responses.

Essentially, without an expansion board for the Pi specifically for hardware PWM, there are limited opportunities to use software PWM. The DMA method works with onboard pins only, and due to the slow speed of I2C, Gordon is of the opinion that the flickering will continue. And actually get worse with the more pins enabled.

I think I'll enable the MCP chips for on/off only, as it already the case.

Disappointing, but I'll be investigating some additional expansion boards with hardware PWM. There is another chip PCA9685 (https://www.adafruit.com/product/815) that looks to be the way to go, and can add something like 992 channels daisychained.

There are already a couple of ports into wiringPi, so hopefully this will be a little more fruitful.
Title: Re: Raspberry Pi GPIO output direct to SSR board
Post by: CaptainMurdoch on January 11, 2016, 04:17:45 PM
I think I'll enable the MCP chips for on/off only, as it already the case.

Disappointing, but I'll be investigating some additional expansion boards with hardware PWM. There is another chip PCA9685 (https://www.adafruit.com/product/815) that looks to be the way to go, and can add something like 992 channels daisychained.

There are already a couple of ports into wiringPi, so hopefully this will be a little more fruitful.

Check out the thread on the TLC5940 as well to see what you think about that and if it would be an option.  I linked to a library I found, but I haven't done anything other than a quick read over the docs.    http://falconchristmas.com/forum/index.php/topic,2961.msg43720.html#msg43720 (http://falconchristmas.com/forum/index.php/topic,2961.msg43720.html#msg43720)