I just go my odrive and been doing some first testing, i want to drive the odrive from an arduino, and used the arduino test code.
When i run the code from arduino console, and test the encoder, it reads back fine, also bus voltage is read fine from the arduino. But when i want to test the motors, nothing happens.
I have also hooked up the odrive directly to my pc with usb, and from console i can test the motor.
So my question is, why isn’t the motor running when using arduino?
When attached directly to the pc, using odrivetool i was able to do that, beeped, and spun both ways.
From arduino only “asking the state” of vbus and encoder works
Did you try command “0” on the Arduino?
“Send the character ‘0’ or ‘1’ to calibrate respective motor (you must do this before you can command movement)”
Now to follow up my question, is there a way to skip the calibration at the start, or at least have the motor not turning, as i need the motors to only turn when told to, otherwise it might break some mechanics?
Yes you can simply issue the calibration state commands when you want. You can also use an encoder with an index signal if you wish, more details in the documentation.