So here's the rub: I'm considering downgrading my Helix to an HX Stomp. I already have an MC6 that I use to control the presets on my Strymon gear, but I'm doing the transition to have more space on my floorboard for a tube pre and a couple other MIDI-controllable pedals. That, and my Helix Floor is currently way underutilized. I currently use my Helix for sending out commands per patch and per snapshot, and use the MC6 to tweak on the fly. By going this route, should I use the MC6, it would be delegated to all MIDI duty, with the exception of a Selah Quartz for tap tempo (since decimal tempos are not supported on the MC6 :( ) and a big, bright, "current song" display.
That said, I often play in a worship band. On my Helix alone, I have about 80 different patches for different songs, and each song can vary dramatically. One song can be a single patch. The next can have two variations on a chorus, multiple bridges, increasing dynamics, and the need for up to 10 (which I have on a few of them!) patches! I absolutely need displays on each patch, or it is impossible to get through a set. Going the route of a half-dozen preset sounds just doesn't work for me and my needs. I'm considering a 6 button extension switch (two three button switches in one enclosure), but it would be super nice to put a second MC6 in a sort of pairing mode that operates as buttons G-L with the text to match. If this were a functionality, I'd buy a second MC6 today. That said, without this an an option, it leaves me to look at stuff like the FAMC JR+ with a display over each button instead of the MC6, which, then, just defeats the point of being compact.
A option that would be cool (and have it be selectable) be to make it so buttons G-I show text whereas the top 3 spaces on the LCD show the current bank name. Those buttons could still be usable but just unlabeled, and you'd always know where you are.
I get that this means some sort of serial communication between two devices. But, you know, you already have serial communication over MIDI. Technically, you have USB as well, but, on a pedalboard, USB has too large of a connector. For configuration, you'd simply add a system configuration option to select between disabled, master mode (where you'd pick the channel the second MC6 is on), and slave mode (where you'd pick the channel the first MC6 is on). Load up a bank, and the second MC6 gets the data and displays G-L on the screen. You've basically got this already working in the web interface. Secondly, to go this route, I absolutely need some sort of song management. Here's how I see this mode playing out:
1. You have your presets set up in your MC6. They can be anywhere - 1C, 15G, whatever.
2. Creating a new song is simply creating references to existing presets. All you'd have to do is say button A = 1C, button B = 15G, so on and so forth. I'd be OK with limiting to the 12 available buttons in this kind of situation, so songs don't span pages. This makes song mode simple - just a matter of storing references to other presets you've already spent time creating instead of recreating or copying a huge set of actions that could get modified. 3. Once created, you can pick your songs and insert them into a setlist. I'd be perfectly OK with having songs saved offline that you could pick to upload as needed. Perhaps setlist mode, if enabled, could disable some of the banks in normal mode, if memory is an issue. That's a tradeoff I'd happily accept. And, since you're storing references (probably just an 8 bit hex value for each plus a string for the page title), memory usage is pretty low - I could see gaining 10 song slots for 5 normal mode banks pretty easily, if not more. 4. To enter setlist mode, you'd need to have a new button action that would kick it off. Similarly, you'd need to have a button action that would exit it as well. Exiting would let you choose to go to a certain page (i.e. exit and go to my Strymon Timeline presets page #1) or go to the last page you were on. Same with entering - it would give you the option to go to the first song in the setlist, or go back to the last song you were on (or the first if it couldn't be determined).
5. Creating a new song could start you from a template. For example, say you have 6 extension buttons set up and you want button I to go to the last song, button L to go to the next song, a tap tempo/hold for tuner on C, an exit to your first page button on J, and a spacey clean sound that you always use on K. This could be a simple matter of creating a song with references to the preset buttons you have created in normal mode and saving it/exporting the bank. Or perhaps it is just a specified bank stored on your device, and it just has a "template" flag on it, where each new song references the patches in that bank (i.e. A would reference templatebankA, B would reference templatebankB, etc.) Creating a new song would be a simple matter of loading up that template by default instead of initializing with a blank options page. And, since, again, it would just be references to presets you already have, that new song, though based off a template, could always be changed.
You guys have built a great controller with the MC6. You have all the pieces in place for this - exporting, importing, saving, sharing, copying, data communication, etc. Speaking as a software developer myself, I can't imagine this kind of functionality would be that difficult to build out, but it would really make the MC6 a full-powered MIDI controller, not just a simple patch controller.