Setting M0's requested_state stops M1 from working

#1

After boot up, this is what happens if I send the following commands by ./odrivetool:

>>> odrv0.axis1.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL   
>>> odrv0.axis1.controller.vel_setpoint = 120   # M1 starts spinning properly after this line
>>> odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL # M1 stops immediately after this line
>>> odrv0.axis0.controller.vel_setpoint = 120 # M0 works completely fine

Motor 1 (M1, axis1) stops working right after I set M0’s requestd_state. After that, M0 works compleltely fine and M1 won’t react to anything (reseting state or giving new vel_setpoint).
At moments like this, I tried printing odrv0.axis1.motor, the error is 0x0000.

After reboot, this whole thing repetitively happens every time.

I have tried odrv0.erase_configuration() and reboot(), and reset all paramters, it doesn’t help, the same issue keeps happening. (my settings are here: https://docs.google.com/document/d/1dVcVPphIBSLRCEavGIco5urXdS_hTEsZGkpnJp-DfgY/edit?usp=sharing)

BTW, this is my motor, and I use hall sensor as encoder:
https://www.amazon.com/Brushless-Outrunner-Longboard-Electric-Skateboard/dp/B07FMRRG98/ref=sr_1_3?keywords=83+brushless+motor&qid=1555015561&s=gateway&sr=8-3

if I only play with one axis, everything seems working perfectly, so I guess my setting and all the parameters should be fine.

Now, what should I do to actually use both motors (be able to set velocity for both axis)?

0 Likes

#2
>>> odrv0.axis0.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
>>> odrv0.axis0.controller.vel_setpoint = 120 # M0 spins after this line
>>> odrv0.axis1.requested_state = AXIS_STATE_CLOSED_LOOP_CONTROL
>>> odrv0.axis1.controller.vel_setpoint = 120 # nothing happens, M1 doesn't start spinning, M0 still works after this line

if I set M0’s state and velocity first, then M1 will not respond to anything at all.

0 Likes

#3

Can you please check the error codes?

0 Likes

#4

I tried print motor status , error code has always been 0x0000
I read that page(trouble shooting) already, it doesn’t produce any error code, not does it fall into any case mentioned on that page.

0 Likes

#5

Come find me on the ODrive Discord, and we can do a screen share session and I can take a look.

0 Likes

#6

I have messaged you on Discord

0 Likes

#7

Problem solved.

Oscar is very responsible and helpful.

For other people who have similar problems in the future:

0 Likes