/* * WetterStation * Version: 0.0 * Author: Hendrik Langer */ #include #include #include #include #include #include #include const char* server = "ingress.opensensemap.org"; const char* ssid = "Freifunk"; const char* password = ""; constexpr unsigned int postingInterval = 60000; //Uploadintervall in Millisekunden //senseBox ID #define SENSEBOX_ID "5a9e9e38f55bff001a494877" //Sensor IDs // Temperature #define SENSOR1_ID "5a9e9e38f55bff001a49487e" // Humidity #define SENSOR2_ID "5a9e9e38f55bff001a49487d" // Pressure #define SENSOR3_ID "5a9e9e38f55bff001a49487c" // PM10 #define SENSOR4_ID "5a9e9e38f55bff001a49487b" // PM2.5 #define SENSOR5_ID "5a9e9e38f55bff001a49487a" // Radioactivity #define SENSOR6_ID "5a9e9e38f55bff001a494879" // Voltage #define SENSOR7_ID "5a9e9e38f55bff001a494878" static constexpr uint8_t BMP_SCL = D4; static constexpr uint8_t BMP_SDA = D3; static constexpr uint8_t DHT22_PIN = D7; static constexpr uint8_t DHTTYPE = DHT22; // DHT 22 (AM2302) Adafruit_BMP085_Unified bmp = Adafruit_BMP085_Unified(10085); DHT dht(DHT22_PIN, DHTTYPE); void sendValues() { WiFi.forceSleepWake(); WiFi.begin(ssid, password); Serial.print("Connecting to wifi"); while (WiFi.status() != WL_CONNECTED) { Serial.print("."); delay(500); } Serial.println(" [CONNECTED]"); Serial.print("IP address: "); Serial.println(WiFi.localIP()); Wire.begin(BMP_SDA, BMP_SCL); if (!bmp.begin()) { Serial.println("No valid BMP085 sensor!"); } dht.begin(); float temp = dht.readTemperature(); // float pressure = bme.readPressure() / 100.0F; float humidity = dht.readHumidity(); Serial.println(temp); Serial.println(humidity); float pressure, temp2; bmp.getPressure(&pressure); pressure /= 100; bmp.getTemperature(&temp2); Serial.println(temp2); Serial.println(pressure); // float temperature = sensor.readTemperature(); // postFloatValue(temperature, 1, temperatureSensorID); WiFi.mode(WIFI_OFF); WiFi.forceSleepBegin(); } void setup() { Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT); } void loop() { sendValues(); delay(postingInterval); }