How to add new programs to Octolively
  • Howdy, It's me again. I'm back, but I now have my octolively array built! Hurray!  But now I've been looking into the code, and I have two questions for anyone who can help.

    The first is how to add additional modes.  Essentially, I want to be able to add programs without deleting the other ones.  I want to swtich the display to work in a binary fashion when switching programs (thus allowing for a total of 256 programs, but in reality I only want a max of 16 [plus I noticed that #define MAX_PROGRAMS 16 so that seems good for me]).  So here's what I understand so far.  I have a basic knowledge of programming, but this is way over my head.

    I assume that the ledHandler ledHandlers[] portion at the top designates what program is assigned to what number?  That portion also confuses me with with the net + fade programs are for.  BUT moving on, I also understand how the programs change using changeProgram().  I assume I would simply have to change the if statement to read "if (netConfig == 0 && program >= 16){".  But what I don't understand is where in the code it actually runs the designated program.  Or basically where it says if program 0 run basic_fade.  I feel once that is answered, adding programs should be very simple.
    Then after that, it's just simply changing the LED program interface.  That, I cannot seem to find anywhere.  So a point in the right direction would be very helpful.  I assume a simple case or if/else statement would work in turning on the appropriate LEDs there.  But that brings me to my next question of:

    Is it possible to set certain leds to certain programs?  Say for example, I want my 9th program to run so that the left half of the LEDs run quick_fade and the right half of the LEDs run inv_fade.  Is this possible?  I have no clue where I would start with this one.  Are certain LEDs given a reference number, or is there a way to tell one led to turn on whenever I want?  This code is way above my head!

    As a side note, I've been using the July 12 version of the octolively.c file.

    Thanks for any help!  I've got to say, I'm already impressed by the Octolively the way it is out of box!  But where's the fun in default?