Having troubles with errors

Thanks for taking your time to read this and help if possible. I am working on my senior project for school and i am pretty new to Python and ODrive. I have a couple problems which prompted me to go to the troubleshooting section of the documnetation on the ODrive website but when i enter dump_errors(odrv0) im getting what looks like compiler traceback errors. For background on how i got to that point, I got to the part in the getting started section and successfully tested the full calibration sequence and the motor holds at closed loop control however when i give it position comands it either does a couple and then no longer holds and does not perform any preceding commands or it wont do any of the position commands and it will stop holding. I am using a turnigy aerodrive sk3 4250 350kv with AMT102-V encoders. Below you will find screenshots and a picture of the assembly which is being driven by the motor, im also very new to CAD and mechanical design is not my strongsuit so please be kind!!! although feedback is welcome of course! This will eventually be the base actuator for the SCARA im building. Since im a new user it will only let me upload one image so im sorry for the messy presentation.

Those errors look like connection errors. If you can successfully get through calibration but have these problems when you send an input position command, this might be caused by motor noise disrupting USB communication. Do you have another USB cable you can try?

More info: ODrive communicates to Python through Fibre, which is a remote procedure call protocol. In other words, odrv0.axis0.controller.input_pos “lives” on the ODrive itself, but you can access it in Python as if it “lives” on your computer. When communication is broken, Fibre complains that input_pos doesn’t exist, which is the error that you are seeing. This might be daunting if you are new to Python, but don’t worry, you don’t have to understand all of the guts of ODrive to use it. Good luck with your project!

Ah what you said makes a lot of sense actually and I can’t believe I didn’t think of it. I have to re arrange my setup a little bit because I’m working off of a deal in my dorm and have literally everything on my desk and on top of each other!

1 Like

So after more testing an using different cables and rearranging my setup to better accommodate for EMI, i am still getting the same errors. Also to add more i think i might be expereincing two seperate issues simoltaneously because it seems if i pos_setpoint = 1000 and stay between absolute values less than 1000 everything as far as brute force motor control goes, works fine but if i enter a value like 5000 or 10000 it suddenly jerks and then stops taking my inputs. the drive is still detected but does not respond to any position or axis state commands and because i cant call dump_errors im not able to see the error codes being thrown.

Do you ever get the “Oh No! odrv0 disappeared!” message? e.g. as soon as you enter closed loop?
Are you running from a battery or a power supply?

Also, in your image avove, you were using odrv instead of odrv0

Im not getting the message where it says the ODrive disconnects, typo on my part about the odrv/odrv0 in other tests I’ve run I’ve been typing odrv0. Also I am running on a 12V 30A power supply trimmed at 11.99V and the ODrive odrv0.vbus_voltage seems to reflect this accurately.