Unable to change vel_ramp_rate in UART

Hello everyone,

I’m using a 56V v3.6 odrive with v0.5.4, and the ASCII interface through UART with an Arduino. So far everything works fine except for changing the vel_ramp_rate. When sending

"w axis0.controller.config.vel_ramp_rate vel_ramp_rate\n"

nothing happens whatever the value of vel_ramp_rate. On the other hand it works fine if I change it “manually” through odrivetool. I double checked I was in CONTROL_MODE_VELOCITY and INPUT_MODE_VEL_RAMP.

Also can anyone confirm that the following commands are supposed to be used that way ? (as explained in this post) :

odrive_serial << "r axis0.motor.current_control.Iq_measured";
Iq_measured = odrive.readFloat();

I’m getting strange behaviours when trying to implement these commands in my code. Am I missing something ?

For example,

odrive_serial << "r axis0.encoder.pos_estimate\n";
pos_estimate = odrive.readFloat();

works perfectly.

Thanks in advance for any help !


Close. You want

"w axis0.controller.config.vel_ramp_rate " << vel_ramp_rate << '\n';

1 Like