Maestro acting crazy

Neat project! I am sorry to hear about your harddrive crash; your current animatronic looks a little different than the one you posted about a few years ago now, but in case it helps, I noticed that you posted a copy of your old Maestro script and Arduino sketch in this post (which was a couple months after you shared your original animatronic).

It looks like your current Maestro script currently only has 2 subroutines that can be started using the restart script at subroutine command (i.e. restartScript() in the Maestro library) without problems, and those are sequ1 and sequ2. Since those are the first and second subroutine in your sketch, their IDs are 0 and 1 respectively, and I would expect sending the restartScript() command with an argument other than 0 or 1 to result in an error (indicated by the red LED on the Maestro and in the “Errors” tab of the Maestro Control Center). I do not see anything else particularly concerning in your Maestro settings.

Your Arduino sketch has a lot going on, but I did not notice anything obviously wrong. If it always runs sequ1 when you try to press play, it might be something with the switch case statement that is not working correctly to update sequenceID when you press the other buttons (especially since sequenceID is set to 0 when it is defined). It looks like you are using some kind of LCD, and printing out the sequenceID variable when it changes; is that updating as you expect when you press the other buttons on your IR remote? You might try also printing it out just before maestro.restartScript(sequenceID); too, so you can see exactly what value is being used.

If that does not help narrow it down, I recommend trying a much simpler test that just sends the restartScript() command followed by a delay in a loop that switches between calling sequ1 and sequ2. For example:

void loop(){
    maestro.restartScript(0);
    delay(5000); 
    maestro.restartScript(1);
    delay(5000); 
}

Brandon