Hoverboard motor calibration fail

I am trying to control a standard hoverboard motor from an odrive 3.5 with 4.6 firmware.
I am following the specifig guide.
odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION
nothing happens, no twitch and no beep.

When I do
odrv0.erase_configuration(), odrv0.reboot()
and then
odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION
the motor moves a tiny bit, bu does not beep.

But as soon as I set some meainingful parameters,
odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION
has no effect.

Am I missing something here?

You’ve provided very little go on, here. Have you followed the troubleshooting documentation yet? At the very least you need to provide us users with the error(s), if any.

Troubleshooting doc is here: https://docs.odriverobotics.com/troubleshooting

Note that there are 3 error flag properties per axis. odrv0.axis0.error, odrv0.axis0.motor.error and odrv0.axis0.encoder.error, you should convert to hex as described in the doc and look in the corresponding source file (linked to in the doc) for your error number/flag. e.g. an error of 0x110 would be error 100 AND error 10. Report back with, at the very least, the output of checking those properties and converting the value to hexadecimal. Or befuddle us all by saying there are no errors set, lol.


thanks for the quick reply.
Strangely there was no error flag set after calibration. Only suspicous inductance and resistance values, both at 0.0.

However, the problem is resolved. It was entirely my own fault, I messsed up the wiring (connected Hall sensors of motor0 on the port of motor1). Now that I corrected the wiring all works as it should.

So I guess the takeaway is that when encountering above symptoms, one should double-check encoder wiring.

Sorry for the false alarm.

No worries! Happens to the best of us. I’ve personally overlooked the exact same thing on numerous occasions. Makes me wonder if there’s some intuitive left-to-right issue or maybe it’s just the brain being most used to the index of 1 instead of 0, lol.