Next question. I have PWM control of my scooter hub drive wheels working, but with the ODrive being as accurate as it is, there doesn’t seem to be any concept of “stopped”. At the moment with my RC control sticks centered there is still a good chance the ODrive will register around 0.1RPM and if I left my robot alone for 10 minutes it would be half way across the room.
So, my question is where do I start with trying to add a dead-zone to the speed control in the ODrvie firmware. It should be pretty easy, something like:
If(requestedspeed > -0.2rpm and requestedspeed < 0.2rpm) then requestedspeed = 0
Unfortunately I am no C or C++ programmer and the source code is well over my head. Any suggestions at where I could start looking?
Obviously this would be best set as a configurable value, something like “minimum speed” under which the speed would drop to exactly 0.
Any advice would be appreciated.