Which Encoders to choose

I have been looking around on the forum and can’t find out what kind of encoders to use. I have a couple of different types around here or I can order some but I am not sure what parameters I need.
Do I need an Index pulse? And I am not sure what the Encoder freq. (base speed) is. Is that like the max frequency that the board can read?

Basically you need an encoder with quadrature output.

An index pulse is useful for avoiding to calibrate at startup, which is useful for application that has a force bias, like a robot arm that has gravity, since the bias is not good for calibration. However the firmware to make use of the index pulse is not in place yet.

The encoder frequency is the frequency of the A/B pulses for that encoder resolution and that motor’s base speed. The motor base speed is a function of motor kv and supply voltage, and is the max speed of the motor without using field weakening (which isn’t implemented yet). The reason that the encoder frequency is useful is because that is how the max rpm of many encoders are rated. For example the Omron E6B2-CWZ6C (datasheet) is rated to 100kHz pulse rate.

The $10 encoders from AliExpress have 600 PPR (2400 CPR), and have worked well so far, and are what I use on my machines.


@Bart I am planning on using the AMT102-V, which we use in some of our lower-cost robotics. Here’s the datasheet. It features 2048 lines, or 8192 counts per rotation assuming 4x quadrature on the ODrive. What I like about it is that it comes with all of the mounting hardware and you attach it directly to your motor shaft. I 3D printed a new hub to replace the one that comes with outrunners (the one the propeller attaches to) and the CUI encoder (using the 8mm adapter) connects cleanly. It’s nice to have the encoder directly on the shaft when possible. It’s relatively cheap at $24 each.

1 Like

AMS do on-axis and off axis encoders, with off-axis you have a multipole ring and can carry the shaft through, AB, quadrature outputs.

There are also the similar ones from Monolithic Power Systems. Apparently they have faster latencies. Digikey Link.

Is it possible to use magnetic encoders like these ones?


Yes it should be possible, especially the AS5047P. There have been many people asking about this, so I created this topic:

1 Like

Could I use an encoder like the: ams AS5048 Magnetic Rotary Encoder ?

1 Like

If I connect as5047 on gearbox shaft and no sensor on BLDC. Can I get full resolution from encoder ? Will I be able to make servo out of it?