19#define ICM42670_FIFO_DEFAULT_WATERMARK_BYTES 64U
24#define ICM42670_FIFO_DEFAULT_PACKET_BYTES 16U
93 uint16_t watermark_bytes);
117 uint16_t max_packets,
118 uint16_t *packets_read);
Core ICM-42670-P configuration and sensor read API.
ICM42670_Status_t
Return codes used by the ICM-42670-P driver.
Definition ICM42670_driver.h:23
ICM42670_IntPin_t
ICM-42670-P interrupt output pins.
Definition ICM42670_fifo.h:29
@ ICM42670_INT_PIN2
Definition ICM42670_fifo.h:31
@ ICM42670_INT_PIN1
Definition ICM42670_fifo.h:30
ICM42670_Status_t ICM42670_FIFO_SetWatermark(const ICM42670_Config *config, uint16_t watermark_bytes)
Set the FIFO watermark level in bytes.
Definition ICM42670_fifo.c:268
ICM42670_Status_t ICM42670_FIFO_Init(const ICM42670_Config *config)
Initialize the FIFO with simple 16-bit accel and gyro packet defaults.
Definition ICM42670_fifo.c:169
ICM42670_Status_t ICM42670_FIFO_RouteInterrupt(const ICM42670_Config *config, ICM42670_IntPin_t pin, ICM42670_FifoIntSource_t sources)
Route FIFO threshold and/or FIFO full interrupts to INT1 or INT2.
Definition ICM42670_fifo.c:377
ICM42670_FifoIntSource_t
FIFO interrupt sources that can be routed to INT1 or INT2.
Definition ICM42670_fifo.h:37
@ ICM42670_FIFO_INT_FULL
Definition ICM42670_fifo.h:40
@ ICM42670_FIFO_INT_THRESHOLD
Definition ICM42670_fifo.h:39
@ ICM42670_FIFO_INT_NONE
Definition ICM42670_fifo.h:38
@ ICM42670_FIFO_INT_THRESHOLD_AND_FULL
Definition ICM42670_fifo.h:41
ICM42670_Status_t ICM42670_FIFO_Read(const ICM42670_Config *config, ICM42670_FifoPacket_t *packets, uint16_t max_packets, uint16_t *packets_read)
Read and parse available FIFO packets.
Definition ICM42670_fifo.c:310
ICM42670_Status_t ICM42670_FIFO_UseFullBuffer(const ICM42670_Config *config)
Disable APEX features so the FIFO can use the full 2.25 KB buffer.
Definition ICM42670_fifo.c:243
ICM42670_Status_t ICM42670_FIFO_Flush(const ICM42670_Config *config)
Flush all unread FIFO data.
Definition ICM42670_fifo.c:295
Platform-independent driver configuration.
Definition ICM42670_driver.h:172
Parsed FIFO packet using the default 16-bit FIFO format.
Definition ICM42670_fifo.h:48
uint8_t has_accel
Definition ICM42670_fifo.h:50
uint8_t has_gyro
Definition ICM42670_fifo.h:51
int8_t temp_raw
Definition ICM42670_fifo.h:55
uint8_t header
Definition ICM42670_fifo.h:49
uint8_t has_timestamp
Definition ICM42670_fifo.h:52
uint16_t timestamp
Definition ICM42670_fifo.h:56