Balboa Robot: Cannot get the robot to get up from about a 90 degree angle. Help?

Hello.

It sounds like you are on the right track. The section of code you reference checks to make sure the rotation rate is arbitrarily close to zero, reads the Z axis reading of the accelerometer to see whether the board is facing up or down, and then sets the angle (which is in units of millidegrees) to 110 degrees. Changing the code in line 6 of that block to angle = 87000; would set the angle when the robot is resting to 87 degrees. You might try that to see if it helps. An improvement to that bit of code might be to read both the X and Z axes and to calculate the angle of the acceleration vector based on those two values instead of assuming a value for a standard physical configuration.

Also, you might look through this Balance.cpp (5.5 KB) file , which has some revisions that worked with a similarly configured robot here.

-Nathan