remove double oo
[GroveSensor] / GroveSensor.ino
1 #include <Arduino.h>
2 #include <U8x8lib.h>
3
4 #include "DHT.h"
5
6 #include <Adafruit_BMP280.h>
7
8 U8X8_SSD1306_128X64_NONAME_HW_I2C u8x8(/* reset=*/ U8X8_PIN_NONE);
9
10 // U8X8_SSD1306_128X64_NONAME_SW_I2C u8x8(/* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);   // OLEDs without Reset of the Display
11  
12
13 #define DHTPIN 3     // what pin we're connected to
14 #define DHTTYPE DHT11   // DHT 11 
15
16 DHT dht(DHTPIN, DHTTYPE);
17
18
19 Adafruit_BMP280 bmp; // I2C
20
21
22 #define BUTTON_PIN 6 
23  
24 void setup(void) {
25   //u8x8.setBusClock(100000);  // If you breakout other modules, please enable this line
26   u8x8.begin();
27   u8x8.setPowerSave(0);
28   u8x8.setFlipMode(1);
29
30   Serial.begin(115200);
31
32   dht.begin();
33
34   if (!bmp.begin()) {
35     Serial.println(F("Could not find a valid BMP280 sensor!"));
36   }
37
38   /* Default settings from datasheet. */
39   bmp.setSampling(Adafruit_BMP280::MODE_NORMAL,     /* Operating Mode. */
40                   Adafruit_BMP280::SAMPLING_X2,     /* Temp. oversampling */
41                   Adafruit_BMP280::SAMPLING_X16,    /* Pressure oversampling */
42                   Adafruit_BMP280::FILTER_X16,      /* Filtering. */
43                   Adafruit_BMP280::STANDBY_MS_500); /* Standby time. */
44
45   pinMode(BUTTON_PIN, OUTPUT);
46
47 }
48
49 unsigned long button_timeout;
50  
51 void loop(void) {
52
53   int oled_active = ! digitalRead(BUTTON_PIN);
54   u8x8.setPowerSave( oled_active );
55
56   float temp, humi;
57   temp = dht.readTemperature();
58   humi = dht.readHumidity();
59
60   u8x8.setFont(u8x8_font_chroma48medium8_r);
61   u8x8.setCursor(0, 0);
62   //u8x8.print("Temp:");
63   u8x8.print(temp);
64   u8x8.print("C ");
65   Serial.print("dht_temp=");
66   Serial.print(temp);
67
68   temp = bmp.readTemperature();
69   u8x8.print( temp );
70   Serial.print(",bmp_temp=");
71   Serial.print(temp);
72
73   u8x8.print(" ");
74
75   u8x8.setCursor(0,9);
76   u8x8.print("Humidity:");
77   u8x8.print(humi);
78   u8x8.print("%");
79   Serial.print(",dht_humidity=");
80   Serial.print(humi);
81
82   float pressure;
83   pressure = bmp.readPressure();
84
85   u8x8.setCursor(0,18);
86   u8x8.print( pressure );
87   Serial.print(",bmp_pressure=");
88   Serial.print(pressure);
89
90   Serial.println();
91
92   u8x8.refreshDisplay();
93   delay(1000);
94
95 }
96