I have robot built per the Alligator tutorial included with Mindstorms NXT 2.0. Everything works correctly if I hold it off the ground and make sure there is no load on the two leg motors. However, if I apply any resistance at all to the motors, then one of the motors will usually (~90% of the time) stop functioning correctly. Whenever it stops it seems to be braking because it does not turn freely.
In the alligator program, I think it usually happens whenever the two motors are programmed to move simultaneously in the same direction for a certain amount of time. If resistance is applied, then motor B will usually stop working. Of course, this makes the alligator basically worthless because it never ends up moving as there is always a little load when on the ground. I can typically get it to start working again by applying some manual rotation/resistance to either motor, but what works or not seems random.
I think I've noticed similar issues with other programs in the past, but I can't be sure. I have latest firmware v1.31 and we're using v2.0.f4 of Mindstorms Labview software.
My best guess is that the NXT firmware has issues with the motor control timing when two motors are moving together and one gets slightly off. However if that was the case, I'd expect everyone to have these problems (and the Mindstorms set would be basically useless.)
Are there any known/common issues that might cause a problem like this? Any advice on how to troubleshoot?