|
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 |