Hey JT -
Pardon the delay in my response.
Yes, awesome! Your situation is very similar to mine. The QLC+/rPi approach seems like a pretty natural thing for what we are looking for.
I'll post that cgi info below... but... I warn you, the method I used is so un-elegant and embarrassing that I'm worried I might actually hear laughter from the real coders in this forum if they happen to read it.
I think it is safe to say that it might be the single most un-secure, "kludgy" bit of code you are likely to see anywhere. BUT - even though it is horribly un-secure, I really don't care much. It's a light controller, not my bank account.
Okay, on to what I did, which is basically restart QLCplus via a web cgi to have it load a specific config file. The work was done by two scripts. The first being the CGI itself - which is stored in the /var/www/cgi-bin/ dir - I called it with this bit in the index.html:
~~~~~~
~~~~~~
This is set1.cgi:
~~~~~~
#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "qlc-plus-run"
echo ""
echo "starting scene 1"
echo "starting... $(sudo su root /var/www/cgi-bin/set1-qlcplus.sh &> /dev/null 2>&1)"
echo "Home"
echo ""
~~~~~~
I don't know where I found it... somewhere on the web... so there is lots of stuff in it that is not necessary. But the most important thing is the bit:
~~~~~~
sudo su root /var/www/cgi-bin/set1-qlcplus.sh &> /dev/null 2>&1
~~~~~~
Which calls the bash script that does the deed.
Also - on my image of raspbian and qlcplus - there is no such thing as "sudo" - so you'll have to install it:
apt-get install sudo
and then edit the /etc/sudoers file to have this in it:
~~~~~~
# User privilege specification
root ALL=(ALL:ALL) ALL
www-data ALL=(ALL) NOPASSWD: ALL
~~~~~~
(again - did I mention that this a very insecure practice!?)
Then - for some reason - I don't remember why - I had the CGI call a BASH script that runs the command - This is "set1-qlcplus.sh":
~~~~~~
#!/bin/bash
killall -15 qlcplus
sleep 5
/usr/bin/qlcplus --web --operate --overscan --open /root/set1.qxw &
~~~~~~
So the above just kills any existing instance of qlcplus running and then re-lanunches it with the config file that I want.
That's pretty much it.
Of course now that Massimo has altered QLCPlus so that key bindings are local to a given page - I no longer need to open and close configs to extend the button functionality to more events - we can just simply use a couple of buttons to switch pages.
However, I still think I'll be using some sort of web control, because as I mentioned, there are times I'm playing with other people and the lighting setups are VERY different.. in those cases I still just want to be able to simply load up another config from a web page. And I'm thinking there will be more buttons/cgi options I'll be putting on that page.
I used lighttpd as the web server - which worked right away with no errors.
That's it. Go be dangerous.
Scott