Orangutan X2 - Return Motors to Ground State?

On power up, both motor direction indicator LEDs are off and both M1 and M2 output pins, all four of them, measure .025V with respect to the GND pin. (VIN pin is at 10.68V.) I call this the “ground state.”

The set_m1_speed(0) command leaves the motor direction indicator LED a faint green and one of the output pins measures 10.68V while the other measures 8.44V, both with respect to GND; (measuring 2.24V between the M1 output pins.) The same thing happens with the set_m2_speed(0) command on the M2 LED and output pins.

How do I return to the “ground state” mentioned above without having to press any buttons; using what command(s)?

I have searched for hours and tried “void motors_init(void), set_motors(0,0), set_digital_input(214,0), CMD_MOTOR1_BRAKE_LOW;” …nothing seems to work and it is driving me crazy! :angry:

Please help,


I think your ground state corresponds to the state where all four low-side MOSFETs in the h-bridges are enabled. Please try the following code:

x2_set_motor(MOTOR1, BRAKE_LOW, 0);
x2_set_motor(MOTOR2, BRAKE_LOW, 0);

If you are curious, the source code/documentation of those functions is here:
github.com/pololu/libpololu-avr … utanX2.cpp