This repository contains a header-only Arduino library and Python (MicroPython, WiringPi) library and examples for working with the incredible EM7180 Ultimate Sensor Fusion Solution boards (both the MPU9250 version and the LSM6DSM + LIS2MD version) from Pesky Products.
The library has been tested on the following hardware:
TinyPICO ESP32 development board
Ladybug and Butterfly STM32L4 boards from Tlera Corp
Teensy 3.2, 3.6, 4.0
Raspberry Pi 3 (Python)
PYBV1.0 : thanks to JonHylands for the MicroPython support
The Arduino library provides a simple API for for working with the EM7180 SENtral sensor hub.
The examples directory contains a simple Arduino sketch showing how to use this API. As usual, just clone the repo into your Arduino libraries folder to get started. The API and examples were adapted from Kris Winer's repository. I strongly recommend reading Kris's wiki for a comprehensive overview of the EM7180 and other sensor-fusion solutions, and for instructions on how to calibrate the EM7180 before you start using it. (You can use my version of the calibration sketch.)
To try the library out in Python, cd to the extras/python folder and do python3 mastertest.py. To install the library for access from other directories, do sudo python3 setup.py install.
An asynchronous version of this library is also available for Teensy 3.5.