Wheel Encoders (use and links)


I read a little around, but I could not understand 2 things:

1-Wheel Encoders can be used for movement, or it’s only for position estimation

2- What’s the exact connection of the 5 wires ?(on the documentation it’s not clear where the black, red, green and blue are connected and I am a novice :slight_smile: ) or post an image, I could not find it.




The wheel encoders are only used for velocity and position estimation for now. We don’t use them for control. So in ArduPilot (and probably most robotics systems) there are two large parts to the system, one estimates where the vehicle is, the other tries to move the control surfaces, wheels, etc to move the vehicle to where the operator wants it to be.

Re connecting up the wheel encoders, the wheel encoder page only talks about the A and B lines that should be present on the motors. The other lines shown (red, black, green and blue) should be connected to the motor driver (aka ESC). There are tons of different types of motors, ESCs/motor drivers so we don’t attempt to describe how to connect them really.

1 Like

thanks, you have been very clear !!

I understand this thread is a year old, are the wheel encoders now (Rover 3.5 and above) used for control? Many thanks.


yes, they can be although the method is not documented on the wiki (yet). There are now WRC_ (Wheel Rate Control) PIDs that can be setup. I’ve used them on balance bots but I haven’t tried them on other vehicle types. They should work though.

Could you tell me what is the difference between wrc and wrc2? They affect to different output channels?
One is for throttle and the other for steer maybe? Is there documentation available somewhere about this?
Thank you