diff --git a/README.md b/README.md index 3216481..cc2b586 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,6 @@ You can still use the old version on the `no_sh2_HAL` branch of this repo. It wi
## Getting Started - ### Wiring The default wiring is depicted below, it can be changed at driver initialization (see example section). @@ -308,8 +307,8 @@ API documentation generated with doxygen can be found in the documentation direc ## Program Flowcharts -The following charts illustrate the program flow this library implements to deal with handling sh2 HAL lib in a multi-tasked manner. These are here to aid development for anyone looking to modify, fork, or contribute. -Sh2 HAL lib handles all communication with the IMU through callbacks which can be viewed in `BNO08xSH2HAL.hpp`. Sh2 HAL lib handles the sh2 SHTP protocol imposed ontop of SPI, while the callbacks give it the means to send/receive over SPI, reset the device, etc... +The following charts illustrate the program flow this library implements to deal with handling reports from the IMU in a multi-tasked manner. These are here to aid development for anyone looking to modify, fork, or contribute. +Sh2 HAL lib handles all communication with the IMU through callbacks which can be viewed in `BNO08xSH2HAL.hpp`.  diff --git a/documentation/html/_b_n_o08x_8cpp.html b/documentation/html/_b_n_o08x_8cpp.html new file mode 100644 index 0000000..4e127e5 --- /dev/null +++ b/documentation/html/_b_n_o08x_8cpp.html @@ -0,0 +1,231 @@ + + + + + + + +|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <etl/vector.h>#include <etl/variant.h>#include <etl/map.h>#include <driver/gpio.h>#include <driver/spi_common.h>#include <driver/spi_master.h>#include <freertos/FreeRTOS.h>#include <freertos/task.h>#include <freertos/event_groups.h>#include <freertos/queue.h>#include "BNO08xGlobalTypes.hpp"#include "BNO08xPrivateTypes.hpp"#include "BNO08xSH2HAL.hpp"#include "BNO08xReports.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08x |
| BNO08x IMU driver class. More... | |
| struct | BNO08x::bno08x_reports_t |
| Contains report implementations. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <stdint.h>#include <functional>

Go to the source code of this file.
++Classes | |
| class | BNO08xCbGeneric |
| Parent class to represent callback functions as generic type such that all flavors can be invoked by single type. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xCbGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xCbParamRptID |
| Class to hold callback functions which are passed report ID as input parameter. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xCbGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xCbParamVoid |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <math.h>#include <inttypes.h>#include <stdint.h>#include <cstring>#include <driver/gpio.h>#include <driver/spi_common.h>#include <driver/spi_master.h>#include "sh2_SensorValue.h"

Go to the source code of this file.
++Classes | |
| struct | bno08x_config_t |
| IMU configuration settings passed into constructor. More... | |
| struct | bno08x_quat_t |
| Struct to represent unit quaternion. More... | |
| struct | bno08x_euler_angle_t |
| Struct to represent euler angle (units in degrees or rads) More... | |
| struct | bno08x_ang_vel_t |
| Struct to represent angular velocity (units in rad/s) More... | |
| struct | bno08x_magf_t |
| Struct to represent magnetic field data (units in uTesla) More... | |
| struct | bno08x_magf_bias_t |
| Struct to represent magnetic field bias data (units in uTesla) More... | |
| struct | bno08x_gyro_t |
| Struct to represent gyro data (units in rad/s) More... | |
| struct | bno08x_gyro_bias_t |
| Struct to represent gyro bias data (units in rad/s) More... | |
| struct | bno08x_activity_classifier_t |
| Struct to represent activity classifier data. More... | |
| struct | bno08x_tap_detector_t |
| Struct to represent tap detector data (flag meaning: 0 = no tap, 1 = positive tap on axis, -1 = negative tap on axis) More... | |
| struct | bno08x_shake_detector_t |
| Struct to represent shake detector data (flag meaning: 0 = no shake 1 = shake detected) More... | |
| struct | bno08x_accel_t |
| Struct to represent acceleration data from acceleration, linear acceleration, and gravity reports. More... | |
| struct | bno08x_step_counter_t |
| Struct to represent step counter data from step counter reports. More... | |
| struct | bno08x_raw_gyro_t |
| Struct to represent raw mems gyro data from raw gyro reports (units in ADC counts). More... | |
| struct | bno08x_raw_accel_t |
| Struct to represent raw mems accelerometer data from raw accelerometer reports (units in ADC counts). More... | |
| struct | bno08x_raw_magf_t |
| Struct to represent raw mems magnetometer data from raw magnetometer reports (units in ADC counts). More... | |
| struct | bno08x_stability_classifier_t |
| Struct to represent stability classifier data from stability classifier reports. More... | |
| struct | bno08x_sample_counts_t |
| Struct to represent sample counts, returned from BNO08xRpt::get_sample_counts() More... | |
| struct | bno08x_meta_data_t |
| Struct to represent sensor/report meta data, returned from BNO08xRpt::get_meta_data() More... | |
+Macros | |
| #define | TAP_DETECTED_X_AXIS(tap) ((tap) & (1U << 0U) ? 1 : 0) |
| #define | TAP_DETECTED_X_AXIS_POSITIVE(tap) ((tap) & (1U << 1U) ? 1 : 0) |
| #define | TAP_DETECTED_Y_AXIS(tap) ((tap) & (1U << 2U) ? 1 : 0) |
| #define | TAP_DETECTED_Y_AXIS_POSITIVE(tap) ((tap) & (1U << 3U) ? 1 : 0) |
| #define | TAP_DETECTED_Z_AXIS(tap) ((tap) & (1U << 4U) ? 1 : 0) |
| #define | TAP_DETECTED_Z_AXIS_POSITIVE(tap) ((tap) & (1U << 5U) ? 1 : 0) |
| #define | TAP_DETECTED_DOUBLE(tap) ((tap) & (1U << 6U) ? 1 : 0) |
| #define | SHAKE_DETECTED_X(tap) ((tap) & (1U << 0U) ? 1 : 0) |
| #define | SHAKE_DETECTED_Y(tap) ((tap) & (1U << 1U) ? 1 : 0) |
| #define | SHAKE_DETECTED_Z(tap) ((tap) & (1U << 2U) ? 1 : 0) |
+Typedefs | |
| typedef struct bno08x_config_t | bno08x_config_t |
| IMU configuration settings passed into constructor. | |
| typedef bno08x_config_t | imu_config_t |
| using | IMUAccuracy = BNO08xAccuracy |
| typedef struct bno08x_quat_t | bno08x_quat_t |
| Struct to represent unit quaternion. | |
| typedef struct bno08x_euler_angle_t | bno08x_euler_angle_t |
| Struct to represent euler angle (units in degrees or rads) | |
| typedef struct bno08x_ang_vel_t | bno08x_ang_vel_t |
| Struct to represent angular velocity (units in rad/s) | |
| typedef struct bno08x_magf_t | bno08x_magf_t |
| Struct to represent magnetic field data (units in uTesla) | |
| typedef struct bno08x_magf_bias_t | bno08x_magf_bias_t |
| Struct to represent magnetic field bias data (units in uTesla) | |
| typedef struct bno08x_gyro_t | bno08x_gyro_t |
| Struct to represent gyro data (units in rad/s) | |
| typedef struct bno08x_gyro_bias_t | bno08x_gyro_bias_t |
| Struct to represent gyro bias data (units in rad/s) | |
| typedef struct bno08x_activity_classifier_t | bno08x_activity_classifier_t |
| Struct to represent activity classifier data. | |
| typedef struct bno08x_tap_detector_t | bno08x_tap_detector_t |
| Struct to represent tap detector data (flag meaning: 0 = no tap, 1 = positive tap on axis, -1 = negative tap on axis) | |
| typedef struct bno08x_shake_detector_t | bno08x_shake_detector_t |
| Struct to represent shake detector data (flag meaning: 0 = no shake 1 = shake detected) | |
| typedef struct bno08x_accel_t | bno08x_accel_t |
| Struct to represent acceleration data from acceleration, linear acceleration, and gravity reports. | |
| typedef struct bno08x_step_counter_t | bno08x_step_counter_t |
| Struct to represent step counter data from step counter reports. | |
| typedef struct bno08x_raw_gyro_t | bno08x_raw_gyro_t |
| Struct to represent raw mems gyro data from raw gyro reports (units in ADC counts). | |
| typedef struct bno08x_raw_accel_t | bno08x_raw_accel_t |
| Struct to represent raw mems accelerometer data from raw accelerometer reports (units in ADC counts). | |
| typedef struct bno08x_raw_magf_t | bno08x_raw_magf_t |
| Struct to represent raw mems magnetometer data from raw magnetometer reports (units in ADC counts). | |
| typedef struct bno08x_stability_classifier_t | bno08x_stability_classifier_t |
| Struct to represent stability classifier data from stability classifier reports. | |
| typedef struct bno08x_sample_counts_t | bno08x_sample_counts_t |
| Struct to represent sample counts, returned from BNO08xRpt::get_sample_counts() | |
| typedef struct bno08x_meta_data_t | bno08x_meta_data_t |
| Struct to represent sensor/report meta data, returned from BNO08xRpt::get_meta_data() | |
+Enumerations | |
| enum class | BNO08xCalSel { + accelerometer = SH2_CAL_ACCEL +, gyro = SH2_CAL_GYRO +, magnetometer = SH2_CAL_MAG +, planar_accelerometer = SH2_CAL_PLANAR +, + all = (SH2_CAL_ACCEL | SH2_CAL_GYRO | SH2_CAL_MAG | SH2_CAL_PLANAR) + + } |
| enum class | BNO08xResetReason { + UNDEFINED +, POR +, INT_RST +, WTD +, + EXT_RST +, OTHER + + } |
| Reason for previous IMU reset (returned by get_reset_reason()) More... | |
| enum class | BNO08xAccuracy { + UNRELIABLE +, LOW +, MED +, HIGH +, + UNDEFINED + + } |
| Sensor accuracy returned from input reports, corresponds to status bits (see ref. manual 6.5.1) More... | |
| enum class | BNO08xActivityEnable { + UNKNOWN = (1U << 0U) +, IN_VEHICLE = (1U << 1U) +, ON_BICYCLE = (1U << 2U) +, ON_FOOT = (1U << 3U) +, + STILL = (1U << 4U) +, TILTING = (1U << 5U) +, WALKING = (1U << 6U) +, RUNNING = (1U << 7U) +, + ON_STAIRS = (1U << 8U) +, ALL = 0x1FU + + } |
| BNO08xActivity Classifier enable bits passed to enable_activity_classifier() More... | |
| enum class | BNO08xActivity { + UNKNOWN = 0 +, IN_VEHICLE = 1 +, ON_BICYCLE = 2 +, ON_FOOT = 3 +, + STILL = 4 +, TILTING = 5 +, WALKING = 6 +, RUNNING = 7 +, + ON_STAIRS = 8 +, UNDEFINED = 9 + + } |
| BNO08xActivity states returned from BNO08x::activity_classifier.get() More... | |
| enum class | BNO08xStability { + UNKNOWN = 0 +, ON_TABLE = 1 +, STATIONARY = 2 +, STABLE = 3 +, + MOTION = 4 +, RESERVED = 5 +, UNDEFINED = 6 + + } |
| BNO08xStability states returned from BNO08x::stability_classifier.get() More... | |
+Variables | |
| static const constexpr uint8_t | TOTAL_RPT_COUNT = 38 |
| Amount of possible reports returned from BNO08x. | |
| #define SHAKE_DETECTED_X | +( | +tap | ) | +((tap) & (1U << 0U) ? 1 : 0) | +
| #define SHAKE_DETECTED_Y | +( | +tap | ) | +((tap) & (1U << 1U) ? 1 : 0) | +
| #define SHAKE_DETECTED_Z | +( | +tap | ) | +((tap) & (1U << 2U) ? 1 : 0) | +
| #define TAP_DETECTED_DOUBLE | +( | +tap | ) | +((tap) & (1U << 6U) ? 1 : 0) | +
| #define TAP_DETECTED_X_AXIS | +( | +tap | ) | +((tap) & (1U << 0U) ? 1 : 0) | +
| #define TAP_DETECTED_X_AXIS_POSITIVE | +( | +tap | ) | +((tap) & (1U << 1U) ? 1 : 0) | +
| #define TAP_DETECTED_Y_AXIS | +( | +tap | ) | +((tap) & (1U << 2U) ? 1 : 0) | +
| #define TAP_DETECTED_Y_AXIS_POSITIVE | +( | +tap | ) | +((tap) & (1U << 3U) ? 1 : 0) | +
| #define TAP_DETECTED_Z_AXIS | +( | +tap | ) | +((tap) & (1U << 4U) ? 1 : 0) | +
| #define TAP_DETECTED_Z_AXIS_POSITIVE | +( | +tap | ) | +((tap) & (1U << 5U) ? 1 : 0) | +
| typedef struct bno08x_accel_t bno08x_accel_t | +
Struct to represent acceleration data from acceleration, linear acceleration, and gravity reports.
+ +| typedef struct bno08x_activity_classifier_t bno08x_activity_classifier_t | +
Struct to represent activity classifier data.
+ +| typedef struct bno08x_ang_vel_t bno08x_ang_vel_t | +
Struct to represent angular velocity (units in rad/s)
+ +| typedef struct bno08x_config_t bno08x_config_t | +
IMU configuration settings passed into constructor.
+ +| typedef struct bno08x_euler_angle_t bno08x_euler_angle_t | +
Struct to represent euler angle (units in degrees or rads)
+ +| typedef struct bno08x_gyro_bias_t bno08x_gyro_bias_t | +
Struct to represent gyro bias data (units in rad/s)
+ +| typedef struct bno08x_gyro_t bno08x_gyro_t | +
Struct to represent gyro data (units in rad/s)
+ +| typedef struct bno08x_magf_bias_t bno08x_magf_bias_t | +
Struct to represent magnetic field bias data (units in uTesla)
+ +| typedef struct bno08x_magf_t bno08x_magf_t | +
Struct to represent magnetic field data (units in uTesla)
+ +| typedef struct bno08x_meta_data_t bno08x_meta_data_t | +
Struct to represent sensor/report meta data, returned from BNO08xRpt::get_meta_data()
+ +| typedef struct bno08x_quat_t bno08x_quat_t | +
Struct to represent unit quaternion.
+ +| typedef struct bno08x_raw_accel_t bno08x_raw_accel_t | +
Struct to represent raw mems accelerometer data from raw accelerometer reports (units in ADC counts).
+ +| typedef struct bno08x_raw_gyro_t bno08x_raw_gyro_t | +
Struct to represent raw mems gyro data from raw gyro reports (units in ADC counts).
+ +| typedef struct bno08x_raw_magf_t bno08x_raw_magf_t | +
Struct to represent raw mems magnetometer data from raw magnetometer reports (units in ADC counts).
+ +| typedef struct bno08x_sample_counts_t bno08x_sample_counts_t | +
Struct to represent sample counts, returned from BNO08xRpt::get_sample_counts()
+ +| typedef struct bno08x_shake_detector_t bno08x_shake_detector_t | +
Struct to represent shake detector data (flag meaning: 0 = no shake 1 = shake detected)
+ +| typedef struct bno08x_stability_classifier_t bno08x_stability_classifier_t | +
Struct to represent stability classifier data from stability classifier reports.
+ +| typedef struct bno08x_step_counter_t bno08x_step_counter_t | +
Struct to represent step counter data from step counter reports.
+ +| typedef struct bno08x_tap_detector_t bno08x_tap_detector_t | +
Struct to represent tap detector data (flag meaning: 0 = no tap, 1 = positive tap on axis, -1 = negative tap on axis)
+ +| typedef bno08x_config_t imu_config_t | +
| using IMUAccuracy = BNO08xAccuracy | +
+
|
+ +strong | +
+
|
+ +strong | +
+
|
+ +strong | +
+
|
+ +strong | +
+
|
+ +strong | +
Reason for previous IMU reset (returned by get_reset_reason())
+
+
|
+ +strong | +
+
|
+ +staticconstexpr | +
Amount of possible reports returned from BNO08x.
+ +|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <etl/vector.h>#include <etl/variant.h>#include <freertos/FreeRTOS.h>#include <freertos/semphr.h>#include <freertos/event_groups.h>#include "BNO08xGlobalTypes.hpp"#include "BNO08xCbParamRptID.hpp"#include "BNO08xCbParamVoid.hpp"

Go to the source code of this file.
++Classes | |
| struct | BNO08xPrivateTypes::bno08x_init_status_t |
| Holds info about which functionality has been successfully initialized (used by deconstructor during cleanup). More... | |
| struct | BNO08xPrivateTypes::bno08x_sync_ctx_t |
| Holds context used to synchronize tasks and callback execution. More... | |
+Namespaces | |
| namespace | BNO08xPrivateTypes |
+Typedefs | |
| using | BNO08xPrivateTypes::bno08x_cb_list_t |
| Alias for vector type to contain both cb flavors. | |
| typedef struct BNO08xPrivateTypes::bno08x_init_status_t | BNO08xPrivateTypes::bno08x_init_status_t |
| Holds info about which functionality has been successfully initialized (used by deconstructor during cleanup). | |
| typedef struct BNO08xPrivateTypes::bno08x_sync_ctx_t | BNO08xPrivateTypes::bno08x_sync_ctx_t |
| Holds context used to synchronize tasks and callback execution. | |
+Variables | |
| static sh2_SensorConfig | BNO08xPrivateTypes::default_sensor_cfg |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptAcceleration.hpp"#include "BNO08xRptLinearAcceleration.hpp"#include "BNO08xRptGravity.hpp"#include "BNO08xRptCalMagnetometer.hpp"#include "BNO08xRptUncalMagnetometer.hpp"#include "BNO08xRptCalGyro.hpp"#include "BNO08xRptUncalGyro.hpp"#include "BNO08xRptRV.hpp"#include "BNO08xRptGameRV.hpp"#include "BNO08xRptARVRStabilizedRV.hpp"#include "BNO08xRptARVRStabilizedGameRV.hpp"#include "BNO08xRptIGyroRV.hpp"#include "BNO08xRptRVGeomag.hpp"#include "BNO08xRptRawMEMSGyro.hpp"#include "BNO08xRptRawMEMSAccelerometer.hpp"#include "BNO08xRptRawMEMSMagnetometer.hpp"#include "BNO08xRptStepCounter.hpp"#include "BNO08xRptActivityClassifier.hpp"#include "BNO08xRptStabilityClassifier.hpp"#include "BNO08xRptShakeDetector.hpp"#include "BNO08xRptTapDetector.hpp"

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <functional>#include "BNO08xGlobalTypes.hpp"#include "BNO08xPrivateTypes.hpp"#include "sh2.h"#include "sh2_SensorValue.h"#include "sh2_err.h"

Go to the source code of this file.
++Classes | |
| class | BNO08xRpt |
| Class to represent and manage reports returned from BNO08x. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptARVRStabilizedGameRV.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptARVRStabilizedGameRV |
| Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.43) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptARVRStabilizedRV.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptARVRStabilizedRV |
| Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.42) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptAcceleration.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptAcceleration |
| Class to represent accelerometer reports. (See Ref. Manual 6.5.9) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptActivityClassifier.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptActivityClassifier |
| Class to represent activity classifier reports. (See Ref. Manual 6.5.36) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptCalGyro.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptCalGyro |
| Class to represent calibrated gyro reports. (See Ref. Manual 6.5.13) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptCalMagnetometer.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptCalMagnetometer |
| Class to represent calibrated magnetometer reports. (See Ref. Manual 6.5.16) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptGameRV.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptGameRV |
| Class to represent game rotation vector reports. (See Ref. Manual 6.5.19) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptGravity.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptGravity |
| Class to represent gravity reports. (See Ref. Manual 6.5.11) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptIGyroRV.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptIGyroRV |
| Class to represent integrated gyro rotation vector reports. (See Ref. Manual 6.5.44) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptLinearAcceleration.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptLinearAcceleration |
| Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRV.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRV |
| Class to represent rotation vector reports. (See Ref. Manual 6.5.18) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRVGeneric |
| Class to represent rotation vector reports. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeomag.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRVGeneric.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRVGeomag |
| Class to represent geomagnetic rotation vector reports. (See Ref. Manual 6.5.20) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRawMEMSAccelerometer.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRawMEMSAccelerometer |
| Class to represent raw accelerometer reports. (See Ref. Manual 6.5.8) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRawMEMSGyro.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRawMEMSGyro |
| Class to represent raw gyro reports. (See Ref. Manual 6.5.12) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptRawMEMSMagnetometer.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptRawMEMSMagnetometer |
| Class to represent raw magnetometer reports. (See Ref. Manual 6.5.15) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptShakeDetector.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptShakeDetector |
| Class to represent shake detector reports. (See Ref. Manual 6.5.32) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptStabilityClassifier.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptStabilityClassifier |
| Class to represent stability classifier reports. (See Ref. Manual 6.5.31) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptStepCounter.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptStepCounter |
| Class to represent step counter reports. (See Ref. Manual 6.5.29) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptTapDetector.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptTapDetector |
| Class to represent tap detector reports. (See Ref. Manual 6.5.27) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptUncalGyro.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptUncalGyro |
| Class to represent uncalibrated gyro reports. (See Ref. Manual 6.5.14) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRptUncalMagnetometer.hpp"
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08xRpt.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xRptUncalMagnetometer |
| Class to represent uncalibrated magnetometer reports. (See Ref. Manual 6.5.17) More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "sh2.h"#include "sh2_SensorValue.h"#include "sh2_err.h"#include <esp_log.h>#include <esp_timer.h>#include "BNO08xPrivateTypes.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xSH2HAL |
| Fully static class containing callback implementations for sh2 HAL lib. More... | |
+Macros | |
| #define | UINT16_CLR_MSB(val_16bit) ((val_16bit) & 0x00FFU) |
| Clears the most significant byte of a 16-bit value. | |
| #define | UINT16_CLR_LSB(val_16bit) ((val_16bit) & 0xFF00U) |
| Clears the least significant byte of a 16-bit value. | |
| #define | UINT32_CLR_BYTE(val_32bit, byte2clear) ((val_32bit) & ~(0xFFUL << (byte2clear * 8UL))) |
| Clears a specified byte in a 32-bit value. | |
| #define | UINT32_MSK_BYTE(val_32bit, byte2mask) ((val_32bit) & (0xFFUL << (byte2mask * 8UL))) |
| Masks a specified byte in a 32-bit value. | |
| #define | PARSE_PACKET_LENGTH(header) (UINT16_CLR_LSB(static_cast<uint16_t>(header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(header[0]))) |
| Parse length from SHTP packet header. | |
| #define PARSE_PACKET_LENGTH | +( | +header | ) | +(UINT16_CLR_LSB(static_cast<uint16_t>(header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(header[0]))) | +
Parse length from SHTP packet header.
+| packet | Pointer to bno08x_rx_packet_t containing data. |
| #define UINT16_CLR_LSB | +( | +val_16bit | ) | +((val_16bit) & 0xFF00U) | +
Clears the least significant byte of a 16-bit value.
+| val_16bit | The 16-bit value to modify. |
| #define UINT16_CLR_MSB | +( | +val_16bit | ) | +((val_16bit) & 0x00FFU) | +
Clears the most significant byte of a 16-bit value.
+| val_16bit | The 16-bit value to modify. |
| #define UINT32_CLR_BYTE | +( | +val_32bit, | +|
| + | + | byte2clear ) ((val_32bit) & ~(0xFFUL << (byte2clear * 8UL))) | +
Clears a specified byte in a 32-bit value.
+| val_32bit | The 32-bit value to modify. |
| byte2clear | The byte index to clear (0 = LSB, 3 = MSB). |
| #define UINT32_MSK_BYTE | +( | +val_32bit, | +|
| + | + | byte2mask ) ((val_32bit) & (0xFFUL << (byte2mask * 8UL))) | +
Masks a specified byte in a 32-bit value.
+| val_32bit | The 32-bit value to modify. |
| byte2mask | The byte index to mask (0 = LSB, 3 = MSB). |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include "BNO08x.hpp"

Go to the source code of this file.
++Classes | |
| class | BNO08xTestHelper |
| BNO08x unit test helper class. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

Go to the source code of this file.
++Classes | |
| class | BNO08xTestSuite |
| BNO08x unit test launch point class. More... | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Functions | |
| TEST_CASE ("BNO08x Driver Creation for [CallbackAllReportVoidInputParam] Tests", "[CallbackAllReportVoidInputParam]") | |
| TEST_CASE ("Void Input Param Flavor Cb", "[CallbackAllReportVoidInputParam]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [CallbackAllReportVoidInputParam] Tests", "[CallbackAllReportVoidInputParam]") | |
| TEST_CASE ("BNO08x Driver Creation for [CallbackAllReportIDInputParam] Tests", "[CallbackAllReportIDInputParam]") | |
| TEST_CASE ("Report ID Input Param Flavor Cb", "[CallbackAllReportIDInputParam]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [CallbackAllReportIDInputParam] Tests", "[CallbackAllReportIDInputParam]") | |
| TEST_CASE ("BNO08x Driver Creation for [CallbackSingleReportVoidInputParam] Tests", "[CallbackSingleReportVoidInputParam]") | |
| TEST_CASE ("Single Report Void Input Param Flavor Cb", "[CallbackSingleReportVoidInputParam]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [CallbackSingleReportVoidInputParam] Tests", "[CallbackSingleReportVoidInputParam]") | |
| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [CallbackAllReportIDInputParam], | +
| + | + | "" | [CallbackAllReportIDInputParam] ) | +

| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [CallbackAllReportVoidInputParam], | +
| + | + | "" | [CallbackAllReportVoidInputParam] ) | +

| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [CallbackSingleReportVoidInputParam], | +
| + | + | "" | [CallbackSingleReportVoidInputParam] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [CallbackAllReportIDInputParam], | +
| + | + | "" | [CallbackAllReportIDInputParam] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [CallbackAllReportVoidInputParam], | +
| + | + | "" | [CallbackAllReportVoidInputParam] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [CallbackSingleReportVoidInputParam], | +
| + | + | "" | [CallbackSingleReportVoidInputParam] ) | +

| TEST_CASE | +( | +"Report ID Input Param Flavor Cb" | , | +
| + | + | "" | [CallbackAllReportIDInputParam] ) | +

| TEST_CASE | +( | +"Single Report Void Input Param Flavor Cb" | , | +
| + | + | "" | [CallbackSingleReportVoidInputParam] ) | +

| TEST_CASE | +( | +"Void Input Param Flavor Cb" | , | +
| + | + | "" | [CallbackAllReportVoidInputParam] ) | +

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Functions | |
| TEST_CASE ("BNO08x Driver Creation for [FeatureTests] Tests", "[FeatureTests]") | |
| TEST_CASE ("Hard Reset", "[FeatureTests]") | |
| TEST_CASE ("Soft Reset", "[FeatureTests]") | |
| TEST_CASE ("Sleep", "[FeatureTests]") | |
| TEST_CASE ("Get Metadata", "[FeatureTests]") | |
| TEST_CASE ("Get Sample Counts", "[FeatureTests]") | |
| TEST_CASE ("Enable Dynamic Calibration", "[FeatureTests]") | |
| TEST_CASE ("Save Dynamic Calibration", "[FeatureTests]") | |
| TEST_CASE ("Autosave Dynamic Calibration", "[FeatureTests]") | |
| TEST_CASE ("Disable Dynamic Calibration", "[FeatureTests]") | |
| TEST_CASE ("Clear Dynamic Calibration", "[FeatureTests]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [FeatureTests] Tests", "[FeatureTests]") | |
| TEST_CASE | +( | +"Autosave Dynamic Calibration" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [FeatureTests], | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [FeatureTests], | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Clear Dynamic Calibration" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Disable Dynamic Calibration" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Enable Dynamic Calibration" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Get Metadata" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Get Sample Counts" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Hard Reset" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Save Dynamic Calibration" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Sleep" | , | +
| + | + | "" | [FeatureTests] ) | +

| TEST_CASE | +( | +"Soft Reset" | , | +
| + | + | "" | [FeatureTests] ) | +

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Functions | |
| TEST_CASE ("InitComprehensive Config Args", "[InitComprehensive]") | |
| TEST_CASE ("InitComprehensive GPIO", "[InitComprehensive]") | |
| TEST_CASE ("InitComprehensive HINT ISR", "[InitComprehensive]") | |
| TEST_CASE ("InitComprehensive SPI", "[InitComprehensive]") | |
| TEST_CASE ("InitComprehensive sh2 HAL", "[InitComprehensive]") | |
| TEST_CASE ("InitComprehensive Tasks", "[InitComprehensive]") | |
| TEST_CASE ("DeinitComprehensive Tasks", "[DeinitComprehensive]") | |
| TEST_CASE ("DeinitComprehensive sh2 HAL", "[DeinitComprehensive]") | |
| TEST_CASE ("DeinitComprehensive HINT ISR", "[DeinitComprehensive]") | |
| TEST_CASE ("DeinitComprehensive SPI", "[DeinitComprehensive]") | |
| TEST_CASE ("DeinitComprehensive GPIO", "[DeinitComprehensive]") | |
| TEST_CASE ("Init and Deinit", "[InitDenit]") | |
| TEST_CASE | +( | +"DeinitComprehensive GPIO" | , | +
| + | + | "" | [DeinitComprehensive] ) | +

| TEST_CASE | +( | +"DeinitComprehensive HINT ISR" | , | +
| + | + | "" | [DeinitComprehensive] ) | +

| TEST_CASE | +( | +"DeinitComprehensive sh2 HAL" | , | +
| + | + | "" | [DeinitComprehensive] ) | +

| TEST_CASE | +( | +"DeinitComprehensive SPI" | , | +
| + | + | "" | [DeinitComprehensive] ) | +

| TEST_CASE | +( | +"DeinitComprehensive Tasks" | , | +
| + | + | "" | [DeinitComprehensive] ) | +

| TEST_CASE | +( | +"Init and Deinit" | , | +
| + | + | "" | [InitDenit] ) | +

| TEST_CASE | +( | +"InitComprehensive Config Args" | , | +
| + | + | "" | [InitComprehensive] ) | +

| TEST_CASE | +( | +"InitComprehensive GPIO" | , | +
| + | + | "" | [InitComprehensive] ) | +

| TEST_CASE | +( | +"InitComprehensive HINT ISR" | , | +
| + | + | "" | [InitComprehensive] ) | +

| TEST_CASE | +( | +"InitComprehensive sh2 HAL" | , | +
| + | + | "" | [InitComprehensive] ) | +

| TEST_CASE | +( | +"InitComprehensive SPI" | , | +
| + | + | "" | [InitComprehensive] ) | +

| TEST_CASE | +( | +"InitComprehensive Tasks" | , | +
| + | + | "" | [InitComprehensive] ) | +

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Functions | |
| TEST_CASE ("BNO08x Driver Creation for [MultiReportEnableDisable] Tests", "[MultiReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Dual Report", "[MultiReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Quad Report", "[MultiReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Octo Report", "[MultiReportEnableDisable]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [MultiReportEnableDisable] Tests", "[MultiReportEnableDisable]") | |
| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [MultiReportEnableDisable], | +
| + | + | "" | [MultiReportEnableDisable] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [MultiReportEnableDisable], | +
| + | + | "" | [MultiReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Dual Report" | , | +
| + | + | "" | [MultiReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Octo Report" | , | +
| + | + | "" | [MultiReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Quad Report" | , | +
| + | + | "" | [MultiReportEnableDisable] ) | +

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Functions | |
| TEST_CASE ("BNO08x Driver Creation for [SingleReportEnableDisable] Tests", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable Incorrect Report", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Accelerometer", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Linear Accelerometer", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Gravity", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Cal Magnetometer", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Uncal Magnetometer", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Cal Gyro", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Uncal Gyro", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Game RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable ARVR Stabilized RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable ARVR Stabilized Game RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Gyro Integrated RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("Enable/Disable Geomagnetic RV", "[SingleReportEnableDisable]") | |
| TEST_CASE ("BNO08x Driver Cleanup for [SingleReportEnableDisable] Tests", "[SingleReportEnableDisable]") | |
| TEST_CASE | +( | +"BNO08x Driver Cleanup for Tests" | [SingleReportEnableDisable], | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"BNO08x Driver Creation for Tests" | [SingleReportEnableDisable], | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable Incorrect Report" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Accelerometer" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable ARVR Stabilized Game RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable ARVR Stabilized RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Cal Gyro" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Cal Magnetometer" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Game RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Geomagnetic RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Gravity" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Gyro Integrated RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Linear Accelerometer" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable RV" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Uncal Gyro" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

| TEST_CASE | +( | +"Enable/Disable Uncal Magnetometer" | , | +
| + | + | "" | [SingleReportEnableDisable] ) | +

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
| ▼NBNO08xPrivateTypes | |
| Cbno08x_init_status_t | Holds info about which functionality has been successfully initialized (used by deconstructor during cleanup) |
| Cbno08x_sync_ctx_t | Holds context used to synchronize tasks and callback execution |
| ▼CBNO08x | BNO08x IMU driver class |
| Cbno08x_reports_t | Contains report implementations |
| Cbno08x_accel_t | Struct to represent acceleration data from acceleration, linear acceleration, and gravity reports |
| Cbno08x_activity_classifier_t | Struct to represent activity classifier data |
| Cbno08x_ang_vel_t | Struct to represent angular velocity (units in rad/s) |
| Cbno08x_config_t | IMU configuration settings passed into constructor |
| Cbno08x_euler_angle_t | Struct to represent euler angle (units in degrees or rads) |
| Cbno08x_gyro_bias_t | Struct to represent gyro bias data (units in rad/s) |
| Cbno08x_gyro_t | Struct to represent gyro data (units in rad/s) |
| Cbno08x_magf_bias_t | Struct to represent magnetic field bias data (units in uTesla) |
| Cbno08x_magf_t | Struct to represent magnetic field data (units in uTesla) |
| Cbno08x_meta_data_t | Struct to represent sensor/report meta data, returned from BNO08xRpt::get_meta_data() |
| Cbno08x_quat_t | Struct to represent unit quaternion |
| Cbno08x_raw_accel_t | Struct to represent raw mems accelerometer data from raw accelerometer reports (units in ADC counts) |
| Cbno08x_raw_gyro_t | Struct to represent raw mems gyro data from raw gyro reports (units in ADC counts) |
| Cbno08x_raw_magf_t | Struct to represent raw mems magnetometer data from raw magnetometer reports (units in ADC counts) |
| Cbno08x_sample_counts_t | Struct to represent sample counts, returned from BNO08xRpt::get_sample_counts() |
| Cbno08x_shake_detector_t | Struct to represent shake detector data (flag meaning: 0 = no shake 1 = shake detected) |
| Cbno08x_stability_classifier_t | Struct to represent stability classifier data from stability classifier reports |
| Cbno08x_step_counter_t | Struct to represent step counter data from step counter reports |
| Cbno08x_tap_detector_t | Struct to represent tap detector data (flag meaning: 0 = no tap, 1 = positive tap on axis, -1 = negative tap on axis) |
| CBNO08xCbGeneric | Parent class to represent callback functions as generic type such that all flavors can be invoked by single type |
| CBNO08xCbParamRptID | Class to hold callback functions which are passed report ID as input parameter |
| CBNO08xCbParamVoid | |
| CBNO08xRpt | Class to represent and manage reports returned from BNO08x |
| CBNO08xRptAcceleration | Class to represent accelerometer reports. (See Ref. Manual 6.5.9) |
| CBNO08xRptActivityClassifier | Class to represent activity classifier reports. (See Ref. Manual 6.5.36) |
| CBNO08xRptARVRStabilizedGameRV | Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.43) |
| CBNO08xRptARVRStabilizedRV | Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.42) |
| CBNO08xRptCalGyro | Class to represent calibrated gyro reports. (See Ref. Manual 6.5.13) |
| CBNO08xRptCalMagnetometer | Class to represent calibrated magnetometer reports. (See Ref. Manual 6.5.16) |
| CBNO08xRptGameRV | Class to represent game rotation vector reports. (See Ref. Manual 6.5.19) |
| CBNO08xRptGravity | Class to represent gravity reports. (See Ref. Manual 6.5.11) |
| CBNO08xRptIGyroRV | Class to represent integrated gyro rotation vector reports. (See Ref. Manual 6.5.44) |
| CBNO08xRptLinearAcceleration | Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10) |
| CBNO08xRptRawMEMSAccelerometer | Class to represent raw accelerometer reports. (See Ref. Manual 6.5.8) |
| CBNO08xRptRawMEMSGyro | Class to represent raw gyro reports. (See Ref. Manual 6.5.12) |
| CBNO08xRptRawMEMSMagnetometer | Class to represent raw magnetometer reports. (See Ref. Manual 6.5.15) |
| CBNO08xRptRV | Class to represent rotation vector reports. (See Ref. Manual 6.5.18) |
| CBNO08xRptRVGeneric | Class to represent rotation vector reports |
| CBNO08xRptRVGeomag | Class to represent geomagnetic rotation vector reports. (See Ref. Manual 6.5.20) |
| CBNO08xRptShakeDetector | Class to represent shake detector reports. (See Ref. Manual 6.5.32) |
| CBNO08xRptStabilityClassifier | Class to represent stability classifier reports. (See Ref. Manual 6.5.31) |
| CBNO08xRptStepCounter | Class to represent step counter reports. (See Ref. Manual 6.5.29) |
| CBNO08xRptTapDetector | Class to represent tap detector reports. (See Ref. Manual 6.5.27) |
| CBNO08xRptUncalGyro | Class to represent uncalibrated gyro reports. (See Ref. Manual 6.5.14) |
| CBNO08xRptUncalMagnetometer | Class to represent uncalibrated magnetometer reports. (See Ref. Manual 6.5.17) |
| CBNO08xSH2HAL | Fully static class containing callback implementations for sh2 HAL lib |
| CBNO08xTestHelper | BNO08x unit test helper class |
| CBNO08xTestSuite | BNO08x unit test launch point class |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08x, including all inherited members.
+|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
BNO08x IMU driver class. + More...
+ +#include <BNO08x.hpp>

+Classes | |
| struct | bno08x_reports_t |
| Contains report implementations. More... | |
+Public Types | |
| typedef struct BNO08x::bno08x_reports_t | bno08x_reports_t |
| Contains report implementations. | |
+Public Member Functions | |
| BNO08x (bno08x_config_t imu_config=bno08x_config_t()) | |
| BNO08x imu constructor. | |
| ~BNO08x () | |
| BNO08x imu deconstructor. | |
| bool | initialize () |
| Initializes BNO08x sensor. | |
| bool | hard_reset () |
| Hard resets BNO08x device. | |
| bool | soft_reset () |
| Soft resets BNO08x device by sending RESET (1) command on "device" channel. | |
| BNO08xResetReason | get_reset_reason () |
| Returns reason for previous reset via product ID report. | |
| bool | on () |
| Places BNO08x device in on state by sending ON (2) command on "device" channel. | |
| bool | sleep () |
| Places BNO08x device in sleep state by sending SLEEP (3) command on "device" channel. | |
| bool | calibration_start (uint32_t period_us) |
| Starts simple calibration, see ref. manual 6.4.10.1. | |
| bool | calibration_end (sh2_CalStatus_t &status) |
| Ends turn-table calibration, see ref. manual 6.4.10.2. | |
| bool | dynamic_calibration_enable (BNO08xCalSel sensor) |
| Enables dynamic/motion engine calibration for specified sensor(s), see ref. manual 6.4.6.1. | |
| bool | dynamic_calibration_disable (BNO08xCalSel sensor) |
| Disables dynamic/motion engine calibration for specified sensor(s), see ref. manual 6.4.6.1. | |
| bool | dynamic_calibration_autosave_enable () |
| Enables the automatic saving of dynamic/ME calibration data to BNO08x internal flash See ref manual 6.4.7.1. | |
| bool | dynamic_calibration_autosave_disable () |
| Disables the automatic saving of dynamic/ME calibration data to BNO08x internal flash See ref manual 6.4.7.1. | |
| bool | save_dynamic_calibration () |
| Saves dynamic/motion engine calibration data to BNO08x internal flash immediately. See ref manual 6.4.5.1. | |
| bool | clear_dynamic_calibration () |
| Clears dynamic/motion engine calibration data and resets BNO08x device. See ref manual 6.4.9.1. | |
| bool | get_frs (uint16_t frs_ID, uint32_t(&data)[16], uint16_t &rx_data_sz) |
| Retrieves a record from flash record system (if your goal is to retrieve meta data use the BNO08xRpt:get_meta_data() method instead) | |
| sh2_ProductIds_t | get_product_IDs () |
| Returns product ID info sent by IMU at initialization. | |
| bool | data_available () |
| Polls for new data/report to become available. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a report is received. | |
| bool | register_cb (std::function< void(uint8_t report_ID)> cb_fxn) |
| Registers a callback to execute when new data from a report is received, overloaded with callback param for most recent report ID. | |
| void | print_product_ids () |
| Prints product IDs received at initialization. | |
+Static Public Member Functions | |
| static const char * | activity_to_str (BNO08xActivity activity) |
| Converts a BNO08xActivity enum to string. | |
| static const char * | stability_to_str (BNO08xStability stability) |
| Converts a BNO08xStability enum to string. | |
| static const char * | accuracy_to_str (BNO08xAccuracy accuracy) |
+Public Attributes | |
| bno08x_reports_t | rpt |
+Private Member Functions | |
| void | data_proc_task () |
| Task responsible for parsing/handling sensor events sent by SH2 HAL and updating data that is returned to user. | |
| void | sh2_HAL_service_task () |
| Task responsible for calling shtp_service() when HINT is asserted to dispatch any sh2 HAL lib callbacks. | |
| void | cb_task () |
| Task responsible for executing callbacks registered with register_cb(). | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | handle_sensor_report (sh2_SensorValue_t *sensor_val) |
| Parses receieved report and updates uer data with it. | |
| void | handle_cb (uint8_t rpt_ID, BNO08xCbGeneric *cb_entry) |
| Determines the flavor of a passed callback and executes it appropriately. | |
| esp_err_t | init_config_args () |
| Initializes required esp-idf SPI data structures with values from user passed bno08x_config_t struct. | |
| esp_err_t | init_gpio () |
| Initializes required gpio. | |
| esp_err_t | init_gpio_inputs () |
| Initializes required gpio inputs. | |
| esp_err_t | init_gpio_outputs () |
| Initializes required gpio outputs. | |
| esp_err_t | init_hint_isr () |
| Initializes host interrupt ISR. | |
| esp_err_t | init_spi () |
| Initializes SPI. | |
| esp_err_t | init_tasks () |
| Initializes data_proc_task. | |
| esp_err_t | init_sh2_HAL () |
| Initializes sh2 HAL. | |
| esp_err_t | deinit_gpio () |
| Deinitializes GPIO, called from deconstructor. | |
| esp_err_t | deinit_gpio_inputs () |
| Deinitializes GPIO inputs, called from deconstructor. | |
| esp_err_t | deinit_gpio_outputs () |
| Deinitializes GPIO outputs, called from deconstructor. | |
| esp_err_t | deinit_hint_isr () |
| Deinitializes host interrupt ISR, called from deconstructor. | |
| esp_err_t | deinit_spi () |
| Deinitializes SPI. | |
| esp_err_t | deinit_tasks () |
| Deinitializes tasks used by BNO08x driver. | |
| esp_err_t | deinit_sh2_HAL () |
| Deinitializes sh2 HAL. | |
| esp_err_t | wait_for_hint () |
| Waits for HINT pin assertion or HOST_INT_TIMEOUT_DEFAULT_MS to elapse. | |
| esp_err_t | wait_for_reset () |
| Waits for SH2 HAL lib to detect reset or HOST_INT_TIMEOUT_DEFAULT_MS to elapse. | |
| void | toggle_reset () |
| Toggles reset gpio pin for hard reset of BNO08x device. | |
| esp_err_t | re_enable_reports () |
| Re-enables all reports enabled by user (called when BNO08x reset is detected by sh2 HAL lib). | |
+Static Private Member Functions | |
| static void | data_proc_task_trampoline (void *arg) |
| Static function used to launch data processing task. | |
| static void | sh2_HAL_service_task_trampoline (void *arg) |
| Static function used to launch sh2 HAL service task. | |
| static void | cb_task_trampoline (void *arg) |
| Static function used to launch cb_task task. | |
| static void IRAM_ATTR | hint_handler (void *arg) |
| HINT interrupt service routine, handles falling edge of BNO08x HINT pin. | |
+Private Attributes | |
| TaskHandle_t | data_proc_task_hdl |
| data_proc_task() task handle | |
| TaskHandle_t | sh2_HAL_service_task_hdl |
| sh2_HAL_service_task() task handle | |
| TaskHandle_t | cb_task_hdl |
| sh2_HAL_service_task() task handle | |
| SemaphoreHandle_t | sem_kill_tasks |
| Counting Semaphore to count amount of killed tasks. | |
| sh2_Hal_t | sh2_HAL |
| sh2 hardware abstraction layer struct for use with sh2 HAL lib. | |
| QueueHandle_t | queue_rx_sensor_event |
| Queue to send sensor events from sh2 HAL sensor event callback (BNO08xSH2HAL::sensor_event_cb()) to data_proc_task() | |
| QueueHandle_t | queue_cb_report_id |
| Queue to send report ID of most recent report to cb_task() | |
| bno08x_config_t | imu_config {} |
| IMU configuration settings. | |
| spi_bus_config_t | bus_config {} |
| SPI bus GPIO configuration settings. | |
| spi_device_interface_config_t | imu_spi_config {} |
| SPI slave device settings. | |
| spi_device_handle_t | spi_hdl {} |
| SPI device handle. | |
| spi_transaction_t | spi_transaction {} |
| SPI transaction handle. | |
| BNO08xPrivateTypes::bno08x_init_status_t | init_status |
| Initialization status of various functionality, used by deconstructor during cleanup, set during initialization. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t | sync_ctx |
| Holds context used to synchronize tasks and callback execution. | |
| sh2_ProductIds_t | product_IDs |
| Product ID info returned IMU at initialization, can be viewed with print_product_ids() | |
| etl::map< uint8_t, BNO08xRpt *, TOTAL_RPT_COUNT, etl::less< uint8_t > > | usr_reports |
+Static Private Attributes | |
| static const constexpr configSTACK_DEPTH_TYPE | DATA_PROC_TASK_SZ |
| Size of data_proc_task() stack in bytes. | |
| static const constexpr configSTACK_DEPTH_TYPE | SH2_HAL_SERVICE_TASK_SZ |
| Size of sh2_HAL_service_task() stack in bytes. | |
| static const constexpr configSTACK_DEPTH_TYPE | CB_TASK_SZ |
| Size of sh2_HAL_service_task() stack in bytes. | |
| static const constexpr uint16_t | RX_DATA_LENGTH = 300U |
| length buffer containing data received over spi | |
| static const constexpr TickType_t | HOST_INT_TIMEOUT_DEFAULT_MS |
| Max wait between HINT being asserted by BNO08x before transaction is considered failed (in miliseconds). | |
| static const constexpr TickType_t | DATA_AVAILABLE_TIMEOUT_MS |
| Max wait between data_available() being called and no new data/report being detected. | |
| static const constexpr TickType_t | HARD_RESET_DELAY_MS |
| How long RST pin is held low during hard reset (min 10ns according to datasheet, but should be longer for stable operation) | |
| static const constexpr uint32_t | SCLK_MAX_SPEED = 3000000UL |
| Max SPI SCLK speed BNO08x is capable of. | |
| static const constexpr char * | TAG = "BNO08x" |
| Class tag used for serial print statements. | |
+Friends | |
| class | BNO08xSH2HAL |
| class | BNO08xTestHelper |
BNO08x IMU driver class.
+| typedef struct BNO08x::bno08x_reports_t BNO08x::bno08x_reports_t | +
Contains report implementations.
+ +| BNO08x::BNO08x | +( | +bno08x_config_t | imu_config = bno08x_config_t() | ) | ++ |
BNO08x imu constructor.
+Construct a BNO08x object for managing a BNO08x sensor.
+| imu_config | Configuration settings (optional), default settings can be seen in bno08x_config_t |
| BNO08x::~BNO08x | +( | +) | ++ |
+
|
+ +static | +

+
|
+ +static | +
Converts a BNO08xActivity enum to string.
+| bool BNO08x::calibration_end | +( | +sh2_CalStatus_t & | status | ) | ++ |
Ends turn-table calibration, see ref. manual 6.4.10.2.
+| status | Returned status bits indicating result of turntable calibration. |

| bool BNO08x::calibration_start | +( | +uint32_t | period_us | ) | ++ |
Starts simple calibration, see ref. manual 6.4.10.1.
+| period_us | This interval should be set to whatever rate the sensor hub is expected to run at after calibration. |
After the calibration is started, the IMU should be rotated 180 degrees. After the IMU has been rotated call calibration_end(). See ref. manual 6.4.10 for more detailed instructions.
+
+
|
+ +private | +
Task responsible for executing callbacks registered with register_cb().
+

+
|
+ +staticprivate | +
Static function used to launch cb_task task.
+Used such that cb_task() can be non-static class member.
+| arg | void pointer to BNO08x imu object |


| bool BNO08x::clear_dynamic_calibration | +( | +) | ++ |
Clears dynamic/motion engine calibration data and resets BNO08x device. See ref manual 6.4.9.1.
+

| bool BNO08x::data_available | +( | +) | ++ |
Polls for new data/report to become available.
+
+
|
+ +private | +
Task responsible for parsing/handling sensor events sent by SH2 HAL and updating data that is returned to user.
+

+
|
+ +staticprivate | +
Static function used to launch data processing task.
+Used such that data_proc_task() can be non-static class member.
+| arg | void pointer to BNO08x imu object |


+
|
+ +private | +
Deinitializes GPIO, called from deconstructor.
+

+
|
+ +private | +
Deinitializes GPIO inputs, called from deconstructor.
+
+
|
+ +private | +
Deinitializes GPIO outputs, called from deconstructor.
+
+
|
+ +private | +
Deinitializes host interrupt ISR, called from deconstructor.
+
+
|
+ +private | +
Deinitializes sh2 HAL.
+
+
|
+ +private | +
Deinitializes SPI.
+
+
|
+ +private | +
Deinitializes tasks used by BNO08x driver.
+
| bool BNO08x::dynamic_calibration_autosave_disable | +( | +) | ++ |
Disables the automatic saving of dynamic/ME calibration data to BNO08x internal flash See ref manual 6.4.7.1.
+

| bool BNO08x::dynamic_calibration_autosave_enable | +( | +) | ++ |
Enables the automatic saving of dynamic/ME calibration data to BNO08x internal flash See ref manual 6.4.7.1.
+

| bool BNO08x::dynamic_calibration_disable | +( | +BNO08xCalSel | sensor | ) | ++ |
Disables dynamic/motion engine calibration for specified sensor(s), see ref. manual 6.4.6.1.
+| sensor | The sensor(s) to disable dynamic/ME calibration for. |


| bool BNO08x::dynamic_calibration_enable | +( | +BNO08xCalSel | sensor | ) | ++ |
Enables dynamic/motion engine calibration for specified sensor(s), see ref. manual 6.4.6.1.
+| sensor | The sensor(s) to enable dynamic/ME calibration for. |


| bool BNO08x::get_frs | +( | +uint16_t | frs_ID, | +
| + | + | uint32_t(&) | data[16], | +
| + | + | uint16_t & | rx_data_sz ) | +
Retrieves a record from flash record system (if your goal is to retrieve meta data use the BNO08xRpt:get_meta_data() method instead)
+For more details on returned and data and frs_ID see ref. manual 6.3.7 & 4.3
+| frs_ID | The ID of the desired record to retrieve from flash. |
| data | Buffer of 16 uint32_t to store retrieved data. |
| rx_data_sz | Reference to store number of 32 bit words retrieved from flash. |

| sh2_ProductIds_t BNO08x::get_product_IDs | +( | +) | ++ |
Returns product ID info sent by IMU at initialization.
+| BNO08xResetReason BNO08x::get_reset_reason | +( | +) | ++ |
Returns reason for previous reset via product ID report.
+

+
|
+ +private | +
Determines the flavor of a passed callback and executes it appropriately.
+

+
|
+ +private | +
Parses receieved report and updates uer data with it.
+
| bool BNO08x::hard_reset | +( | +) | ++ |
Hard resets BNO08x device.
+

+
|
+ +staticprivate | +
+
|
+ +private | +
Initializes required esp-idf SPI data structures with values from user passed bno08x_config_t struct.
+
+
|
+ +private | +
Initializes required gpio.
+

+
|
+ +private | +
Initializes required gpio inputs.
+
+
|
+ +private | +
Initializes required gpio outputs.
+
+
|
+ +private | +
Initializes host interrupt ISR.
+

+
|
+ +private | +
Initializes sh2 HAL.
+

+
|
+ +private | +
Initializes SPI.
+
+
|
+ +private | +
Initializes data_proc_task.
+

| bool BNO08x::initialize | +( | +) | ++ |
Initializes BNO08x sensor.
+Resets sensor and goes through initialization process. Configures GPIO, required ISRs, and launches two tasks, one to manage SPI transactions, another to process any received data.
+

+
|
+ +private | +
Locks sh2 HAL lib to only allow the calling task to call its APIs.
+
+
|
+ +private | +
Locks locks user data to only allow the calling task to read/modify it.
+| bool BNO08x::on | +( | +) | ++ |
Places BNO08x device in on state by sending ON (2) command on "device" channel.
+

| void BNO08x::print_product_ids | +( | +) | ++ |
Prints product IDs received at initialization.
+
+
|
+ +private | +
Re-enables all reports enabled by user (called when BNO08x reset is detected by sh2 HAL lib).
+
| bool BNO08x::register_cb | +( | +std::function< void(uint8_t report_ID)> | cb_fxn | ) | ++ |
Registers a callback to execute when new data from a report is received, overloaded with callback param for most recent report ID.
+| cb_fxn | Pointer to the call-back function should be of void return type with single input param of uint8_t for most recent report ID. |
| bool BNO08x::register_cb | +( | +std::function< void(void)> | cb_fxn | ) | ++ |
Registers a callback to execute when new data from a report is received.
+| cb_fxn | Pointer to the call-back function should be of void return type void input param. |

| bool BNO08x::save_dynamic_calibration | +( | +) | ++ |
Saves dynamic/motion engine calibration data to BNO08x internal flash immediately. See ref manual 6.4.5.1.
+

+
|
+ +private | +
Task responsible for calling shtp_service() when HINT is asserted to dispatch any sh2 HAL lib callbacks.
+

+
|
+ +staticprivate | +
Static function used to launch sh2 HAL service task.
+Used such that sh2_HAL_service_task() can be non-static class member.
+| arg | void pointer to BNO08x imu object |


| bool BNO08x::sleep | +( | +) | ++ |
Places BNO08x device in sleep state by sending SLEEP (3) command on "device" channel.
+

| bool BNO08x::soft_reset | +( | +) | ++ |
Soft resets BNO08x device by sending RESET (1) command on "device" channel.
+

+
|
+ +static | +
Converts a BNO08xStability enum to string.
+
+
|
+ +private | +
Toggles reset gpio pin for hard reset of BNO08x device.
+
+
|
+ +private | +
Unlocks sh2 HAL lib to allow other tasks to call its APIs.
+
+
|
+ +private | +
Unlocks user data to allow other tasks to read/modify it.
+
+
|
+ +private | +
Waits for HINT pin assertion or HOST_INT_TIMEOUT_DEFAULT_MS to elapse.
+
+
|
+ +private | +
Waits for SH2 HAL lib to detect reset or HOST_INT_TIMEOUT_DEFAULT_MS to elapse.
+
+
|
+ +friend | +
+
|
+ +friend | +
+
|
+ +private | +
SPI bus GPIO configuration settings.
+ +
+
|
+ +private | +
sh2_HAL_service_task() task handle
+ +
+
|
+ +staticconstexprprivate | +
Size of sh2_HAL_service_task() stack in bytes.
+ +
+
|
+ +staticconstexprprivate | +
Max wait between data_available() being called and no new data/report being detected.
+ +
+
|
+ +private | +
data_proc_task() task handle
+ +
+
|
+ +staticconstexprprivate | +
Size of data_proc_task() stack in bytes.
+ +
+
|
+ +staticconstexprprivate | +
How long RST pin is held low during hard reset (min 10ns according to datasheet, but should be longer for stable operation)
+ +
+
|
+ +staticconstexprprivate | +
Max wait between HINT being asserted by BNO08x before transaction is considered failed (in miliseconds).
+ +
+
|
+ +private | +
IMU configuration settings.
+ +
+
|
+ +private | +
SPI slave device settings.
+ +
+
|
+ +private | +
Initialization status of various functionality, used by deconstructor during cleanup, set during initialization.
+ +
+
|
+ +private | +
Product ID info returned IMU at initialization, can be viewed with print_product_ids()
+ +
+
|
+ +private | +
Queue to send report ID of most recent report to cb_task()
+ +
+
|
+ +private | +
Queue to send sensor events from sh2 HAL sensor event callback (BNO08xSH2HAL::sensor_event_cb()) to data_proc_task()
+ +| bno08x_reports_t BNO08x::rpt | +
+
|
+ +staticconstexprprivate | +
length buffer containing data received over spi
+ +
+
|
+ +staticconstexprprivate | +
Max SPI SCLK speed BNO08x is capable of.
+ +
+
|
+ +private | +
Counting Semaphore to count amount of killed tasks.
+ +
+
|
+ +private | +
sh2 hardware abstraction layer struct for use with sh2 HAL lib.
+ +
+
|
+ +private | +
sh2_HAL_service_task() task handle
+ +
+
|
+ +staticconstexprprivate | +
Size of sh2_HAL_service_task() stack in bytes.
+ +
+
|
+ +private | +
SPI device handle.
+ +
+
|
+ +private | +
SPI transaction handle.
+ +
+
|
+ +private | +
Holds context used to synchronize tasks and callback execution.
+ +
+
|
+ +staticconstexprprivate | +
Class tag used for serial print statements.
+ +
+
|
+ +private | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xCbGeneric, including all inherited members.
+| BNO08xCbGeneric(uint8_t rpt_ID) | BNO08xCbGeneric | inlineprotected |
| invoke(uint8_t rpt_ID)=0 | BNO08xCbGeneric | pure virtual |
| rpt_ID | BNO08xCbGeneric | |
| ~BNO08xCbGeneric()=default | BNO08xCbGeneric | virtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Parent class to represent callback functions as generic type such that all flavors can be invoked by single type. + More...
+ +#include <BNO08xCbGeneric.hpp>

+Public Member Functions | |
| virtual void | invoke (uint8_t rpt_ID)=0 |
| virtual | ~BNO08xCbGeneric ()=default |
+Public Attributes | |
| uint8_t | rpt_ID |
+Protected Member Functions | |
| BNO08xCbGeneric (uint8_t rpt_ID) | |
Parent class to represent callback functions as generic type such that all flavors can be invoked by single type.
+
+
|
+ +virtualdefault | +
+
|
+ +inlineprotected | +
+
|
+ +pure virtual | +
Implemented in BNO08xCbParamRptID, and BNO08xCbParamVoid.
+
| uint8_t BNO08xCbGeneric::rpt_ID | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xCbParamRptID, including all inherited members.
+| BNO08xCbGeneric(uint8_t rpt_ID) | BNO08xCbGeneric | inlineprotected |
| BNO08xCbParamRptID(std::function< void(uint8_t)> cb_fxn, uint8_t rpt_ID) | BNO08xCbParamRptID | inline |
| cb_fxn | BNO08xCbParamRptID | private |
| invoke(uint8_t rpt_ID) override | BNO08xCbParamRptID | inlinevirtual |
| rpt_ID | BNO08xCbGeneric | |
| ~BNO08xCbGeneric()=default | BNO08xCbGeneric | virtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to hold callback functions which are passed report ID as input parameter. + More...
+ +#include <BNO08xCbParamRptID.hpp>


+Public Member Functions | |
| BNO08xCbParamRptID (std::function< void(uint8_t)> cb_fxn, uint8_t rpt_ID) | |
| void | invoke (uint8_t rpt_ID) override |
| Invokes contained callback function. | |
Public Member Functions inherited from BNO08xCbGeneric | |
| virtual | ~BNO08xCbGeneric ()=default |
+Private Attributes | |
| std::function< void(uint8_t)> | cb_fxn |
| Wrapped callback function passed at register_cb(). | |
+Additional Inherited Members | |
Public Attributes inherited from BNO08xCbGeneric | |
| uint8_t | rpt_ID |
Protected Member Functions inherited from BNO08xCbGeneric | |
| BNO08xCbGeneric (uint8_t rpt_ID) | |
Class to hold callback functions which are passed report ID as input parameter.
+Class to hold callback functions with void input parameters.
+
+
|
+ +inline | +
+
|
+ +inlineoverridevirtual | +
Invokes contained callback function.
+| rpt_ID | Report ID to be passed to contained callback. |
Implements BNO08xCbGeneric.
+ +
+
|
+ +private | +
Wrapped callback function passed at register_cb().
+ +|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xCbParamVoid, including all inherited members.
+| BNO08xCbGeneric(uint8_t rpt_ID) | BNO08xCbGeneric | inlineprotected |
| BNO08xCbParamVoid(std::function< void(void)> cb_fxn, uint8_t rpt_ID) | BNO08xCbParamVoid | inline |
| cb_fxn | BNO08xCbParamVoid | private |
| invoke(uint8_t rpt_ID) override | BNO08xCbParamVoid | inlinevirtual |
| rpt_ID | BNO08xCbGeneric | |
| ~BNO08xCbGeneric()=default | BNO08xCbGeneric | virtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
#include <BNO08xCbParamVoid.hpp>


+Public Member Functions | |
| BNO08xCbParamVoid (std::function< void(void)> cb_fxn, uint8_t rpt_ID) | |
| void | invoke (uint8_t rpt_ID) override |
| Invokes contained callback function. | |
Public Member Functions inherited from BNO08xCbGeneric | |
| virtual | ~BNO08xCbGeneric ()=default |
+Private Attributes | |
| std::function< void(void)> | cb_fxn |
| Wrapped callback function passed at register_cb(). | |
+Additional Inherited Members | |
Public Attributes inherited from BNO08xCbGeneric | |
| uint8_t | rpt_ID |
Protected Member Functions inherited from BNO08xCbGeneric | |
| BNO08xCbGeneric (uint8_t rpt_ID) | |
+
|
+ +inline | +
+
|
+ +inlineoverridevirtual | +
Invokes contained callback function.
+| rpt_ID | n/a, not used, kept to maintain same prototype as BNO08xCbParamRptID::invoke() |
Implements BNO08xCbGeneric.
+ +
+
|
+ +private | +
Wrapped callback function passed at register_cb().
+ +|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRpt, including all inherited members.
+| BNO08x | BNO08xRpt | friend |
| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRpt | protectedstatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val)=0 | BNO08xRpt | protectedpure virtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent and manage reports returned from BNO08x. + More...
+ +#include <BNO08xRpt.hpp>


+Public Member Functions | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Protected Member Functions | |
| virtual void | update_data (sh2_SensorValue_t *sensor_val)=0 |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
+Protected Attributes | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
+Static Protected Attributes | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
+Friends | |
| class | BNO08x |
Class to represent and manage reports returned from BNO08x.
+
+
|
+ +inlineprotected | +
BNO08xRpt report constructor.
+Construct a BNO08xRpt object for managing a BNO08x sensor report.
+| imu | Pointer to BNO08x imu object. |
| report_ID | Report ID, ex. SH2_ACCELERATION. |
| rpt_bit | Respective enable bit for report in BNO08x::evt_grp_report_en. |
| period_us | The period/interval of the report in microseconds. |
| bool BNO08xRpt::clear_sample_counts | +( | +) | ++ |
Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1)
+
| bool BNO08xRpt::disable | +( | +sh2_SensorConfig_t | sensor_cfg = BNO08xPrivateTypes::default_sensor_cfg | ) | ++ |
Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it.
+| sensor_ID | The ID of the sensor for the respective report to be disabled. |
| sensor_cfg | Sensor special configuration. |


| bool BNO08xRpt::enable | +( | +uint32_t | time_between_reports, | +
| + | + | sh2_SensorConfig_t | sensor_cfg = BNO08xPrivateTypes::default_sensor_cfg ) | +
Enables a sensor report such that the BNO08x begins sending it.
+| report_period_us | The period/interval of the report in microseconds. |
| sensor_cfg | Sensor special configuration (optional, see BNO08xPrivateTypes::default_sensor_cfg for defaults). |


| bool BNO08xRpt::flush | +( | +) | ++ |
Flush all buffered reports for this sensor/report module.
+
| bool BNO08xRpt::get_meta_data | +( | +bno08x_meta_data_t & | meta_data | ) | ++ |
Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system).
+Can be used to retrieve the minimum period, maximum period, actual Q points, resolution, and other info for a given sensor.
+

| bool BNO08xRpt::get_sample_counts | +( | +bno08x_sample_counts_t & | sample_counts | ) | ++ |
Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1)
+| Struct | to store requested data. |


| bool BNO08xRpt::has_new_data | +( | +) | ++ |
Checks if a new report has been received since the last time this function was called.
+
+
|
+ +protected | +
Locks sh2 HAL lib to only allow the calling task to call its APIs.
+
+
|
+ +protected | +
Locks locks user data to only allow the calling task to read/modify it.
+
| bool BNO08xRpt::register_cb | +( | +std::function< void(void)> | cb_fxn | ) | ++ |
Registers a callback to execute when new data from a specific report is received.
+| cb_fxn | Pointer to the call-back function should be of void return type void input param. |

+
|
+ +protected | +
Signals to BNO08x::data_available() that a new report has arrived.
+
+
|
+ +protected | +
Unlocks sh2 HAL lib to allow other tasks to call its APIs.
+
+
|
+ +protected | +
Unlocks user data to allow other tasks to read/modify it.
+
+
|
+ +protectedpure virtual | +
Implemented in BNO08xRptAcceleration, BNO08xRptActivityClassifier, BNO08xRptARVRStabilizedGameRV, BNO08xRptARVRStabilizedRV, BNO08xRptCalGyro, BNO08xRptCalMagnetometer, BNO08xRptGameRV, BNO08xRptGravity, BNO08xRptIGyroRV, BNO08xRptLinearAcceleration, BNO08xRptRawMEMSAccelerometer, BNO08xRptRawMEMSGyro, BNO08xRptRawMEMSMagnetometer, BNO08xRptRV, BNO08xRptRVGeomag, BNO08xRptShakeDetector, BNO08xRptStabilityClassifier, BNO08xRptStepCounter, BNO08xRptTapDetector, BNO08xRptUncalGyro, and BNO08xRptUncalMagnetometer.
+ +
+
|
+ +friend | +
+
|
+ +protected | +
Report ID, ex. SH2_ACCELERATION.
+ +
+
|
+ +protected | +
The period/interval of the report in microseconds.
+ +
+
|
+ +staticconstexprprotected | +
Constant for radian to degree conversions, sed in quaternion to euler function conversions.
+ +
+
|
+ +protected | +
Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data.
+ +
+
|
+ +protected | +
+
|
+ +staticconstexprprotected | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptARVRStabilizedGameRV, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptARVRStabilizedGameRV(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptARVRStabilizedGameRV | inline |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptARVRStabilizedGameRV | privatestatic |
| tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptARVRStabilizedGameRV | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.43) + More...
+ +#include <BNO08xRptARVRStabilizedGameRV.hpp>


+Public Member Functions | |
| BNO08xRptARVRStabilizedGameRV (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates ARVR stabilized game rotation vector data from decoded sensor event. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptARVRStabilizedGameRV" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.43)
+
+
|
+ +inline | +
+
|
+ +overrideprivatevirtual | +
Updates ARVR stabilized game rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptARVRStabilizedRV, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptARVRStabilizedRV(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptARVRStabilizedRV | inline |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptARVRStabilizedRV | privatestatic |
| tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptARVRStabilizedRV | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.42) + More...
+ +#include <BNO08xRptARVRStabilizedRV.hpp>


+Public Member Functions | |
| BNO08xRptARVRStabilizedRV (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates ARVR stabilized rotation vector data from decoded sensor event. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptARVRStabilizedRV" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.42)
+
+
|
+ +inline | +
+
|
+ +overrideprivatevirtual | +
Updates ARVR stabilized rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptAcceleration, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptAcceleration(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptAcceleration | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptAcceleration | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptAcceleration | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptAcceleration | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptAcceleration | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent accelerometer reports. (See Ref. Manual 6.5.9) + More...
+ +#include <BNO08xRptAcceleration.hpp>


+Public Member Functions | |
| BNO08xRptAcceleration (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_accel_t | get () |
| Grabs most recent acceleration data (including gravity), units are in m/s^2. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates accelerometer data from decoded sensor event. | |
+Private Attributes | |
| bno08x_accel_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptAcceleration" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent accelerometer reports. (See Ref. Manual 6.5.9)
+
+
|
+ +inline | +
| bno08x_accel_t BNO08xRptAcceleration::get | +( | +) | ++ |
Grabs most recent acceleration data (including gravity), units are in m/s^2.
+

+
|
+ +overrideprivatevirtual | +
Updates accelerometer data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptActivityClassifier, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptActivityClassifier(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptActivityClassifier | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptActivityClassifier | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, BNO08xActivityEnable activities_to_enable, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRptActivityClassifier | |
| BNO08xRpt::enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptActivityClassifier | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_most_likely_activity() | BNO08xRptActivityClassifier | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptActivityClassifier | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptActivityClassifier | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent activity classifier reports. (See Ref. Manual 6.5.36) + More...
+ +#include <BNO08xRptActivityClassifier.hpp>


+Public Member Functions | |
| BNO08xRptActivityClassifier (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | enable (uint32_t time_between_reports, BNO08xActivityEnable activities_to_enable, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables activity classifier reports such that the BNO08x begins sending them. | |
| bno08x_activity_classifier_t | get () |
| Grabs most recent activity classifier data. | |
| BNO08xActivity | get_most_likely_activity () |
| Grabs most the most likely activity from most recent activity classifier data. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates activity classifier data from decoded sensor event. | |
+Private Attributes | |
| bno08x_activity_classifier_t | data |
| Most recent report data, doesn't account for step rollover. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptActivityClassifier" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent activity classifier reports. (See Ref. Manual 6.5.36)
+
+
|
+ +inline | +
| bool BNO08xRptActivityClassifier::enable | +( | +uint32_t | time_between_reports, | +
| + | + | BNO08xActivityEnable | activities_to_enable, | +
| + | + | sh2_SensorConfig_t | sensor_cfg = BNO08xPrivateTypes::default_sensor_cfg ) | +
Enables activity classifier reports such that the BNO08x begins sending them.
+| time_between_reports | The period/interval of the report in microseconds. |
| activities_to_enable | Which activities to enable. |
| sensor_cfg | Sensor special configuration (optional, see BNO08xPrivateTypes::default_sensor_cfg for defaults). |

| bno08x_activity_classifier_t BNO08xRptActivityClassifier::get | +( | +) | ++ |
Grabs most recent activity classifier data.
+
| BNO08xActivity BNO08xRptActivityClassifier::get_most_likely_activity | +( | +) | ++ |
Grabs most the most likely activity from most recent activity classifier data.
+
+
|
+ +overrideprivatevirtual | +
Updates activity classifier data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
Most recent report data, doesn't account for step rollover.
+ +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptCalGyro, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptCalGyro(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptCalGyro | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptCalGyro | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptCalGyro | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptCalGyro | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptCalGyro | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent calibrated gyro reports. (See Ref. Manual 6.5.13) + More...
+ +#include <BNO08xRptCalGyro.hpp>


+Public Member Functions | |
| BNO08xRptCalGyro (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_gyro_t | get () |
| Grabs most recent gyroscope data (velocity), units are in rad/s. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates calibrated gyro data from decoded sensor event. | |
+Private Attributes | |
| bno08x_gyro_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptCalGyro" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent calibrated gyro reports. (See Ref. Manual 6.5.13)
+
+
|
+ +inline | +
| bno08x_gyro_t BNO08xRptCalGyro::get | +( | +) | ++ |
Grabs most recent gyroscope data (velocity), units are in rad/s.
+

+
|
+ +overrideprivatevirtual | +
Updates calibrated gyro data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptCalMagnetometer, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptCalMagnetometer(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptCalMagnetometer | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptCalMagnetometer | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptCalMagnetometer | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptCalMagnetometer | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptCalMagnetometer | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent calibrated magnetometer reports. (See Ref. Manual 6.5.16) + More...
+ +#include <BNO08xRptCalMagnetometer.hpp>


+Public Member Functions | |
| BNO08xRptCalMagnetometer (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_magf_t | get () |
| Grabs most recent calibrated magnetometer data, units are in uTesla. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates calibrated magnetometer data from decoded sensor event. | |
+Private Attributes | |
| bno08x_magf_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptCalMagnetometer" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent calibrated magnetometer reports. (See Ref. Manual 6.5.16)
+
+
|
+ +inline | +
| bno08x_magf_t BNO08xRptCalMagnetometer::get | +( | +) | ++ |
Grabs most recent calibrated magnetometer data, units are in uTesla.
+

+
|
+ +overrideprivatevirtual | +
Updates calibrated magnetometer data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptGameRV, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptGameRV(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptGameRV | inline |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptGameRV | privatestatic |
| tare(bool x=true, bool y=true, bool z=true) | BNO08xRptGameRV | |
| BNO08xRptRVGeneric::tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| tare_clear() | BNO08xRptGameRV | |
| tare_persist() | BNO08xRptGameRV | |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptGameRV | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent game rotation vector reports. (See Ref. Manual 6.5.19) + More...
+ +#include <BNO08xRptGameRV.hpp>


+Public Member Functions | |
| BNO08xRptGameRV (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x=true, bool y=true, bool z=true) |
| Tares game rotation vector axis. | |
| bool | tare_persist () |
| Saves most recent tare operation to BNO08x internal flash, such that it persists on reset. | |
| void | tare_clear () |
| Clears most recent tare operation. | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates game rotation vector data from decoded sensor event. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptGameRV" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent game rotation vector reports. (See Ref. Manual 6.5.19)
+
+
|
+ +inline | +
| bool BNO08xRptGameRV::tare | +( | +bool | x = true, | +
| + | + | bool | y = true, | +
| + | + | bool | z = true ) | +
Tares game rotation vector axis.
+| x | If true tare x axis (optional, default true). |
| y | If true tare y axis (optional, default true). |
| z | If true tare z axis (optional, default true). |

| void BNO08xRptGameRV::tare_clear | +( | +) | ++ |
Clears most recent tare operation.
+
| bool BNO08xRptGameRV::tare_persist | +( | +) | ++ |
Saves most recent tare operation to BNO08x internal flash, such that it persists on reset.
+
+
|
+ +overrideprivatevirtual | +
Updates game rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptGravity, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptGravity(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptGravity | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptGravity | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptGravity | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptGravity | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptGravity | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent gravity reports. (See Ref. Manual 6.5.11) + More...
+ +#include <BNO08xRptGravity.hpp>


+Public Member Functions | |
| BNO08xRptGravity (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_accel_t | get () |
| Grabs most recent gravity data, units are in m/s^2. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates gravity data from decoded sensor event. | |
+Private Attributes | |
| bno08x_accel_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptGravity" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent gravity reports. (See Ref. Manual 6.5.11)
+
+
|
+ +inline | +
| bno08x_accel_t BNO08xRptGravity::get | +( | +) | ++ |
Grabs most recent gravity data, units are in m/s^2.
+

+
|
+ +overrideprivatevirtual | +
Updates gravity data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptIGyroRV, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptIGyroRV(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptIGyroRV | inline |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| data_vel | BNO08xRptIGyroRV | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get(bno08x_quat_t &quat, bno08x_ang_vel_t &vel) | BNO08xRptIGyroRV | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| get_vel() | BNO08xRptIGyroRV | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptIGyroRV | privatestatic |
| tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptIGyroRV | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent integrated gyro rotation vector reports. (See Ref. Manual 6.5.44) + More...
+ +#include <BNO08xRptIGyroRV.hpp>


+Public Member Functions | |
| BNO08xRptIGyroRV (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| void | get (bno08x_quat_t &quat, bno08x_ang_vel_t &vel) |
| Grabs most recent gyro integrated rotation vector data. | |
| bno08x_ang_vel_t | get_vel () |
| Grabs most recent gyro integrated rotation vector angular velocity data, units are in rad/s. | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates gyro integrated rotation vector data from decoded sensor event. | |
+Private Attributes | |
| bno08x_ang_vel_t | data_vel |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptIGyroRV" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent integrated gyro rotation vector reports. (See Ref. Manual 6.5.44)
+
+
|
+ +inline | +
| void BNO08xRptIGyroRV::get | +( | +bno08x_quat_t & | quat, | +
| + | + | bno08x_ang_vel_t & | vel ) | +
Grabs most recent gyro integrated rotation vector data.
+| quat | Struct to store requested unit quaternion data. |
| vel | Struct to store requested velocity data (units in rad/s). |

| bno08x_ang_vel_t BNO08xRptIGyroRV::get_vel | +( | +) | ++ |
Grabs most recent gyro integrated rotation vector angular velocity data, units are in rad/s.
+
+
|
+ +overrideprivatevirtual | +
Updates gyro integrated rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptLinearAcceleration, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptLinearAcceleration(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptLinearAcceleration | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptLinearAcceleration | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptLinearAcceleration | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptLinearAcceleration | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptLinearAcceleration | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10) + More...
+ +#include <BNO08xRptLinearAcceleration.hpp>


+Public Member Functions | |
| BNO08xRptLinearAcceleration (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_accel_t | get () |
| Grabs most recent acceleration data (including gravity), units are in m/s^2. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates accelerometer data from decoded sensor event. | |
+Private Attributes | |
| bno08x_accel_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptLinearAcceleration" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10)
+
+
|
+ +inline | +
| bno08x_accel_t BNO08xRptLinearAcceleration::get | +( | +) | ++ |
Grabs most recent acceleration data (including gravity), units are in m/s^2.
+

+
|
+ +overrideprivatevirtual | +
Updates accelerometer data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRV, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRV(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRV | inline |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRV | privatestatic |
| tare(bool x=true, bool y=true, bool z=true) | BNO08xRptRV | |
| BNO08xRptRVGeneric::tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| tare_clear() | BNO08xRptRV | |
| tare_persist() | BNO08xRptRV | |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptRV | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent rotation vector reports. (See Ref. Manual 6.5.18) + More...
+ +#include <BNO08xRptRV.hpp>


+Public Member Functions | |
| BNO08xRptRV (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x=true, bool y=true, bool z=true) |
| Tares rotation vector axis. | |
| bool | tare_persist () |
| Saves most recent tare operation to BNO08x internal flash, such that it persists on reset. | |
| void | tare_clear () |
| Clears most recent tare operation. | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates rotation vector data from decoded sensor event. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRV" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent rotation vector reports. (See Ref. Manual 6.5.18)
+
+
|
+ +inline | +
| bool BNO08xRptRV::tare | +( | +bool | x = true, | +
| + | + | bool | y = true, | +
| + | + | bool | z = true ) | +
Tares rotation vector axis.
+| x | If true tare x axis (optional, default true). |
| y | If true tare y axis (optional, default true). |
| z | If true tare z axis (optional, default true). |

| void BNO08xRptRV::tare_clear | +( | +) | ++ |
Clears most recent tare operation.
+
| bool BNO08xRptRV::tare_persist | +( | +) | ++ |
Saves most recent tare operation to BNO08x internal flash, such that it persists on reset.
+
+
|
+ +overrideprivatevirtual | +
Updates rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRVGeneric, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRVGeneric | protectedstatic |
| tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val)=0 | BNO08xRpt | protectedpure virtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent rotation vector reports. + More...
+ +#include <BNO08xRptRVGeneric.hpp>


+Public Member Functions | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Protected Member Functions | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| virtual void | update_data (sh2_SensorValue_t *sensor_val)=0 |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
+Protected Attributes | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
+Static Protected Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent rotation vector reports.
+
+
|
+ +inlineprotected | +
| bno08x_euler_angle_t BNO08xRptRVGeneric::get_euler | +( | +bool | in_degrees = true | ) | ++ |
Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads.
+| in_degrees | If true returned euler angle is in degrees, if false in radians |

| bno08x_quat_t BNO08xRptRVGeneric::get_quat | +( | +) | ++ |
Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f).
+The following RV reports have rad accuracy data:
+

+
|
+ +protected | +
Tares vector basis according to axis flags.
+| x | If true tare x axis. |
| y | If true tare y axis. |
| z | If true tare z axis. |
| basis | Rotation vector basis to undergo tare operation. |


+
|
+ +protected | +
+
|
+ +staticconstexprprotected | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRVGeomag, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRVGeneric(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeneric | inlineprotected |
| BNO08xRptRVGeomag(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRVGeomag | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRVGeneric | protected |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get_euler(bool in_degrees=true) | BNO08xRptRVGeneric | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_quat() | BNO08xRptRVGeneric | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRVGeomag | privatestatic |
| tare(bool x=true, bool y=true, bool z=true) | BNO08xRptRVGeomag | |
| BNO08xRptRVGeneric::tare(bool x, bool y, bool z, sh2_TareBasis_t basis) | BNO08xRptRVGeneric | protected |
| tare_clear() | BNO08xRptRVGeomag | |
| tare_persist() | BNO08xRptRVGeomag | |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptRVGeomag | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent geomagnetic rotation vector reports. (See Ref. Manual 6.5.20) + More...
+ +#include <BNO08xRptRVGeomag.hpp>


+Public Member Functions | |
| BNO08xRptRVGeomag (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x=true, bool y=true, bool z=true) |
| Tares geomagnetic rotation vector. | |
| bool | tare_persist () |
| Saves most recent tare operation to BNO08x internal flash, such that it persists on reset. | |
| void | tare_clear () |
| Clears most recent tare operation. | |
Public Member Functions inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | get_quat () |
| Grabs most recent rotation vector data in form of unit quaternion, rad accuracy units in radians (if available, else constant 0.0f). | |
| bno08x_euler_angle_t | get_euler (bool in_degrees=true) |
| Grabs most recent rotation vector data in form of an euler angle, units are in degrees or rads. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates geomagnetic rotation vector data from decoded sensor event. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRVGeomag" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRptRVGeneric | |
| BNO08xRptRVGeneric (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | tare (bool x, bool y, bool z, sh2_TareBasis_t basis) |
| Tares vector basis according to axis flags. | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRptRVGeneric | |
| bno08x_quat_t | data |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRptRVGeneric | |
| static const constexpr char * | TAG = "BNO08xRptRVGeneric" |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent geomagnetic rotation vector reports. (See Ref. Manual 6.5.20)
+
+
|
+ +inline | +
| bool BNO08xRptRVGeomag::tare | +( | +bool | x = true, | +
| + | + | bool | y = true, | +
| + | + | bool | z = true ) | +
Tares geomagnetic rotation vector.
+| x | If true tare x axis (optional, default true). |
| y | If true tare y axis (optional, default true). |
| z | If true tare z axis (optional, default true). |

| void BNO08xRptRVGeomag::tare_clear | +( | +) | ++ |
Clears most recent tare operation.
+
| bool BNO08xRptRVGeomag::tare_persist | +( | +) | ++ |
Saves most recent tare operation to BNO08x internal flash, such that it persists on reset.
+
+
|
+ +overrideprivatevirtual | +
Updates geomagnetic rotation vector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRawMEMSAccelerometer, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRawMEMSAccelerometer(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRawMEMSAccelerometer | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRawMEMSAccelerometer | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptRawMEMSAccelerometer | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRawMEMSAccelerometer | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptRawMEMSAccelerometer | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent raw accelerometer reports. (See Ref. Manual 6.5.8) + More...
+ +#include <BNO08xRptRawMEMSAccelerometer.hpp>


+Public Member Functions | |
| BNO08xRptRawMEMSAccelerometer (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_raw_accel_t | get () |
| Grabs most recent raw accelerometer data, units are ADC counts, time_stamp in microseconds. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates raw accelerometer data from decoded sensor event. | |
+Private Attributes | |
| bno08x_raw_accel_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRawMEMSAccelerometer" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent raw accelerometer reports. (See Ref. Manual 6.5.8)
+
+
|
+ +inline | +
| bno08x_raw_accel_t BNO08xRptRawMEMSAccelerometer::get | +( | +) | ++ |
Grabs most recent raw accelerometer data, units are ADC counts, time_stamp in microseconds.
+
+
|
+ +overrideprivatevirtual | +
Updates raw accelerometer data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRawMEMSGyro, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRawMEMSGyro(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRawMEMSGyro | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRawMEMSGyro | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptRawMEMSGyro | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRawMEMSGyro | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptRawMEMSGyro | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent raw gyro reports. (See Ref. Manual 6.5.12) + More...
+ +#include <BNO08xRptRawMEMSGyro.hpp>


+Public Member Functions | |
| BNO08xRptRawMEMSGyro (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_raw_gyro_t | get () |
| Grabs most recent raw mems gyro report (units in ADC counts, time_stamp in microseconds) | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates raw mems gyro data from decoded sensor event. | |
+Private Attributes | |
| bno08x_raw_gyro_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRawMEMSGyro" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent raw gyro reports. (See Ref. Manual 6.5.12)
+
+
|
+ +inline | +
| bno08x_raw_gyro_t BNO08xRptRawMEMSGyro::get | +( | +) | ++ |
Grabs most recent raw mems gyro report (units in ADC counts, time_stamp in microseconds)
+
+
|
+ +overrideprivatevirtual | +
Updates raw mems gyro data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptRawMEMSMagnetometer, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptRawMEMSMagnetometer(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptRawMEMSMagnetometer | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptRawMEMSMagnetometer | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptRawMEMSMagnetometer | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptRawMEMSMagnetometer | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptRawMEMSMagnetometer | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent raw magnetometer reports. (See Ref. Manual 6.5.15) + More...
+ +#include <BNO08xRptRawMEMSMagnetometer.hpp>


+Public Member Functions | |
| BNO08xRptRawMEMSMagnetometer (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_raw_magf_t | get () |
| Grabs most recent raw magnetometer data, units are ADC counts, time_stamp in microseconds. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates raw magnetometer data from decoded sensor event. | |
+Private Attributes | |
| bno08x_raw_magf_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptRawMEMSMagnetometer" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent raw magnetometer reports. (See Ref. Manual 6.5.15)
+
+
|
+ +inline | +
| bno08x_raw_magf_t BNO08xRptRawMEMSMagnetometer::get | +( | +) | ++ |
Grabs most recent raw magnetometer data, units are ADC counts, time_stamp in microseconds.
+
+
|
+ +overrideprivatevirtual | +
Updates raw magnetometer data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptShakeDetector, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptShakeDetector(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptShakeDetector | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptShakeDetector | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptShakeDetector | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptShakeDetector | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptShakeDetector | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent shake detector reports. (See Ref. Manual 6.5.32) + More...
+ +#include <BNO08xRptShakeDetector.hpp>


+Public Member Functions | |
| BNO08xRptShakeDetector (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_shake_detector_t | get () |
| Grabs most recent shake detector detector data. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates shake detector data from decoded sensor event. | |
+Private Attributes | |
| bno08x_shake_detector_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptShakeDetector" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent shake detector reports. (See Ref. Manual 6.5.32)
+
+
|
+ +inline | +
| bno08x_shake_detector_t BNO08xRptShakeDetector::get | +( | +) | ++ |
Grabs most recent shake detector detector data.
+
+
|
+ +overrideprivatevirtual | +
Updates shake detector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptStabilityClassifier, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptStabilityClassifier(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptStabilityClassifier | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptStabilityClassifier | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptStabilityClassifier | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| get_stability() | BNO08xRptStabilityClassifier | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptStabilityClassifier | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptStabilityClassifier | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent stability classifier reports. (See Ref. Manual 6.5.31) + More...
+ +#include <BNO08xRptStabilityClassifier.hpp>


+Public Member Functions | |
| BNO08xRptStabilityClassifier (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_stability_classifier_t | get () |
| Grabs most recent stability classifier data. | |
| BNO08xStability | get_stability () |
| Grabs most recent stability classifier reading (excludes accuracy) | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates stability classifier data from decoded sensor event. | |
+Private Attributes | |
| bno08x_stability_classifier_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptStabilityClassifier" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent stability classifier reports. (See Ref. Manual 6.5.31)
+
+
|
+ +inline | +
| bno08x_stability_classifier_t BNO08xRptStabilityClassifier::get | +( | +) | ++ |
Grabs most recent stability classifier data.
+
| BNO08xStability BNO08xRptStabilityClassifier::get_stability | +( | +) | ++ |
Grabs most recent stability classifier reading (excludes accuracy)
+
+
|
+ +overrideprivatevirtual | +
Updates stability classifier data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptStepCounter, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptStepCounter(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptStepCounter | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptStepCounter | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptStepCounter | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| get_total_steps() | BNO08xRptStepCounter | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| step_accumulator | BNO08xRptStepCounter | private |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptStepCounter | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptStepCounter | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent step counter reports. (See Ref. Manual 6.5.29) + More...
+ +#include <BNO08xRptStepCounter.hpp>


+Public Member Functions | |
| BNO08xRptStepCounter (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bno08x_step_counter_t | get () |
| Grabs most recent step counter data (rollover not accounted for in step count, just most recent report data). | |
| uint32_t | get_total_steps () |
| Grabs the total step count since boot, accounts for rollover in report data. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates step counter data from decoded sensor event. | |
+Private Attributes | |
| bno08x_step_counter_t | data |
| Most recent report data, doesn't account for step rollover. | |
| uint32_t | step_accumulator |
| Every time step count rolls over, the previous steps are accumulated here such that the total steps can always be calculated. | |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptStepCounter" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent step counter reports. (See Ref. Manual 6.5.29)
+
+
|
+ +inline | +
| bno08x_step_counter_t BNO08xRptStepCounter::get | +( | +) | ++ |
Grabs most recent step counter data (rollover not accounted for in step count, just most recent report data).
+
| uint32_t BNO08xRptStepCounter::get_total_steps | +( | +) | ++ |
Grabs the total step count since boot, accounts for rollover in report data.
+
+
|
+ +overrideprivatevirtual | +
Updates step counter data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
Most recent report data, doesn't account for step rollover.
+ +
+
|
+ +private | +
Every time step count rolls over, the previous steps are accumulated here such that the total steps can always be calculated.
+ +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptTapDetector, including all inherited members.
+| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptTapDetector(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptTapDetector | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptTapDetector | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRptTapDetector | |
| flush() | BNO08xRpt | |
| get() | BNO08xRptTapDetector | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptTapDetector | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptTapDetector | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent tap detector reports. (See Ref. Manual 6.5.27) + More...
+ +#include <BNO08xRptTapDetector.hpp>


+Public Member Functions | |
| BNO08xRptTapDetector (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables tap detector reports such that the BNO08x begins sending them (only sends reports when a tap is detected). | |
| bno08x_tap_detector_t | get () |
| Grabs most recent tap detector detector data. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates tap detector data from decoded sensor event. | |
+Private Attributes | |
| bno08x_tap_detector_t | data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptTapDetector" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent tap detector reports. (See Ref. Manual 6.5.27)
+
+
|
+ +inline | +
| bool BNO08xRptTapDetector::enable | +( | +uint32_t | time_between_reports, | +
| + | + | sh2_SensorConfig_t | sensor_cfg = BNO08xPrivateTypes::default_sensor_cfg ) | +
Enables tap detector reports such that the BNO08x begins sending them (only sends reports when a tap is detected).
+| time_between_reports | The period/interval of the report in microseconds. |
| sensor_cfg | Sensor special configuration (optional, see BNO08xPrivateTypes::default_sensor_cfg for defaults). |

| bno08x_tap_detector_t BNO08xRptTapDetector::get | +( | +) | ++ |
Grabs most recent tap detector detector data.
+
+
|
+ +overrideprivatevirtual | +
Updates tap detector data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptUncalGyro, including all inherited members.
+| bias_data | BNO08xRptUncalGyro | private |
| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptUncalGyro(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptUncalGyro | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptUncalGyro | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get(bno08x_gyro_t &vel, bno08x_gyro_bias_t &bias) | BNO08xRptUncalGyro | |
| get_bias() | BNO08xRptUncalGyro | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| get_vel() | BNO08xRptUncalGyro | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptUncalGyro | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptUncalGyro | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent uncalibrated gyro reports. (See Ref. Manual 6.5.14) + More...
+ +#include <BNO08xRptUncalGyro.hpp>


+Public Member Functions | |
| BNO08xRptUncalGyro (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| void | get (bno08x_gyro_t &vel, bno08x_gyro_bias_t &bias) |
| Grabs most recent uncalibrated gyroscope data, units are in rad/s. | |
| bno08x_gyro_t | get_vel () |
| Grabs most recent uncalibrated gyroscope velocity data, units are in rad/s. | |
| bno08x_gyro_bias_t | get_bias () |
| Grabs most recent uncalibrated gyroscope bias data, units are in rad/s. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates uncalibrated gyro data from decoded sensor event. | |
+Private Attributes | |
| bno08x_gyro_t | data |
| bno08x_gyro_bias_t | bias_data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptUncalGyro" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent uncalibrated gyro reports. (See Ref. Manual 6.5.14)
+
+
|
+ +inline | +
| void BNO08xRptUncalGyro::get | +( | +bno08x_gyro_t & | vel, | +
| + | + | bno08x_gyro_bias_t & | bias ) | +
Grabs most recent uncalibrated gyroscope data, units are in rad/s.
+| vel | Reference to save velocity data. |
| bias | Reference to save bias data. |


| bno08x_gyro_bias_t BNO08xRptUncalGyro::get_bias | +( | +) | ++ |
Grabs most recent uncalibrated gyroscope bias data, units are in rad/s.
+
| bno08x_gyro_t BNO08xRptUncalGyro::get_vel | +( | +) | ++ |
Grabs most recent uncalibrated gyroscope velocity data, units are in rad/s.
+
+
|
+ +overrideprivatevirtual | +
Updates uncalibrated gyro data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xRptUncalMagnetometer, including all inherited members.
+| bias_data | BNO08xRptUncalMagnetometer | private |
| BNO08xRpt(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRpt | inlineprotected |
| BNO08xRptUncalMagnetometer(uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | BNO08xRptUncalMagnetometer | inline |
| clear_sample_counts() | BNO08xRpt | |
| data | BNO08xRptUncalMagnetometer | private |
| disable(sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| enable(uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) | BNO08xRpt | |
| flush() | BNO08xRpt | |
| get(bno08x_magf_t &magf, bno08x_magf_bias_t &bias) | BNO08xRptUncalMagnetometer | |
| get_bias() | BNO08xRptUncalMagnetometer | |
| get_magf() | BNO08xRptUncalMagnetometer | |
| get_meta_data(bno08x_meta_data_t &meta_data) | BNO08xRpt | |
| get_sample_counts(bno08x_sample_counts_t &sample_counts) | BNO08xRpt | |
| has_new_data() | BNO08xRpt | |
| ID | BNO08xRpt | protected |
| lock_sh2_HAL() | BNO08xRpt | protected |
| lock_user_data() | BNO08xRpt | protected |
| period_us | BNO08xRpt | protected |
| RAD_2_DEG | BNO08xRpt | protectedstatic |
| register_cb(std::function< void(void)> cb_fxn) | BNO08xRpt | |
| rpt_bit | BNO08xRpt | protected |
| signal_data_available() | BNO08xRpt | protected |
| sync_ctx | BNO08xRpt | protected |
| TAG | BNO08xRptUncalMagnetometer | privatestatic |
| unlock_sh2_HAL() | BNO08xRpt | protected |
| unlock_user_data() | BNO08xRpt | protected |
| update_data(sh2_SensorValue_t *sensor_val) override | BNO08xRptUncalMagnetometer | privatevirtual |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Class to represent uncalibrated magnetometer reports. (See Ref. Manual 6.5.17) + More...
+ +#include <BNO08xRptUncalMagnetometer.hpp>


+Public Member Functions | |
| BNO08xRptUncalMagnetometer (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| void | get (bno08x_magf_t &magf, bno08x_magf_bias_t &bias) |
| Grabs most recent uncalibrated magnetometer data, units are in uTesla. | |
| bno08x_magf_t | get_magf () |
| Grabs most recent uncalibrated magnetometer magnetic field data, units are in uTesla. | |
| bno08x_magf_bias_t | get_bias () |
| Grabs most recent uncalibrated magnetometer bias data, units are in uTesla. | |
Public Member Functions inherited from BNO08xRpt | |
| bool | enable (uint32_t time_between_reports, sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Enables a sensor report such that the BNO08x begins sending it. | |
| bool | disable (sh2_SensorConfig_t sensor_cfg=BNO08xPrivateTypes::default_sensor_cfg) |
| Disables a sensor report by setting its period to 0us such that the BNO08x stops sending it. | |
| bool | register_cb (std::function< void(void)> cb_fxn) |
| Registers a callback to execute when new data from a specific report is received. | |
| bool | has_new_data () |
| Checks if a new report has been received since the last time this function was called. | |
| bool | flush () |
| Flush all buffered reports for this sensor/report module. | |
| bool | get_sample_counts (bno08x_sample_counts_t &sample_counts) |
| Gets sample counts for this sensor (see SH-2 ref manual 6.4.3.1) | |
| bool | clear_sample_counts () |
| Clears BNO08x internal sample counts for this sensor. (see SH-2 ref manual 6.4.3.1) | |
| bool | get_meta_data (bno08x_meta_data_t &meta_data) |
| Retrieves meta data for this sensor/report by reading respective record in FRS (flash record system). | |
+Private Member Functions | |
| void | update_data (sh2_SensorValue_t *sensor_val) override |
| Updates uncalibrated magf data from decoded sensor event. | |
+Private Attributes | |
| bno08x_magf_t | data |
| bno08x_magf_bias_t | bias_data |
+Static Private Attributes | |
| static const constexpr char * | TAG = "BNO08xRptUncalMagnetometer" |
+Additional Inherited Members | |
Protected Member Functions inherited from BNO08xRpt | |
| BNO08xRpt (uint8_t ID, EventBits_t rpt_bit, BNO08xPrivateTypes::bno08x_sync_ctx_t *sync_ctx) | |
| BNO08xRpt report constructor. | |
| void | unlock_sh2_HAL () |
| Unlocks sh2 HAL lib to allow other tasks to call its APIs. | |
| void | lock_sh2_HAL () |
| Locks sh2 HAL lib to only allow the calling task to call its APIs. | |
| void | unlock_user_data () |
| Unlocks user data to allow other tasks to read/modify it. | |
| void | lock_user_data () |
| Locks locks user data to only allow the calling task to read/modify it. | |
| void | signal_data_available () |
| Signals to BNO08x::data_available() that a new report has arrived. | |
Protected Attributes inherited from BNO08xRpt | |
| uint8_t | ID |
| Report ID, ex. SH2_ACCELERATION. | |
| EventBits_t | rpt_bit |
| Respective enable and data bit for report in evt_grp_rpt_en and evt_grp_rpt_data. | |
| uint32_t | period_us |
| The period/interval of the report in microseconds. | |
| BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx |
Static Protected Attributes inherited from BNO08xRpt | |
| static const constexpr float | RAD_2_DEG |
| Constant for radian to degree conversions, sed in quaternion to euler function conversions. | |
| static const constexpr char * | TAG = "BNO08xRpt" |
Class to represent uncalibrated magnetometer reports. (See Ref. Manual 6.5.17)
+
+
|
+ +inline | +
| void BNO08xRptUncalMagnetometer::get | +( | +bno08x_magf_t & | magf, | +
| + | + | bno08x_magf_bias_t & | bias ) | +
Grabs most recent uncalibrated magnetometer data, units are in uTesla.
+| magf | Struct to store requested magf data. |
| bias | Struct to store requested bias data. |


| bno08x_magf_bias_t BNO08xRptUncalMagnetometer::get_bias | +( | +) | ++ |
Grabs most recent uncalibrated magnetometer bias data, units are in uTesla.
+
| bno08x_magf_t BNO08xRptUncalMagnetometer::get_magf | +( | +) | ++ |
Grabs most recent uncalibrated magnetometer magnetic field data, units are in uTesla.
+
+
|
+ +overrideprivatevirtual | +
Updates uncalibrated magf data from decoded sensor event.
+| sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call. |
Implements BNO08xRpt.
+
+
|
+ +private | +
+
|
+ +private | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xSH2HAL, including all inherited members.
+| get_time_us(sh2_Hal_t *self) | BNO08xSH2HAL | static |
| hal_cb(void *cookie, sh2_AsyncEvent_t *pEvent) | BNO08xSH2HAL | static |
| hardware_reset() | BNO08xSH2HAL | privatestatic |
| imu | BNO08xSH2HAL | privatestatic |
| sensor_event_cb(void *cookie, sh2_SensorEvent_t *event) | BNO08xSH2HAL | static |
| set_hal_imu(BNO08x *hal_imu) | BNO08xSH2HAL | static |
| spi_close(sh2_Hal_t *self) | BNO08xSH2HAL | static |
| spi_open(sh2_Hal_t *self) | BNO08xSH2HAL | static |
| spi_read(sh2_Hal_t *self, uint8_t *pBuffer, unsigned len, uint32_t *t_us) | BNO08xSH2HAL | static |
| spi_read_sh2_packet_body(uint8_t *pBuffer, uint16_t packet_sz) | BNO08xSH2HAL | privatestatic |
| spi_read_sh2_packet_header(uint8_t *pBuffer) | BNO08xSH2HAL | privatestatic |
| spi_wait_for_int() | BNO08xSH2HAL | privatestatic |
| spi_write(sh2_Hal_t *self, uint8_t *pBuffer, unsigned len) | BNO08xSH2HAL | static |
| TAG | BNO08xSH2HAL | privatestatic |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
Fully static class containing callback implementations for sh2 HAL lib. + More...
+ +#include <BNO08xSH2HAL.hpp>

+Static Public Member Functions | |
| static void | set_hal_imu (BNO08x *hal_imu) |
| Sets the BNO08x driver object to be used with sh2 HAL lib callbacks. | |
| static int | spi_open (sh2_Hal_t *self) |
| Opens SPI instance by waiting for interrupt. | |
| static void | spi_close (sh2_Hal_t *self) |
| Closes SPI instance (nothing to do here, but required by sh2 HAL lib for cases where other communication protocols are used.) | |
| static int | spi_read (sh2_Hal_t *self, uint8_t *pBuffer, unsigned len, uint32_t *t_us) |
| SPI rx callback for sh2 HAL lib. | |
| static int | spi_write (sh2_Hal_t *self, uint8_t *pBuffer, unsigned len) |
| SPI tx callback for sh2 HAL lib. | |
| static uint32_t | get_time_us (sh2_Hal_t *self) |
| Get time in microseconds callback for sh2 HAL lib. | |
| static void | hal_cb (void *cookie, sh2_AsyncEvent_t *pEvent) |
| General event callback for sh2 HAL lib, used to notify tasks of reset. | |
| static void | sensor_event_cb (void *cookie, sh2_SensorEvent_t *event) |
| Sensor event callback for sh2 HAL lib, sends received reports to data_proc_task(). | |
+Static Private Member Functions | |
| static void | hardware_reset () |
| Hardware reset callback for sh2 HAL lib, toggle RST gpio. | |
| static bool | spi_wait_for_int () |
| SPI wait for HINT sh2 HAL lib callback. | |
| static uint16_t | spi_read_sh2_packet_header (uint8_t *pBuffer) |
| SPI rx packet header (invoked from SPI rx callback.) | |
| static int | spi_read_sh2_packet_body (uint8_t *pBuffer, uint16_t packet_sz) |
| SPI rx packet body (invoked from SPI rx callback.) | |
+Static Private Attributes | |
| static BNO08x * | imu |
| static const constexpr char * | TAG = "BNO08xSH2HAL" |
Fully static class containing callback implementations for sh2 HAL lib.
+
+
|
+ +static | +
Get time in microseconds callback for sh2 HAL lib.
+| self | sh2 HAL lib object being used with BNO08x driver instance. |

+
|
+ +static | +
General event callback for sh2 HAL lib, used to notify tasks of reset.
+| cookie | User set input parameter as void pointer (unused), see sh2_Open(). |
| pEvent | Pointer to asynchronous event. |

+
|
+ +staticprivate | +
Hardware reset callback for sh2 HAL lib, toggle RST gpio.
+

+
|
+ +static | +
Sensor event callback for sh2 HAL lib, sends received reports to data_proc_task().
+| cookie | User set input parameter as void pointer (unused), see sh2_Open(). |
| event | Pointer to sensor event. |

+
|
+ +static | +
+
|
+ +static | +
Closes SPI instance (nothing to do here, but required by sh2 HAL lib for cases where other communication protocols are used.)
+
+
|
+ +static | +
Opens SPI instance by waiting for interrupt.
+

+
|
+ +static | +
SPI rx callback for sh2 HAL lib.
+| self | sh2 HAL lib object being used with BNO08x driver instance. |
| pBuffer | Buffer to store received packet. |
| len | Length of bytes to read. |
| t_us | Time in microseconds (unused, forced sh2 HAL lib required function type) |


+
|
+ +staticprivate | +
SPI rx packet body (invoked from SPI rx callback.)
+| pBuffer | Buffer to store received packet body. |

+
|
+ +staticprivate | +
SPI rx packet header (invoked from SPI rx callback.)
+| pBuffer | Buffer to store received header. |

+
|
+ +staticprivate | +
SPI wait for HINT sh2 HAL lib callback.
+

+
|
+ +static | +
SPI tx callback for sh2 HAL lib.
+| self | sh2 HAL lib object being used with BNO08x driver instance. |
| pBuffer | Buffer containing data to write. |
| len | Length in bytes to write. |


+
|
+ +staticprivate | +
+
|
+ +staticconstexprprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xTestHelper, including all inherited members.
+|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
BNO08x unit test helper class. + More...
+ +#include <BNO08xTestHelper.hpp>

+Static Public Member Functions | |
| static void | print_test_start_banner (const char *TEST_TAG) |
| Prints test begin banner. | |
| static void | print_test_end_banner (const char *TEST_TAG) |
| Prints end begin banner. | |
| static void | print_test_msg (const char *TEST_TAG, const char *msg) |
| Prints a message during a test. | |
| static void | set_test_imu_cfg (bno08x_config_t cfg) |
| Set test imu configuration used with create_test_imu() | |
| static void | create_test_imu () |
| Calls BNO08x constructor and creates new test IMU on heap. | |
| static void | destroy_test_imu () |
| Deletes test IMU calling deconstructor and releases heap allocated memory. | |
| static BNO08x * | get_test_imu () |
| Deletes test IMU calling deconstructor and releases heap allocated memory. | |
| static esp_err_t | call_init_config_args () |
| Used to call private BNO08x::init_config_args() member for tests. | |
| static esp_err_t | call_init_gpio () |
| Used to call private BNO08x::init_gpio() member for tests. | |
| static esp_err_t | call_init_hint_isr () |
| Used to call private BNO08x::init_hint_isr() member for tests. | |
| static esp_err_t | call_init_spi () |
| Used to call private BNO08x::init_spi() member for tests. | |
| static esp_err_t | call_init_tasks () |
| Used to call private BNO08x::init_tasks() member for tests. | |
| static esp_err_t | call_init_sh2_HAL () |
| Used to call private BNO08x::init_tasks() member for tests. | |
| static esp_err_t | call_deinit_gpio () |
| Used to call private BNO08x::deinit_gpio() member for tests. | |
| static esp_err_t | call_deinit_hint_isr () |
| Used to call private BNO08x::deinit_hint_isr() member for tests. | |
| static esp_err_t | call_deinit_spi () |
| Used to call private BNO08x::deinit_spi() member for tests. | |
| static esp_err_t | call_deinit_tasks () |
| Used to call private BNO08x::deinit_tasks() member for tests. | |
| static esp_err_t | call_deinit_sh2_HAL () |
| Used to call private BNO08x::deinit_tasks() member for tests. | |
+Static Private Attributes | |
| static BNO08x * | test_imu = nullptr |
| static bno08x_config_t | imu_cfg |
| static const constexpr char * | TAG = "BNO08xTestHelper" |
BNO08x unit test helper class.
+
+
|
+ +inlinestatic | +
Used to call private BNO08x::deinit_gpio() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::deinit_hint_isr() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::deinit_tasks() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::deinit_spi() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::deinit_tasks() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_config_args() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_gpio() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_hint_isr() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_tasks() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_spi() member for tests.
+

+
|
+ +inlinestatic | +
Used to call private BNO08x::init_tasks() member for tests.
+

+
|
+ +inlinestatic | +
Calls BNO08x constructor and creates new test IMU on heap.
+

+
|
+ +inlinestatic | +
Deletes test IMU calling deconstructor and releases heap allocated memory.
+
+
|
+ +inlinestatic | +
Deletes test IMU calling deconstructor and releases heap allocated memory.
+
+
|
+ +inlinestatic | +
Prints end begin banner.
+| TEST_TAG | String containing test name. |

+
|
+ +inlinestatic | +
Prints a message during a test.
+| TEST_TAG | String containing test name. |
| msg | String containing message to print. |

+
|
+ +inlinestatic | +
Prints test begin banner.
+| TEST_TAG | String containing test name. |
+
|
+ +inlinestatic | +
Set test imu configuration used with create_test_imu()
+| cfg | String containing test name. |
+
|
+ +inlinestaticprivate | +
+
|
+ +staticconstexprprivate | +
+
|
+ +inlinestaticprivate | +
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This is the complete list of members for BNO08xTestSuite, including all inherited members.
+| print_begin_tests_banner(const char *test_set_name) | BNO08xTestSuite | inlineprivatestatic |
| print_end_tests_banner(const char *test_set_name) | BNO08xTestSuite | inlineprivatestatic |
| run_all_tests() | BNO08xTestSuite | inlinestatic |
| run_callback_tests(bool call_unity_end_begin=true) | BNO08xTestSuite | inlinestatic |
| run_feature_tests(bool call_unity_end_begin=true) | BNO08xTestSuite | inlinestatic |
| run_init_deinit_tests(bool call_unity_end_begin=true) | BNO08xTestSuite | inlinestatic |
| run_multi_report_tests(bool call_unity_end_begin=true) | BNO08xTestSuite | inlinestatic |
| run_single_report_tests(bool call_unity_end_begin=true) | BNO08xTestSuite | inlinestatic |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
BNO08x unit test launch point class. + More...
+ +#include <BNO08xTestSuite.hpp>
+Static Public Member Functions | |
| static void | run_all_tests () |
| static void | run_init_deinit_tests (bool call_unity_end_begin=true) |
| static void | run_single_report_tests (bool call_unity_end_begin=true) |
| static void | run_multi_report_tests (bool call_unity_end_begin=true) |
| static void | run_callback_tests (bool call_unity_end_begin=true) |
| static void | run_feature_tests (bool call_unity_end_begin=true) |
+Static Private Member Functions | |
| static void | print_begin_tests_banner (const char *test_set_name) |
| static void | print_end_tests_banner (const char *test_set_name) |
BNO08x unit test launch point class.
+
+
|
+ +inlinestaticprivate | +

+
|
+ +inlinestaticprivate | +

+
|
+ +inlinestatic | +

+
|
+ +inlinestatic | +


+
|
+ +inlinestatic | +


+
|
+ +inlinestatic | +


+
|
+ +inlinestatic | +


+
|
+ +inlinestatic | +


|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
| File in imu_update/bno08x_update/components/esp32_BNO08x/include | Includes file in imu_update/bno08x_update/components/esp32_BNO08x/include/callback |
|---|---|
| BNO08xPrivateTypes.hpp | BNO08xCbParamRptID.hpp |
| BNO08xPrivateTypes.hpp | BNO08xCbParamVoid.hpp |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
| File in imu_update/bno08x_update/components/esp32_BNO08x/include | Includes file in imu_update/bno08x_update/components/esp32_BNO08x/include/report |
|---|---|
| BNO08x.hpp | BNO08xReports.hpp |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
| File in imu_update/bno08x_update/components/esp32_BNO08x/test | Includes file in imu_update/bno08x_update/components/esp32_BNO08x/include |
|---|---|
| CallbackTests.cpp | BNO08xTestHelper.hpp |
| FeatureTests.cpp | BNO08xTestHelper.hpp |
| InitDenitTests.cpp | BNO08xTestHelper.hpp |
| MultiReportTests.cpp | BNO08xTestHelper.hpp |
| SingleReportTests.cpp | BNO08xTestHelper.hpp |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Files | |
| BNO08xCbGeneric.hpp | |
| BNO08xCbParamRptID.hpp | |
| BNO08xCbParamVoid.hpp | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Directories | |
| report | |
+Files | |
| BNO08x.cpp | |
| BNO08xRpt.cpp | |
| BNO08xSH2HAL.cpp | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Files | |
| CallbackTests.cpp | |
| FeatureTests.cpp | |
| InitDenitTests.cpp | |
| MultiReportTests.cpp | |
| SingleReportTests.cpp | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

+Directories | |
| callback | |
| report | |
+Files | |
| BNO08x.hpp | |
| BNO08xGlobalTypes.hpp | |
| BNO08xPrivateTypes.hpp | |
| BNO08xSH2HAL.hpp | |
| BNO08xTestHelper.hpp | |
| BNO08xTestSuite.hpp | |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+

|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
This page explains how to interpret the graphs that are generated by doxygen.
+Consider the following example:
This will result in the following graph:
+
The boxes in the above graph have the following meaning:
+The arrows have the following meaning:
+|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
| CBNO08x | BNO08x IMU driver class |
| Cbno08x_accel_t | Struct to represent acceleration data from acceleration, linear acceleration, and gravity reports |
| Cbno08x_activity_classifier_t | Struct to represent activity classifier data |
| Cbno08x_ang_vel_t | Struct to represent angular velocity (units in rad/s) |
| Cbno08x_config_t | IMU configuration settings passed into constructor |
| Cbno08x_euler_angle_t | Struct to represent euler angle (units in degrees or rads) |
| Cbno08x_gyro_bias_t | Struct to represent gyro bias data (units in rad/s) |
| Cbno08x_gyro_t | Struct to represent gyro data (units in rad/s) |
| CBNO08xPrivateTypes::bno08x_init_status_t | Holds info about which functionality has been successfully initialized (used by deconstructor during cleanup) |
| Cbno08x_magf_bias_t | Struct to represent magnetic field bias data (units in uTesla) |
| Cbno08x_magf_t | Struct to represent magnetic field data (units in uTesla) |
| Cbno08x_meta_data_t | Struct to represent sensor/report meta data, returned from BNO08xRpt::get_meta_data() |
| Cbno08x_quat_t | Struct to represent unit quaternion |
| Cbno08x_raw_accel_t | Struct to represent raw mems accelerometer data from raw accelerometer reports (units in ADC counts) |
| Cbno08x_raw_gyro_t | Struct to represent raw mems gyro data from raw gyro reports (units in ADC counts) |
| Cbno08x_raw_magf_t | Struct to represent raw mems magnetometer data from raw magnetometer reports (units in ADC counts) |
| CBNO08x::bno08x_reports_t | Contains report implementations |
| Cbno08x_sample_counts_t | Struct to represent sample counts, returned from BNO08xRpt::get_sample_counts() |
| Cbno08x_shake_detector_t | Struct to represent shake detector data (flag meaning: 0 = no shake 1 = shake detected) |
| Cbno08x_stability_classifier_t | Struct to represent stability classifier data from stability classifier reports |
| Cbno08x_step_counter_t | Struct to represent step counter data from step counter reports |
| CBNO08xPrivateTypes::bno08x_sync_ctx_t | Holds context used to synchronize tasks and callback execution |
| Cbno08x_tap_detector_t | Struct to represent tap detector data (flag meaning: 0 = no tap, 1 = positive tap on axis, -1 = negative tap on axis) |
| ▼CBNO08xCbGeneric | Parent class to represent callback functions as generic type such that all flavors can be invoked by single type |
| CBNO08xCbParamRptID | Class to hold callback functions which are passed report ID as input parameter |
| CBNO08xCbParamVoid | |
| ▼CBNO08xRpt | Class to represent and manage reports returned from BNO08x |
| CBNO08xRptAcceleration | Class to represent accelerometer reports. (See Ref. Manual 6.5.9) |
| CBNO08xRptActivityClassifier | Class to represent activity classifier reports. (See Ref. Manual 6.5.36) |
| CBNO08xRptCalGyro | Class to represent calibrated gyro reports. (See Ref. Manual 6.5.13) |
| CBNO08xRptCalMagnetometer | Class to represent calibrated magnetometer reports. (See Ref. Manual 6.5.16) |
| CBNO08xRptGravity | Class to represent gravity reports. (See Ref. Manual 6.5.11) |
| CBNO08xRptLinearAcceleration | Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10) |
| ▼CBNO08xRptRVGeneric | Class to represent rotation vector reports |
| CBNO08xRptARVRStabilizedGameRV | Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.43) |
| CBNO08xRptARVRStabilizedRV | Class to represent ARVR stabilized rotation vector reports. (See Ref. Manual 6.5.42) |
| CBNO08xRptGameRV | Class to represent game rotation vector reports. (See Ref. Manual 6.5.19) |
| CBNO08xRptIGyroRV | Class to represent integrated gyro rotation vector reports. (See Ref. Manual 6.5.44) |
| CBNO08xRptRV | Class to represent rotation vector reports. (See Ref. Manual 6.5.18) |
| CBNO08xRptRVGeomag | Class to represent geomagnetic rotation vector reports. (See Ref. Manual 6.5.20) |
| CBNO08xRptRawMEMSAccelerometer | Class to represent raw accelerometer reports. (See Ref. Manual 6.5.8) |
| CBNO08xRptRawMEMSGyro | Class to represent raw gyro reports. (See Ref. Manual 6.5.12) |
| CBNO08xRptRawMEMSMagnetometer | Class to represent raw magnetometer reports. (See Ref. Manual 6.5.15) |
| CBNO08xRptShakeDetector | Class to represent shake detector reports. (See Ref. Manual 6.5.32) |
| CBNO08xRptStabilityClassifier | Class to represent stability classifier reports. (See Ref. Manual 6.5.31) |
| CBNO08xRptStepCounter | Class to represent step counter reports. (See Ref. Manual 6.5.29) |
| CBNO08xRptTapDetector | Class to represent tap detector reports. (See Ref. Manual 6.5.27) |
| CBNO08xRptUncalGyro | Class to represent uncalibrated gyro reports. (See Ref. Manual 6.5.14) |
| CBNO08xRptUncalMagnetometer | Class to represent uncalibrated magnetometer reports. (See Ref. Manual 6.5.17) |
| CBNO08xSH2HAL | Fully static class containing callback implementations for sh2 HAL lib |
| CBNO08xTestHelper | BNO08x unit test helper class |
| CBNO08xTestSuite | BNO08x unit test launch point class |
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
|
+ esp32_BNO08x 1.3
+
+ C++ BNO08x IMU driver component for esp-idf.
+ |
+
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |