Following up to my OP, this is what we've now been using successfully for over a year:
Starting midstream for lighting control:
Luminair software runs on an iPad (dedicated for that purpose). This software on the iPad sends DMX (light control) data over a Wi-Fi network (internet-less) established by an old Wi-Fi router in our rack. That router is connected by CAT5 to an
ethernet-DMX I/O box, that then sends DMX over XLR-like cabling to a
DMX splitter and then to all the lights.
This iPad is also connected to an
iConnectivity Audio2+ interface for purposes of receiving MIDI for lighting scene control into the Luminair app.
Starting upstream:
The
Bandhelper software runs on another iPad and sends audio backing tracks (to the mixing board) and MIDI to various fx boxes and the iPad running Luminair while displaying synchronized lyrics. (This iPad also uses an iConnectivity Audio2+ interface.) Each song's audio backing track is accompanied by a MIDI file that contains note events corresponding to various previously programmed lighting scenes in Luminair. Thus the lighting changes are synchronized with the backing track during live play.
In Luminair, I programmed about 50 different scenes with various combos of colors, some of which invoke instantaneous changes, and others that change with slower cross-fades. Separate and independent scenes also control pinspots on the performers. Each of these scenes is assigned a different MIDI note.
When creating a backing track for a song in my DAW, I allocate a MIDI track for lighting and add in note events wherever I want a lighting scene change.
Though it was a lot of work in setting it up (programming scenes, avoiding some fiddly issues in Luminair, etc.), once set up it has been really easy to program the lights for a new song and it has never failed in live performance. Though I can't arbitrarily change a fade time for a scene, having a set of scenes pre-programmed with a reasonable cross-fade time works well enough.