Maestro 12 getErrors() casues Arduino to hang


I am using 4 daisy-chained Maestro 12’s each with their own power supply to control 4 servos each.

I am attempting to check for errors in operation and have the following code as a sun=broutine to call when needed:

void checkMaestroErrors() {

double lfErr, lrErr, rfErr, rrErr;

echo(“Maestro Error Report: “, 0);
lfErr = maestroLF.getErrors();
echo(” LF: " + (String(lfErr)), 0);
lrErr = maestroLR.getErrors();
echo(” LR: " + (String(lrErr)), 0);
rfErr = maestroRF.getErrors();
echo(" RF: " + (String(rfErr)), 0);
rrErr = maestroRR.getErrors();
echo(" RR: " + (String(rrErr)), 0);
echo("", 0);

The echo call is just another subroutine I have written to out put the text to the serial bus in various formats. for echo read Serial.print.

The routine prints the first two maestro error reports and then the Arduino program hangs. However, if i do not call this routine for comment out ONLY the getError commands, the 4 maestros work perfectly, so I do not think it is a comms issue.

Any help would be appreciated.


Hello, Andrew.

If I am understanding your description correctly, it sounds like your program hangs whenever you send a command that expects data back from the Maestro, so that does indicate a communication problem.

Can you post more details about your setup and code? In particular, could you post pictures of your setup that show all of your connections? Which particular Arduino are you using? Also, could you post a simplified but complete version of your code that demonstrates the problem?