Expand description
§SCD30 Driver
A driver for interacting with Sensirion’s SCD30 CO2 measuring sensor via I2C. This driver is based on embedded-hal traits.
§Example
ⓘ
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);
}
}
Modules§
- SCD30 I2C Commands.
- Data send to or received from the SCD30 sensor.
- Errors emitted by this library.
Structs§
- Interface for the SCD30 CO2 sensor by Sensirion.