Design Considerations
Support a shared inter-module control bus
Do so in a way which neither ties up all of the available intra-module SPI or I2C buses, nor makes the system vulnerable to inter-module conflicts or I2C device address contention
Ideally do so in a way that is compatible with ATmega 328P-based microcontroller boards (e.g. the Arduino Nano / Mini Pro)
Shared power and reset lines, and a backplane that automatically sets the unit IDs based upon slot position
A software-level command interface that allows individual modules to be addressed, but which also allows for 'group' or chassis-wide events such as triggers, etc.
Ideally uses a command interface / syntax which resembles existing / industry standards
Also (obviously), how it works, electrically...