Magnetic Declination Explained to Help Your Robot or IoT Project Find ‘True North’

Excellent write-up by CoderGirl42 that explains the process to aid your robot or IoT project in finding ‘true north’ – and explains it using an incredible LEGO NXT ‘Starbot‘ (a project unto itself!) – read the full write-up here at CodeProject.





Finding your geographic location and direction is useful in robotics and embedded systems. Using GPS and a Compass Sensor it’s easy to determine your location and your direction in relation to Magnetic North. But what if you want to know you direction in relation to True North?

It’s not difficult to determine your offset from Magnetic North to True North, also known as Magnetic Declination. Magnetic Declination can be easily found on the web through a NOAA website. But I wanted a real time model that I could use in my embedded device through code, enter the World Magnetic Model (WMM)! Using GPS with the WMM in Linux can easily determine Magnetic Declination that you can then use to offset the Magnetic Bearing from your Compass. I will take you through the steps to determine Magnetic Declination and use it to adjust your compass bearing.

Read more.

Featured Adafruit Products!


Adafruit Ultimate GPS Breakout – 66 channel w/10 Hz updates – Version 3: The breakout is built around the MTK3339 chipset, a no-nonsense, high-quality GPS module that can track up to 22 satellites on 66 channels, has an excellent high-sensitivity receiver (-165 dB tracking!), and a built in antenna. It can do up to 10 location updates a second for high speed, high sensitivity logging or tracking. Power usage is incredibly low, only 20 mA during navigation. Read more.


Triple-axis Magnetometer (Compass) Board – HMC5883L: We based this breakout on a popular and well loved magnetometer, the HMC5883L. This compact sensor uses I2C to communicate and its very easy to use. Since it’s a 3.3V max chip, we added circuitry to make it 5V-safe logic and power, for easy use with either 3 or 5V microcontrollers. Simply connect VCC to +3-5V and ground to ground. Then read data from the I2C clock and data pins. There’s also a Data Ready pin you can use to speed up reads (check the datasheet for details) Read more.

Join 4,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

Learn “How Computers Work” with Bill Gates, Ladyada and more – From Code.org !

CircuitPython in 2018 – Python on Microcontrollers is here!

Have an amazing project to share? Join the SHOW-AND-TELL every Wednesday night at 7:30pm ET on Google+ Hangouts.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/

Maker Business — Prototyping PCBs with Particle, a guide from a pro in the field #makerbusiness

Wearables — Learn about stretch

Electronics — Test for interference on the cheap!

Biohacking — Visualizing FLU Data with Wearables

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.