From ed2d7ea791ed2f8081820f2b876c698cb8bfba57 Mon Sep 17 00:00:00 2001 From: caternuson Date: Thu, 12 Aug 2021 15:33:01 -0700 Subject: [PATCH 1/2] change gyro units and fix gravity sensor type --- Adafruit_BNO055.cpp | 10 +++++----- examples/read_all_data/read_all_data.ino | 6 ++++++ 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Adafruit_BNO055.cpp b/Adafruit_BNO055.cpp index 66ce1a7..f5ae19a 100644 --- a/Adafruit_BNO055.cpp +++ b/Adafruit_BNO055.cpp @@ -542,7 +542,7 @@ bool Adafruit_BNO055::getEvent(sensors_event_t *event, event->acceleration.y = vec.y(); event->acceleration.z = vec.z(); } else if (vec_type == Adafruit_BNO055::VECTOR_GRAVITY) { - event->type = SENSOR_TYPE_ACCELEROMETER; + event->type = SENSOR_TYPE_GRAVITY; vec = getVector(Adafruit_BNO055::VECTOR_GRAVITY); event->acceleration.x = vec.x(); @@ -556,12 +556,12 @@ bool Adafruit_BNO055::getEvent(sensors_event_t *event, event->orientation.y = vec.y(); event->orientation.z = vec.z(); } else if (vec_type == Adafruit_BNO055::VECTOR_GYROSCOPE) { - event->type = SENSOR_TYPE_ROTATION_VECTOR; + event->type = SENSOR_TYPE_GYROSCOPE; vec = getVector(Adafruit_BNO055::VECTOR_GYROSCOPE); - event->gyro.x = vec.x(); - event->gyro.y = vec.y(); - event->gyro.z = vec.z(); + event->gyro.x = vec.x() * SENSORS_DPS_TO_RADS; + event->gyro.y = vec.y() * SENSORS_DPS_TO_RADS; + event->gyro.z = vec.z() * SENSORS_DPS_TO_RADS; } else if (vec_type == Adafruit_BNO055::VECTOR_MAGNETOMETER) { event->type = SENSOR_TYPE_MAGNETIC_FIELD; vec = getVector(Adafruit_BNO055::VECTOR_MAGNETOMETER); diff --git a/examples/read_all_data/read_all_data.ino b/examples/read_all_data/read_all_data.ino index bc65935..17d675b 100644 --- a/examples/read_all_data/read_all_data.ino +++ b/examples/read_all_data/read_all_data.ino @@ -127,6 +127,12 @@ void printEvent(sensors_event_t* event) { y = event->acceleration.y; z = event->acceleration.z; } + else if (event->type == SENSOR_TYPE_GRAVITY) { + Serial.print("Gravity:"); + x = event->acceleration.x; + y = event->acceleration.y; + z = event->acceleration.z; + } else { Serial.print("Unk:"); } From 24d174de72829e7c5848af01dded8ff657a840b7 Mon Sep 17 00:00:00 2001 From: caternuson Date: Thu, 12 Aug 2021 16:00:17 -0700 Subject: [PATCH 2/2] remove unused def --- Adafruit_BNO055.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Adafruit_BNO055.h b/Adafruit_BNO055.h index da36616..ac09a4d 100644 --- a/Adafruit_BNO055.h +++ b/Adafruit_BNO055.h @@ -149,7 +149,6 @@ class Adafruit_BNO055 : public Adafruit_Sensor { /* Unit selection register */ BNO055_UNIT_SEL_ADDR = 0X3B, - BNO055_DATA_SELECT_ADDR = 0X3C, /* Mode registers */ BNO055_OPR_MODE_ADDR = 0X3D,