use std::time::Duration;
use somose::Somose;
fn main() -> anyhow::Result<()> {
let i2c = linux_embedded_hal::I2cdev::new("/dev/i2c-1")?;
let mut soil_sensor = Somose::new(i2c, 0x55)?;
if soil_sensor.options()?.energy_save_active {
soil_sensor.set_energy_save(false)?;
}
loop {
let temperature = soil_sensor.temperature()?;
let humidity = soil_sensor.humidity()?;
println!("Soil temperature: {temperature}");
println!("Soil humidity: {humidity:?}");
std::thread::sleep(Duration::from_secs(10));
}
}