# esp32_BNO08x: BNO08xRptLinearAcceleration Class Reference

Loading...
Searching...
No Matches
BNO08xRptLinearAcceleration Class Reference

Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10) More...

`#include <BNO08xRptLinearAcceleration.hpp>`

Inheritance diagram for BNO08xRptLinearAcceleration:
[legend]
Collaboration diagram for BNO08xRptLinearAcceleration:
[legend]

## Public Member Functions

| BNO08xRptLinearAcceleration (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) override
| Enables linear acceleration reports such that the BNO08x begins sending them.
bno08x_accel_t | get ()
| Grabs most recent acceleration data (including gravity), units are in m/s^2.
Public Member Functions inherited from BNO08xRpt
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
bool | rpt_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.
| 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"

## Detailed Description

Class to represent linear accelerometer reports. (See Ref. Manual 6.5.10)

## Constructor & Destructor Documentation

## BNO08xRptLinearAcceleration()

BNO08xRptLinearAcceleration::BNO08xRptLinearAcceleration | ( | uint8_t | ID,
|  | EventBits_t | rpt_bit,
|  | BNO08xPrivateTypes::bno08x_sync_ctx_t * | sync_ctx )

inline

## Member Function Documentation

## enable()

bool BNO08xRptLinearAcceleration::enable | ( | uint32_t | time_between_reports,
|  | sh2_SensorConfig_t | sensor_cfg = BNO08xPrivateTypes::default_sensor_cfg )

overridevirtual

Enables linear acceleration reports such that the BNO08x begins sending them.

Parameters

  report_period_us | The period/interval of the report in microseconds.
  sensor_cfg | Sensor special configuration (optional, see BNO08xPrivateTypes::default_sensor_cfg for defaults).

Returns
  True if report was successfully enabled.

Implements BNO08xRpt.

Here is the call graph for this function:
Here is the caller graph for this function:

## get()

bno08x_accel_t BNO08xRptLinearAcceleration::get | ( |  | ) |

Grabs most recent acceleration data (including gravity), units are in m/s^2.

Returns
  Struct containing requested data.

Here is the call graph for this function:
Here is the caller graph for this function:

## update_data()

void BNO08xRptLinearAcceleration::update_data | ( | sh2_SensorValue_t * | sensor_val | ) |

overrideprivatevirtual

Updates accelerometer data from decoded sensor event.

Parameters

  sensor_val | The sh2_SensorValue_t struct used in sh2_decodeSensorEvent() call.

Returns
  void, nothing to return

Implements BNO08xRpt.

Here is the call graph for this function:

## Member Data Documentation

## data

bno08x_accel_t BNO08xRptLinearAcceleration::data

private

## TAG

const constexpr char* BNO08xRptLinearAcceleration::TAG = "BNO08xRptLinearAcceleration"

staticconstexprprivate

The documentation for this class was generated from the following files:

- include/report/BNO08xRptLinearAcceleration.hpp
- source/report/BNO08xRptLinearAcceleration.cpp