The Reefwing AHRS library provides an Attitude and Heading Reference System (AHRS) class for use with Arduino compatible boards. The library has been tested with the Arduino Nano, Nano 33 BLE, Nano 33 BLE SENSE (REV 1 and REV 2), Nano 33 IoT, MKR Vidor 4000, Portenta H7 and the Seeed XIAO nRF52840 Sense boards.
An Attitude and Heading Reference System (AHRS) takes information from the Inertial Measurement Unit (IMU) and processes it to provide reliable roll, pitch and yaw angles (Figure 1). Our library can be downloaded using the Arduino IDE Library Manager, or directly from the Reefwing GitHub Repository.
The initial version of this library was released in February 2022. It is now time for a substantial update!
We wrote about the sensor changes in the Nano 33 BLE revision 2 boards in an earlier article. Version 2 of the Nano 33 BLE Sense, replaces the LSM9DS1 9 axis IMU with a combination of two IMUs, the BMI270, a 6 axis gyro & accelerometer and the BMM150, a 3 axis magnetometer. In order to support the new hardware, it makes sense to separate the sensor processing from the sensor fusion algorithms.
Arduino Nano 33 BLE Sense Rev 2 and the Seeed nRF52840 Sense
The Nano 33 BLE family of boards is considered part of the Arduino Pro range, targeted at non-hobbyist applications. We…
Consequently, we are pulling out the LSM9DS1 IMU code from the Reefwing AHRS Library and have released it as a separate Library. The LSM9DS1 library is targeting the Nano 33 BLE and Nano 33 BLE Sense Rev 1 Arduino boards.
Reefwing LSM9DS1 Library for the Nano 33 BLE Sense
This article explains how to write a C++ library to control and monitor the LSM9DS1 IMU sensor using an Arduino. If you…
Similarly, we removed the LPS22HB barometer code from our AHRS library and released a stand alone Library for the LPS22HB Pressure Sensor, found in the Arduino Nano 33 BLE Sense Revisions 1 and 2.