feat: BMP180 read and sea-level pressure conversion

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-17 19:43:03 +07:00
co-authored by Claude Opus 4.8
parent 906adaddfe
commit d042a94378
3 changed files with 37 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
#include <Adafruit_BMP085.h>
#include <math.h>
#include "sensors.h"
static Adafruit_BMP085 bmp;
bool sensorsBegin() {
return bmp.begin(); // uses Wire (already started on D6/D1), addr 0x77
}
float readAbsPressureHpa() {
return bmp.readPressure() / 100.0f; // Pa -> hPa
}
float readTemperatureC() {
return bmp.readTemperature();
}
// Standard barometric reduction to sea level.
float toSeaLevelHpa(float absHpa, float altitudeM) {
return absHpa / powf(1.0f - (altitudeM / 44330.0f), 5.255f);
}