Skip to content

fmenozzi/digital_compass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A digital compass that uses an LED ring to display the compass rose.

Upon startup, the compass enters magnetometer calibration mode, shown by the led chase sequence:

calibration.mov

During calibration, the compass should be moved around in all directions. Calibration ends after calibrated values do not change for five seconds.

Once the chase sequence ends, the compass rose will be displayed and the compass is now active, with the red LED pointing very roughly north:

usage.mov

Accuracy will suffer for a couple of reasons, such as being limited to only 24 possible directions and the magnetometer calibration being suboptimal. Regardless, this was a fun little proof-of-concept project for me, and my first non-trivial hardware project.

The microcontroller is a Seeeduino Xiao, and the magnetometer board uses the QMC5883L chip. The LED ring is an Adafruit Neopixel Ring 24, and a basic level shifter board does the conversions between the Xiao's needed 3.3V and 5V.

The software was programmed using Arduino. The circuit board was designed in KiCAD and manufactured by JLCPCB. The 3D-printed enclosure was designed in FreeCAD.

All software, schematics, and design files are licensed under the MIT license.

About

A basic LED ring compass

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages