High resolution rotary encoder



High-resolution rotary encoders suitable for digital radio tuning are usually expensive. This project is to find out if you can do such encoder with less money. Austriamicrosystems does many interesting special chips. One is AS5040 10 bit Programmable Magnetic Rotary encoder. It is a small and inexpensive chip containing Hall sensor array, DSP and output logic. When you rotate magnet above chip it can sense 1024 different angular positions. Position information can be read in many different formats. Operating mode is selected by programming AS5040 configuration memory. Fortunately default output mode is two-signal quatrature output widely used in rotary encoders. More details can be found in AS5040 datasheet.

Mechanical construction is most challenging part of this project. With little imagination you can make encoder body from old potentiometer. I did it from old Ruwido potentiometer. I made magnet adapter from nylon. AS5040 can also sense increase and decrease of average magnetic field. Push button switch signal can be constructed from these signals. To test this feature I made shaft spring loaded.

DIY encoder has been successfully tested with my DC Transceiver DDS. I tested encoder also with JUMA-RX1 receiver DDS board. This design originally operates with low-resolution mechanical encoder. Technically DIY encoder works ok but DDS user interface software needs some modifications to co-operate with more than ten times of resolution. Push button signal conditioning needs also some improvements.

AS5040 test board schematics

AS5040 datasheet


Enjoy playing with this amazing chip.

73 de OH2NLT