AXIS_STATE_CLOSED_LOOP_CONTROL Error in Arduino

When I try to compile code previous used by a friend the line:

requested_state = ODriveArduino::AXIS_STATE_CLOSED_LOOP_CONTROL;

raises an error that says: ‘AXIS_STATE_MOTOR_CALIBRATION’ is not a member of ‘ODriveArduino’.

However, when I change the code to

requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL;

It compiles properly.

Does anyone know why this is and if it will affect the code anyway?

This is how the syntax used to be but I think it changed when they updated the arduino library and firmware.

You say it compiles correctly but does it work? I have been trying to make it work using firmware 0.5.3 and it’s not working. If you got it working I would love to know how you did it.

It appears that the ODriveArduino namespace has been removed for whatever reason. Will still work.

That being said, we discovered an issue with UART / ASCII in 0.5.3, this will be fixed in 0.5.4.