Sorry, my previous post is completely incorrect. What that code does is call different subroutines on the same Maestro, which could explain why you were getting stack overflow and underflow problems.
Each Maestro object can only command a specific device number (you can set the device number of the Maestro using the Control Center). If you don't specify the device number when constructing a Maestro object, it talks to all of the Maestros on the daisy chain.
Here is an example for controlling 3 different Maestros on the same daisy chain:
// The reset pin's default value is 255, indicating no reset pin is used.
// Creating MicroMaestro objects for Maestros assigned Device Numbers 0, 1, and 12.
// Restart scripts for Maestros with Device Numbers: 0, 1, and 12.
maestro0.restartScript(0); // restart device number 0's script at subroutine 0
maestro1.restartScript(0); // restart device number 1's script at subroutine 0
maestro12.restartScript(2); // restart device number 12's script at subroutine 2
maestro1.stopScript(); // stop script for device number 1
You do not need to wire up the receiving side of a daisy chain unless you want to receive responses from the Maestros, so I would recommend you avoid dealing with AND gates and receiving from the Maestros until you get transmitting working well.
If you are still having problems, can you post a wiring diagram, your Maestro script and Arduino sketch, and pictures of your setup that shows all your connections clearly?