I am new to oDrive, following the Getting Started and Hoverboard Guide successfuly until this section…
odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
odrv0.axis0.controller.vel_setpoint = 120
# Your motor should spin here
Once the motor starts spinning (yay!), I cannot change the vel_setpoint = 0 or type anything at all. The console freezes. Keystrokes after this (besides a control break back) do not seem to matter, the odrivetool remains unresponsive.
Eventually, I get a ChanelBrokenException message.
After the ChannelBrokenException message, I can type again. The commands seem to work. I can stop the motor (yay! again)
odrv0.axis0.controller.vel_setpoint = 0
but I eventually get another ChannelBrokenException message, just like the first one. Each subsequent command results in no noticeable response but I get the same error message.
I have not been able to find an explanation of or solution to this issue. Honest, I tried. Please feel free to point me at any references that might be helpful.
Full disclosure, I have not yet installed the 22nf resistors on the Hall Sensor connections, since from what I read that solves a problem related to M0 and M1 crosstalk. I am not there yet. Are they needed with a single hoverboard motor?
HW Ver 3.6 56 V
FW Ver 0.4.10
Anaconda Python
Windows 10
Update ---- Now the motor will not spin up at all and console hangs after
odrv0.axis0.controller.vel_setpoint = 120
I can only interrupt it by quiting odrivetool ((control break). To try and fix it, I redid the motor and encoder calibrations.
odrv0.axis0.motor.config.pre_calibrated = False
odrv0.axis0.requested_state = AXIS_STATE_MOTOR_CALIBRATION
odrv0.axis0.motor.config.pre_calibrated = True
odrv0.axis0.encoder.config.pre_calibrated = False
odrv0.axis0.requested_state = AXIS_STATE_ENCODER_OFFSET_CALIBRATION
odrv0.axis0.encoder.config.pre_calibrated = True
odrv0.save_configuration()
odrv0.reboot()
Still hangs.
I found instructions on resetting the oDrive default configuration
odrv0.erase_configuration()
odrv0.reboot()
I reentered everything on the Hoverboard Guide again. This time I got the console prompt after starting up the motor. I was able shut it down.
odrv0.axis0.controller.vel_setpoint = 0
odrv0.axis0.requested_state = AXIS_STATE_IDLE
quit
and turn it all off.
After working on this for several days, I am calling it resolved for now.
We’ll see if it works later.
Update - Original symptoms returned…
odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
odrv0.axis0.controller.vel_setpoint = 120
# Your motor should spin here
Once the motor starts spinning, I cannot change the vel_setpoint = 0 or type anything at all. The console freezes for 25 seconds.
Eventually, I get a ChanelBrokenException message.
Then I can enter comands as long as I wait 25 seconds for the next ChanelBrokenException message. (copy above)
Any help would e apreciated.