Skip to product information
1 of 6

Keszoox

AS5600 12-Bit Magnetic Encoder Module — I²C/PWM, 0.087° Resolution, Arduino Motor Control

AS5600 12-Bit Magnetic Encoder Module I²C/PWM, 0.087° Resolution, Arduino Motor Control

Regular price $26.08 USD
Sale price $26.08 USD
Save Liquid error (snippets/price line 138): divided by 0% Sold out
Taxes included. Shipping calculated at checkout.
Color

AS5600 12-Bit Magnetic Encoder Module — I²C/PWM, 0.087° Resolution, Arduino Motor Control

The AS5600 module is built around the AS5600 contactless magnetic rotary position sensor from ams OSRAM. Using a diametrically magnetized magnet above the IC, it measures absolute angular position from 0° to 360° with 12-bit resolution (0.087° per step) over I²C or analog/PWM output. With no mechanical contact, it provides wear-free position sensing for motor shaft encoders, robotic joint angle measurement, and gimbal control applications.

Key Specifications

Parameter Value
Sensor IC AS5600 (ams OSRAM)
Resolution 12-bit (4096 positions per revolution = 0.087°/step)
Output Interface I²C (address 0x36 fixed) + PWM + Analog
Supply Voltage 3.3V – 5V
Max Rotation Speed ~1000 RPM (I²C polling limited)
Magnet Type Diametrically magnetized, 6mm diameter (included on some modules)
Operating Temperature -40°C to +85°C
Accuracy ±0.5° (with proper magnet alignment)

AS5600 vs AS5048A vs Incremental Encoder

Feature AS5600 AS5048A Incremental Encoder
Resolution 12-bit (4096 steps) 14-bit (16384 steps) Varies (PPR)
Output I²C / PWM / Analog SPI / PWM Quadrature A/B pulses
Absolute position Yes (no homing needed) Yes No (relative only)
Contactless Yes Yes No (mechanical)
Best for Motor FOC, robotics, gimbal High-precision servo Simple speed/direction

Why Choose AS5600?

  • 12-bit absolute position — 4096 unique positions per revolution, no homing required after power-up
  • Contactless magnetic sensing — no wear, no mechanical contact, works through non-magnetic enclosures
  • I²C interface — only 2 wires needed, easy integration with Arduino and ESP32
  • 3.3V–5V supply — compatible with both Arduino (5V) and ESP32/STM32 (3.3V)
  • PWM + Analog output — alternative outputs for systems without I²C capability

Compatible With

  • Arduino: AS5600 library by Rob Tillaart — encoder.getAngle() returns 0–4095 (0–360°)
  • ESP32: Wire.h I²C at 3.3V or 5V (with level shifter)
  • STM32: HAL I²C driver
  • SimpleFOC library: AS5600 is natively supported as position sensor for Field-Oriented Control (FOC) motor drives
  • Raspberry Pi: smbus2 Python library

Frequently Asked Questions

Q: What magnet do I need for AS5600?
A: Use a diametrically magnetized cylindrical magnet, 6mm diameter × 2.5mm height, placed 0.5–3mm above the AS5600 IC center. The magnet must be diametrically magnetized (N-S poles on the flat faces, not the curved side). Neodymium (NdFeB) grade N35 or N52 works well. Some AS5600 modules include the magnet.

Q: How do I use AS5600 with SimpleFOC for brushless motor control?
A: Install SimpleFOC library in Arduino IDE. Connect AS5600 SDA/SCL to Arduino I²C pins. In code: MagneticSensorI2C sensor = MagneticSensorI2C(AS5600_I2C); sensor.init(); motor.linkSensor(&sensor); SimpleFOC uses AS5600 angle feedback for Field-Oriented Control of BLDC motors with DRV8302 or similar gate driver.

Q: Can AS5600 measure angles greater than 360° (multi-turn)?
A: No — AS5600 measures absolute position within one revolution (0–360°). For multi-turn absolute position, use AS5048A with multi-turn counter or add an external turn counter in firmware by tracking direction changes. For simple multi-turn tracking, use an incremental encoder with a counter register.

Package Contents

  • 1× AS5600 12-Bit Magnetic Encoder Module (I²C/PWM/Analog)
visa
View full details
Quality Guarantee Certified components
100% Safe Checkout SSL encrypted payment
Fast Shipping Worldwide delivery
90-Day Returns Hassle-free policy