Build the path of least resistance with this super smooth rotary encoder. This project uses an AS5600 magnetic angle sensor with a QT Py RP2040 running CircuitPython code to measure the change in magnetic field from a magnet that is being rotated directly above the sensor. When the magnet is rotated, the QT Py RP2040 sends out USB HID commands to raise or lower the volume on a connected device.
The secret sauce for the project is a print in place bearing. This piece attaches to the encoder knob and seats the magnet. This allows you to turn the magnet directly over the AS5600 when you rotate the knob.
Magnet
You'll need a diametrically polarized magnet for this project, like this one on DigiKey. This means that the magnet is polarized across the diameter. This allows the AS5600 to sense the rotating magnetic field above it.
Page last edited September 05, 2025
Text editor powered by tinymce.