A platform agnostic Rust driver for the ST Microelectronics LPS22HB pressure sensor,
based on the embedded-hal
traits.
Inspired by and partially based on another STMicroelectronics MEMS driver.
This driver allows you to:
- read pressure and temperature
- set datarate
- check if sensor is reachable
- enable and configure interrupts
- read data ready and overrun status
- control and configure FIFO
This library is work in progress. Not all features are implemented yet. Currently only the I2C interface is implemented. Contributions are welcome.
- reference pressure setting
- test SPI interface (doesn't seem to work correctly)
The LPS22HB is an ultra-compact piezoresistive absolute pressure sensor which functions as a digital output barometer. The device comprises a sensing element and an IC interface which communicates through I2C or SPI from the sensing element to the application.
Datasheet: LPS22HB
For more information regarding the use and configuration of the device, especially the interrupts, data ready signals and FIFO functionalities, refer to:
- LPS22HB/LPS25HB digital pressure sensors: hardware guidelines for system integration
- Digital pressure sensors: efficient design tips
To use this driver, import this crate and an embedded_hal
implementation,
then instantiate the device.
Please find additional examples using hardware in this repository: examples
For questions, issues, feature requests, and other changes, please file an issue in the github project.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.