Here's how I assume it all works, but I could be wrong:
It looks to me that it chains 8 stereo devices together in any order, allowing you to store 3 presets.
(there's also a larger version that chains 8 8-channel devices)
So, let's say you have 8 devices connected as follows:
device 1) Neve preamp
device 2) Neve EQ
device 3) V72 preamp
device 4) API preamp
device 5) API EQ
device 6) 1176 comp
device 7) LA-2A comp
device 8) Pultec EQ
[I wish this was my rack!]
You store this chain as preset 1:
V72 preamp
Pultec EQ
LA-2A comp
"Classic" flavor
You store this chain as preset 2:
Neve preamp
Neve EQ
1176 comp
"British" flavor
You store this chain as preset 3:
API preamp
API EQ
1176 comp
"American" flavor
Now you can switch between these chains with the press of a button...pretty cool! Great for A/B-ing.
Internally, the Masterbay is re-routing the chain of your original devices like so:
preset 1:
[Device 3]
↓
[Device 8]
↓
[Device 7]
preset 2:
[Device 1]
↓
[Device 2]
↓
[Device 6]
preset 3:
[Device 4]
↓
[Device 5]
↓
[Device 6]
Q: So, how does it do this?
A: An assload of Relays and a Microcontroller.
Essentially, any device's input can be connected to any device's output.
The relays are probably connected in a tiered fashion to allow this.
You can think of each tier of relays as a bit in a digital system.
If a "bit" is zero, the relay follows its
Normally
Closed path.
If a "bit" is one, the relay is given 5V and is switched to its
Normally
Open path.
In the example above, you can see that to route the input to the 2nd output, only one relay needs 5V (top tier, left-most relay).
To assign IN1 to OUT3, you use "010"
To assign IN1 to OUT7, you use "110"
and so on.
This is pretty much the basis of all binary digital systems.
To implement this with a microcontroller, you would use the General Purpose I/O pins (GPIO) configured as outputs to trigger the relays.
You could connect a single GPIO pin per relay.
When you set a pin high in your code, you get 5V out of the pin, flipping the relay to which it's connected.
Set the pin low, and the relay reverts to its default state (NC).
The above diagram represents one balanced mono channel.
If you're doing 8 balanced stereo ins & 8 balanced stereo outs, the number of relays (and thus GPIO pins) needed quickly multiplies.
You'd need 7x2x8=112 relays and GPIO pins.
Now the plot thickens.
Most microcontrollers only have 20–30 GPIO pins (some have more though), so you would probably have to use multiplexers in order to handle all 112 relays.
Analog Devices makes some 1:16 MUXes that would allow you to essentially multiply your I/O.
You need 4 I/O pins per MUX to do the MUX switching.
So, consider a microcontroller, such as the
Atmel ATmega325P.
This guy has 54 I/O pins.
Assuming we can use 48 of them (some pins will have a dual-purpose such as oscillator input, etc. & we can't use them):
Using 1:16 MUXes, we can expand our I/O to control a total of about 147 relays.
(5 pins per MUX, 9 MUXes = 45 microcontroller pins used. 9 MUXes x 16 = 144 + the 3 remaining microcontroller pins = 147 relays | I/O pins)
The code would be slightly more complex due to all of the MUXes, but not really too bad.
Now, let's think about the maximum amount of relays that will be sucking 5V/?A at any given time.
IN1>OUT1 = 000
IN2>OUT2 = 001
IN3>OUT3 = 010
IN4>OUT4 = 011
IN5>OUT5 = 100
IN6>OUT6 = 101
IN7>OUT7 = 110
IN8>OUT8 = 111
Any other config will be activating the same amount of relays, as we would set a rule that no two inputs could be assigned the same output.
That's 12 relays per mono channel x 2 = 24 relays needing power at any give time.
You're going to want relays that don't take much current to flip.
Here's an "ultra-sensitive" device that needs 30mA to trigger:
http://www.mouser.com/Search/ProductDetail.aspx?qs=sGAEpiMZZMs3UE%252bXNiFaVDVuZJnAgzXjZnSFmYYYj4s%3d
24x30mA = 0.72A needed to trip the relays at any give moment.
Maybe this clarifies things?