Meadow.Foundation.Sensors.Atmospheric.Th02
| Th02 | |
|---|---|
| Status | |
| Source code | GitHub | 
| Datasheet(s) | GitHub | 
| NuGet package | 
Code Example
Th02 sensor;
public override Task Initialize()
{
    Resolver.Log.Info("Initializing...");
    sensor = new Th02(Device.CreateI2cBus());
    var consumer = Th02.CreateObserver(
        handler: result =>
        {
            Resolver.Log.Info($"Observer: Temp changed by threshold; new temp: {result.New.Temperature?.Celsius:N2}C, old: {result.Old?.Temperature?.Celsius:N2}C");
        },
        filter: result =>
        {
            if (result.Old is { } old)
            {
                return (
                (result.New.Temperature.Value - old.Temperature.Value).Abs().Celsius > 0.5);
            }
            return false;
        }
    );
    sensor.Subscribe(consumer);
    sensor.Updated += (sender, result) =>
    {
        Resolver.Log.Info($"  Temperature: {result.New.Temperature?.Celsius:N2}C");
        Resolver.Log.Info($"  Relative Humidity: {result.New.Humidity?.Percent:N2}%");
    };
    return Task.CompletedTask;
}
public override async Task Run()
{
    var conditions = await sensor.Read();
    Resolver.Log.Info($"Temperature: {conditions.Temperature?.Celsius}°C, Relative Humidity: {conditions.Humidity?.Percent}%");
    sensor.StartUpdating(TimeSpan.FromSeconds(1));
}
Sample project(s) available on GitHub
Wiring Example
To wire a Th02 to your Meadow board, connect the following:
| Th02 | Meadow Pin | 
|---|---|
| GND | GND | 
| SCL | D08 (SCL) | 
| SDA | D07 (SDA) | 
| VCC | 3V3 |