|
modm API documentation
|
#include <modm/driver/inertial/bmi270.hpp>
Classes | |
| struct | AccData |
| struct | AccOffsets |
| struct | Data |
| struct | DriveConfig |
| struct | ErrorInfo |
| struct | ErrorInterruptMask |
| struct | FifoConfiguration |
| struct | FifoDownsampling |
| struct | GyroCrtConfig |
| struct | GyroData |
| struct | GyroOffsets |
| struct | GyroUserGain |
| struct | InterfaceConfig |
| struct | InternalError |
| struct | InternalStatus |
| struct | InterruptIoControl |
| struct | InterruptMapData |
| struct | InterruptStatus |
| struct | SensorStatus |
| struct | Temperature |
Public Member Functions | |
| MODM_FLAGS8 (Status) | |
| MODM_FLAGS8 (PowerControl) | |
| MODM_FLAGS8 (PowerConfiguration) | |
| template<typename... Args> | |
| Bmi270 (Args...transportArgs) | |
| bool | initialize (std::span< const uint8_t > configFile={}) |
| bool | reset () |
| Soft-reset device and wait for reset completion. | |
| std::optional< Data > | readData () |
| Read acceleration and gyroscope data and sensor time from one burst read. | |
| std::optional< AccData > | readAccData () |
| std::optional< GyroData > | readGyroData () |
| bool | readAccDataReady () |
| bool | readGyroDataReady () |
| bool | readCommandReady () |
| std::optional< uint8_t > | getChipId () |
| std::optional< ErrorInfo > | getErrors () |
| std::optional< SensorStatus > | getStatus () |
| std::optional< InternalStatus > | getInternalStatus () |
| std::optional< Temperature > | getTemperature () |
| std::optional< InterruptStatus > | getInterruptStatus () |
| std::optional< ErrorInterruptMask > | getErrorInterruptMask () |
| bool | setErrorInterruptMask (ErrorInterruptMask mask) |
| std::optional< InterruptIoControl > | getInt1IoControl () |
| bool | setInt1IoControl (InterruptIoControl control) |
| std::optional< InterruptIoControl > | getInt2IoControl () |
| bool | setInt2IoControl (InterruptIoControl control) |
| std::optional< InterruptLatch > | getInterruptLatch () |
| bool | setInterruptLatch (InterruptLatch mode) |
| std::optional< InterruptMapData > | getInterruptMapData () |
| bool | setInterruptMapData (InterruptMapData map) |
| std::optional< InternalError > | getInternalError () |
| std::optional< PullUpConfiguration > | getPullUpConfiguration () |
| bool | setPullUpConfiguration (PullUpConfiguration configuration) |
| std::optional< GyroCrtConfig > | getGyroCrtConfig () |
| bool | setGyroCrtConfig (GyroCrtConfig configuration) |
| std::optional< bool > | getNvmCrtEnabled () |
| bool | setNvmCrtEnabled (bool enable) |
| bool | triggerGyroCrt () |
| bool | doCrt (std::span< const uint8_t > configFile={}) |
| std::optional< InterfaceConfig > | getInterfaceConfig () |
| bool | setInterfaceConfig (InterfaceConfig configuration) |
| std::optional< DriveConfig > | getDriveConfig () |
| bool | setDriveConfig (DriveConfig configuration) |
| std::optional< AccOffsets > | getAccOffsets () |
| bool | setAccOffsets (AccOffsets offsets) |
| std::optional< GyroOffsets > | getGyroOffsets () |
| bool | setGyroOffsets (GyroOffsets offsets) |
| std::optional< GyroUserGain > | getGyroUserGain () |
| Read compensated gyroscope user-gain values. | |
| bool | setGyroUserGain (GyroUserGain gain) |
| std::optional< PowerConfiguration_t > | getPowerConfiguration () |
| bool | setPowerConfiguration (PowerConfiguration_t configuration) |
| std::optional< PowerControl_t > | getPowerControl () |
| bool | sendCommand (Command command) |
| bool | setAccRate (AccRate rate) |
| bool | setAccRange (AccRange range) |
| bool | setGyroRate (GyroRate rate) |
| bool | setGyroRange (GyroRange range) |
| bool | setPowerControl (PowerControl_t control) |
| Enable/disable sensor power domains. | |
| std::optional< uint16_t > | getFifoLength () |
| std::optional< FifoDownsampling > | getFifoDownsampling () |
| bool | setFifoDownsampling (FifoDownsampling configuration) |
| std::optional< uint16_t > | getFifoWatermark () |
| bool | setFifoWatermark (uint16_t watermark) |
| std::optional< FifoConfiguration > | getFifoConfiguration () |
| bool | setFifoConfiguration (FifoConfiguration configuration) |
| std::optional< uint16_t > | readFifo (std::span< uint8_t > buffer) |
| bool | flushFifo () |
Bosch BMI270 IMU
The device contains an accelerometer and a gyroscope.
| Transport | Transport layer (use Bmi270SpiTransport or Bmi270I2cTransport) |
| modm::bmi270< Transport >::Bmi270 | ( | Args... | transportArgs | ) |
| bool modm::bmi270< Transport >::doCrt | ( | std::span< const uint8_t > | configFile = {} | ) |
Perform component retrim (CRT) for the gyroscope.
If no configuration blob is passed, the built-in BMI270 configuration is used.
| bool modm::bmi270< Transport >::initialize | ( | std::span< const uint8_t > | configFile = {} | ) |
Initialize device. Call before any other member function.
| std::optional<uint16_t> modm::bmi270< Transport >::readFifo | ( | std::span< uint8_t > | buffer | ) |
Read all currently available FIFO bytes into buffer.
| bool modm::bmi270< Transport >::setGyroUserGain | ( | GyroUserGain | gain | ) |
Write compensated gyroscope user-gain values.
Values are encoded on 7 bits per axis.