1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! # SCD30 Driver
//!
//! A driver for interacting with Sensirion's [SCD30](https://sensirion.com/products/catalog/SCD30)
//! CO2 measuring sensor via I2C. This driver is based on
//! [embedded-hal](https://docs.rs/embedded-hal/latest/embedded_hal/) traits.
//!
//! # Example
//!
//! ```ignore
//! use scd30_interface::Scd30;
//! use scd30_interface::data::DataStatus;
//! use esp_hal::i2c::master::{Config, I2c};
//! use dfmt;
//!
//! #[entry]
//! fn main() {
//! let peripherals = esp_hal::init(esp_hal::Config::default());
//!
//! let i2c = I2c::new(peripherals.I2C0, Config::default())
//! .with_sda(peripherals.GPIO4)
//! .with_scl(peripherals.GPIO5);
//!
//! let sensor = Scd30::new(i2c);
//!
//! // Read out firmware version
//! let firmware_version = sensor.read_firmware_version().unwrap();
//!
//! loop {
//! while sensor.is_data_ready() != DataStatus::Ready {}
//! let measurement = sensor.read_measurement().unwrap();
//! dfmt::log!("{}", measurement);
//! }
//! }
//! ```
pub use Scd30;