MLX90393 Digital 3D Hall Effect Sensor – Triaxial Position, Angle & Rotation Detection

SKU: FA3022-3
Sensor IC

Melexis MLX90393 (Triaxis® Hall-effect)

Measurement Axes

X, Y, Z magnetic field + temperature

Output Resolution

16-bit per axis

Magnetic Range

Up to ±50 mT (±500 Gauss)

Interface

I²C (fast mode) / SPI (3- or 4-wire)

Operating Voltage

2.2V – 3.6V (3.3V typical)

Current Consumption

100 µA typical

Operating Temperature

-20°C to +85°C

The MLX90393 Digital 3D Hall Effect Sensor is a high-precision, micropower triaxial magnetometer built on Melexis’ patented Triaxis® technology. It measures the magnetic flux density along the X, Y, and Z axes simultaneously, providing 16-bit digital output for each axis plus an integrated temperature sensor . Unlike conventional magnetometers that saturate in strong fields, the MLX90393 is designed with a wide dynamic range (up to ±50 mT / ±500 Gauss), making it suitable for both Earth’s magnetic field sensing and proximity detection of nearby magnets .

At the heart of the module is the MLX90393 sensor IC, which uses Hall-effect sensing elements with Melexis’ proprietary Integrated Magnetic Concentrator (IMC) technology. The sensing elements are located at the center of the die, enabling accurate 3-axis measurement in a compact QFN 3×3mm package . The sensor is designed for micropower applications, with a programmable duty cycle from 0.1% to 100%, allowing you to trade off between current consumption, speed, and signal noise based on your system requirements .

The MLX90393 supports multiple operating modes — Single Measurement (SM), Burst Mode (SB), and Wake-up on Change (WOC) — which can be reconfigured at run-time . The Wake-up on Change mode is particularly useful for battery-powered applications: the sensor stays in a low-power state until the magnetic field changes beyond a programmable threshold, then triggers an interrupt to wake the host MCU .

Communication is handled through either I²C (fast mode) or SPI (3-wire or 4-wire), where the MLX90393 acts as a slave device . The I²C address is determined by 2 hardware pins (A0, A1) plus 5 software bits, allowing up to 4 sensors on the same bus with hardware addressing alone . The module includes an onboard non-volatile memory for storing calibration data .

The sensor offers a resolution of 0.161 µT and a fast sample rate of up to ~500 Hz, making it suitable for dynamic applications like joystick control, rotary knobs, and 3D position sensing . The operating voltage is 2.2V to 3.6V, with a typical current consumption of just 100 µA .

The MLX90393 is widely used in joystick and gimbal applications, rotary knobs and dials, linear actuator position sensing, magnetic impeller flow meters, door/closure detection, liquid level sensing, and non-contact HMI controls . It is also popular in robotics, automation, and educational STEM projects where precise magnetic field measurement is required.

Important Note: The MLX90393 is not a replacement for a standard compass for navigation purposes — it is designed for magnetic field sensing and relative position/orientation detection, not absolute heading. The module operates at 2.2V–3.6V (3.3V typical); the Adafruit breakout includes a 3.3V regulator and level shifter for 5V compatibility, but only SDA and SCL are level-shifted — other pins (INT, TRIG) require external level shifting on 5V systems . The sensor is not waterproof and should be kept dry. Avoid placing strong magnets near the sensor during calibration or operation, as this may saturate the sensing elements .

Whether you are building a contactless joystick, a magnetic position sensor, or a 3D motion tracking system, the MLX90393 Digital 3D Hall Effect Sensor provides a reliable, precise solution for triaxial magnetic field measurement. It is suitable for individual makers, engineers, and businesses purchasing in bulk for product development or industrial applications.

Features

  • Triaxis® 3D magnetic sensing — Measures X, Y, and Z magnetic field components simultaneously

  • 16-bit digital output — High-resolution measurement for each axis plus temperature

  • Wide dynamic range — Up to ±50 mT (±500 Gauss), suitable for Earth’s field and magnet proximity

  • Micropower design — 100 µA typical current consumption with programmable duty cycle (0.1%–100%)

  • Multiple operating modes — Single Measurement, Burst Mode, and Wake-up on Change

  • I²C and SPI interfaces — Flexible communication options with hardware and software addressing

  • Multi-sensor capable — Up to 4 sensors on one I²C bus via hardware address pins

  • Onboard non-volatile memory — Stores calibration data for consistent performance

  • Compact QFN package — 3×3mm sensor IC with integrated IMC technology

  • Wide application range — Joysticks, rotary knobs, position sensing, flow meters, HMI controls

Technical Specifications 

# Parameter Specification
1 Sensor IC Melexis MLX90393 (Triaxis® Hall-effect)
2 Measurement Axes X, Y, Z magnetic field + temperature
3 Output Resolution 16-bit per axis
4 Magnetic Range Up to ±50 mT (±500 Gauss)
5 Interface I²C (fast mode) / SPI (3- or 4-wire)
6 Operating Voltage 2.2V – 3.6V (3.3V typical)
7 Current Consumption 100 µA typical
8 Operating Temperature -20°C to +85°C 

Usage

Getting Started

  1. Connect power — Supply 3.3V DC to the VCC pin and GND to ground. On Adafruit breakouts, a 3.3V regulator allows 5V input, but only SDA and SCL are level-shifted .

  2. Connect I²C lines — Connect SDA to your microcontroller’s I²C data line and SCL to the I²C clock line. The breakout includes pull-up resistors .

  3. Set I²C address (optional) — The default address is 0x0C. Use the A0 and A1 pins to change the address to 0x0D, 0x0E, or 0x0F for multi-sensor configurations .

  4. Install the library — Install the Adafruit MLX90393 library through the Arduino Library Manager .

  5. Upload a test sketch — Open the basicdemo example and upload it. Open the Serial Monitor at 9600 baud to see temperature and X/Y/Z magnetic field values in µT .

  6. Configure gain and resolution (optional) — Use sensor.setGain() and sensor.setResolution() to adjust sensitivity and resolution for your application .

Pin Connections (Typical)

Module Pin Function
VIN / 3.3V Power (2.2V–3.6V; 5V on regulated breakouts)
GND Ground
SDA I²C Data (level-shifted on 5V breakouts)
SCL I²C Clock (level-shifted on 5V breakouts)
A0, A1 I²C Address Select (LOW by default)
INT Interrupt Output (data ready)
TRIG Trigger Input / Interrupt Mirror

I²C Address Configuration

A1 A0 I²C Address
0 0 0x0C (default)
0 1 0x0D
1 0 0x0E
1 1 0x0F

Example Arduino Code

cpp
#include <Wire.h>
#include <Adafruit_MLX90393.h>

Adafruit_MLX90393 sensor = Adafruit_MLX90393();

void setup() {
  Serial.begin(9600);
  while (!Serial);

  if (!sensor.begin_I2C()) {
    Serial.println("No MLX90393 sensor found!");
    while (1) delay(10);
  }
  Serial.println("MLX90393 sensor found!");

  sensor.setGain(MLX90393_GAIN_1X);
}

void loop() {
  float x, y, z;

  if (sensor.readData(&x, &y, &z)) {
    Serial.print("X: "); Serial.print(x); Serial.print(" uT");
    Serial.print(" Y: "); Serial.print(y); Serial.print(" uT");
    Serial.print(" Z: "); Serial.print(z); Serial.println(" uT");
  } else {
    Serial.println("Unable to read data");
  }
  delay(200);
}

Typical Applications

  • Joystick and gimbal control — Detect lever position via magnetic field changes

  • Rotary knobs and dials — Non-contact angle sensing with long stroke

  • Linear actuator position — Magnetic position feedback for actuators

  • Magnetic impeller flow meters — Count rotations via magnetic pulses

  • Door and closure detection — 3D magnetic field changes for open/close status

  • Liquid level sensing — Float-based magnetic position detection

  • Non-contact HMI — Push-pull and gesture interfaces

Notes for Business Buyers

  • Triaxis® technology — Melexis’ patented 3D magnetic sensing in a single compact IC

  • Micropower operation — 100 µA typical current enables battery-powered applications

  • Multi-sensor capable — Up to 4 sensors on one I²C bus with hardware addressing

  • Suitable for bulk purchasing — Ideal for HMI manufacturers, robotics integrators, and industrial automation developers

Q: What is the MLX90393 sensor used for?

It is a triaxial magnetometer for 3D magnetic field measurement, used in joysticks, rotary knobs, position sensing, flow meters, and non-contact HMI applications .

Q: What are the measurement axes?

The MLX90393 measures the X, Y, and Z magnetic field components simultaneously, plus an integrated temperature sensor .

Q: What is the magnetic field range?

The sensor supports up to ±50 mT (±500 Gauss), far exceeding typical magnetometers that saturate at ±8 Gauss .

Q: What is the output resolution?

The MLX90393 provides 16-bit output per axis, with a resolution of 0.161 µT .

Q: What interfaces does the sensor support?

It supports both I²C (fast mode) and SPI (3-wire or 4-wire), acting as a slave device on the bus .

Q: What is the I²C address and how do I change it?

The default I²C address is 0x0C. Use the A0 and A1 pins to select 0x0D, 0x0E, or 0x0F for multi-sensor setups .

Q: What is the operating voltage?

The sensor operates from 2.2V to 3.6V (3.3V typical). Adafruit breakouts include a 3.3V regulator and level shifter for 5V systems, but only SDA/SCL are level-shifted .

Q: What is the current consumption?

Typical current consumption is 100 µA, with programmable duty cycle from 0.1% to 100% .

Q: Does the sensor support low-power modes?

Yes. The MLX90393 supports Wake-up on Change (WOC) mode, where the sensor sleeps until the magnetic field changes beyond a threshold, then triggers an interrupt .

Q: Can I purchase in bulk for a product development project?

Yes. This sensor is suitable for bulk purchasing by HMI manufacturers, robotics integrators, and industrial automation developers.