A platform agnostic Rust driver for the ST Microelectronics LPS25HB pressure sensor,
based on the embedded-hal
traits.
Inspired by and partially based on another STMicroelectronics driver.
This driver allows you to:
- check if sensor is reachable
- read pressure and temperature
- set data rate
- configure interrupts generation
- configure FIFO
Basic functions work, see example. Almost all functions added, and should work fine, but many aren't tested yet.
This library is work in progress. Not all features are implemented yet. Currently only the I2C interface is implemented. Contributions are welcome.
- add device ID check and power up in the
new()
function - add an example using FIFO and/or interrupt generation
- add SPI interface and an example using it
- add more documentation (main block in the lib.rs)
The LPS25HB 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: LPS25HB
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.