private static void Main() { _sensor = new BME280(Hardware.SocketOne, BME280.I2CAddresses.Address0) { TemperatureUnit = TemperatureUnits.Fahrenheit, PressureCompensation = PressureCompensationModes.SeaLevelCompensated }; _sensor.SetRecommendedMode(BME280.RecommendedModes.WeatherMonitoring); while (true) { Debug.WriteLine("------Reading individual values-------"); Debug.WriteLine($"Pressure.......: {_sensor.ReadPressure():F1} hPa"); Debug.WriteLine($"Temperature....: {_sensor.ReadTemperature():F2} °F"); Debug.WriteLine($"Humidity.......: {_sensor.ReadHumidity():F2} %RH"); Debug.WriteLine($"Altitude.......: {_sensor.ReadAltitude():F0} meters\n"); _sensor.ReadSensor(out Single pressure, out Single temperature, out Single humidity, out Single altitude); Debug.WriteLine("------Using the ReadSensor Method-------"); Debug.WriteLine($"Pressure.......: {pressure:F1} hPa"); Debug.WriteLine($"Temperature....: {temperature:F2} °F"); Debug.WriteLine($"Humidity.......: {humidity:F2} %RH"); Debug.WriteLine($"Altitude.......: {altitude:F0} meters\n"); Thread.Sleep(5000); } }
static void TelemetryLoop() { while (true) { TBTelemetry telemetry = new TBTelemetry(); telemetry.Add("temperature", bme280Sensor.ReadTemperature()); telemetry.Add("humidity", bme280Sensor.ReadHumidity()); telemetry.Add("pressure", bme280Sensor.ReadPressure()); thingsBoard.SendTelemetry(telemetry); Debug.WriteLine("Message sent: " + telemetry.ToJson()); Thread.Sleep(60000); } }
public static void Main() { //Setup I2C pins for ESP32 board Configuration.SetPinFunction(21, DeviceFunction.I2C1_DATA); Configuration.SetPinFunction(22, DeviceFunction.I2C1_CLOCK); BME280 bme280Sensor = new BME280(1, BME280.I2CAddresses.Address0); while (true) { Debug.WriteLine(bme280Sensor.ReadHumidity()); Debug.WriteLine(bme280Sensor.ReadPressure()); Debug.WriteLine(bme280Sensor.ReadTemperature()); Thread.Sleep(10000); } }