Magnetometer Compass Module for Arduino Projects

Provides accurate compass bearings

SKU: TA0057

RRP $19.95
In Stock

Buy In Bulk & Save!
Buy 4 to 10: Pay $9.45 ea
Buy 11 to 20: Pay $8.97 ea
Buy 21 to 100: Pay $8.07 ea
Buy 101 to 300: Pay $7.26 ea
Buy 301 to 1,000: Pay $6.53 ea

Calculate Shipping

Magnetometer Compass Module for Arduino Projects


Provides accurate compass bearings 

This 3-Axis Magnetic Electronic Compass Module is designed for low-field magnetic sensing with a digital interface and it is perfect to give precise heading information. This compact sensor fits into small projects such as UAVs and robot navigation systems. The sensor converts any magnetic field to a differential voltage output on 3 axis. This voltage shift is the raw digital output value, which can then be used to calculate headings or sense magnetic fields coming from different directions.


  • 3-axis magnetic electronic compass

  • Precise heading information

  • Fits into small projects easily

  • I2C communication

  • QMC5883L chip

  • Operating Voltage: 3V-5V DC

  • Chipset QMC5883L

  • Communication: I2C protocol

  • Measuring range: ± 1.3-8 Gauss

  • Dimensions: 14.8mm x 13.5mm x 3.5mm

Download Library CLICK Below


Sample code:

#include <QMC5883LCompass.h>

QMC5883LCompass compass;

void setup() {

void loop() {

	int x, y, z, a, b;
	char myArray[3];;
	x = compass.getX();
	y = compass.getY();
	z = compass.getZ();
	a = compass.getAzimuth();
	b = compass.getBearing(a);

	compass.getDirection(myArray, a);
	Serial.print("X: ");

	Serial.print(" Y: ");

	Serial.print(" Z: ");

	Serial.print(" Azimuth: ");

	Serial.print(" Bearing: ");

	Serial.print(" Direction: ");



3 Month Warranty

SKU TA0057
Barcode # 9351634002917
Brand iduino
Shipping Weight 0.0300kg
Shipping Width 0.140m
Shipping Height 0.020m
Shipping Length 0.090m
Shipping Cubic 0.000252000m3
Unit Of Measure ea


By: on 10 March 2019
It's just arrived - lots of work to integrate it into our project

Does the job and a great price

By: on 17 February 2019
Does the job I needed without any trouble. Works nicely with Linux PC using an AVR i2c-usb bridge board. Would have preferred the headers not soldered on the board but I would imagine if they were left off someone will say "Would prefer headers soldered on" A small degree of uncertainty regarding what the proper power connection options and pinouts due to lack of datasheet/layout for the board but a couple of minutes of searching on the internet and enough information was located. MIT licenced source code available at -


By: on 28 May 2017
Awesome sensor. Super sensitive. Easy to use.

Write a product review

Others Also Bought

More From This Category