Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion WundergroundClient.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ See more at http://blog.squix.ch
#include <JsonListener.h>
#include <JsonStreamingParser.h>

#define MAX_FORECAST_PERIODS 7
#define MAX_FORECAST_PERIODS 12 // Changed from 7 to 12 to support 6 day / 2 screen forecast (Neptune)

class WundergroundClient: public JsonListener {
private:
Expand Down
140 changes: 140 additions & 0 deletions examples/WeatherStationDemoExtendedDST/DSEG7Classic-BoldFont.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
/******************************************************
[Name] 7-segment Font DSEG7 Family
[Version] 0.30(2015.07.20)
[File Type] Derived from TTF(True Type Font)
[License] Free(See link for details)
[Copyrights] Keshikan(http://www.keshikan.net/fonts-e.html)
******************************************************/

// Converted by FontConverterV3.java written by Squix78 http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const char DSEG7_Classic_Bold_21[] PROGMEM = {
0x11, // Width: 17
0x17, // Height: 23
0x20, // First Char: 32
0x1B, // Numbers of Chars: 27

// Jump Table:
0xFF, 0xFF, 0x00, 0x04, // 32:65535
0x00, 0x00, 0x15, 0x08, // 33:0
0x00, 0x15, 0x15, 0x08, // 34:21
0x00, 0x2A, 0x15, 0x08, // 35:42
0x00, 0x3F, 0x15, 0x08, // 36:63
0x00, 0x54, 0x15, 0x08, // 37:84
0x00, 0x69, 0x15, 0x08, // 38:105
0x00, 0x7E, 0x15, 0x08, // 39:126
0x00, 0x93, 0x15, 0x08, // 40:147
0x00, 0xA8, 0x15, 0x08, // 41:168
0x00, 0xBD, 0x15, 0x08, // 42:189
0x00, 0xD2, 0x15, 0x08, // 43:210
0x00, 0xE7, 0x15, 0x08, // 44:231
0x00, 0xFC, 0x26, 0x11, // 45:252
0xFF, 0xFF, 0x00, 0x00, // 46:65535
0x01, 0x22, 0x15, 0x08, // 47:290
0x01, 0x37, 0x2D, 0x11, // 48:311
0x01, 0x64, 0x2D, 0x11, // 49:356
0x01, 0x91, 0x2C, 0x11, // 50:401
0x01, 0xBD, 0x2D, 0x11, // 51:445
0x01, 0xEA, 0x2D, 0x11, // 52:490
0x02, 0x17, 0x2D, 0x11, // 53:535
0x02, 0x44, 0x2D, 0x11, // 54:580
0x02, 0x71, 0x2D, 0x11, // 55:625
0x02, 0x9E, 0x2D, 0x11, // 56:670
0x02, 0xCB, 0x2D, 0x11, // 57:715
0x02, 0xF8, 0x09, 0x04, // 58:760

// Font Data:
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 33
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 34
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 35
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 36
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 37
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 38
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 39
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 40
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 41
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 42
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 43
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 44
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x10, // 45
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 47
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xEF,0x5F,0xEC,0xC7,0x6F,0x1C,0x00,0x70,0x1C,0x00,0x70,0x1C,0x00,0x70,0x1C,0x00,0x70,0x1C,0x00,0x70,0x1C,0x00,0x70,0x1C,0x00,0x70,0xEC,0xC7,0x6F,0xF4,0xEF,0x5F,0xF8,0xEF,0x3F, // 48
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xC7,0x0F,0xF0,0xEF,0x1F,0xF8,0xEF,0x3F, // 49
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x3F,0x04,0xE0,0x5F,0x0C,0xD0,0x6F,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0xEC,0x17,0x60,0xF4,0x0F,0x40,0xF8,0x0F, // 50
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x40,0x0C,0x10,0x60,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0xEC,0xD7,0x6F,0xF4,0xEF,0x5F,0xF8,0xEF,0x3F, // 51
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF0,0x0F,0x00,0xE0,0x17,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0xE0,0xD7,0x0F,0xF0,0xEF,0x1F,0xF8,0xEF,0x3F, // 52
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x0F,0x40,0xEC,0x17,0x60,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x0C,0xD0,0x6F,0x04,0xE0,0x5F,0x00,0xE0,0x3F, // 53
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xEF,0x5F,0xEC,0xD7,0x6F,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x0C,0xD0,0x6F,0x04,0xE0,0x5F,0x00,0xE0,0x3F, // 54
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x0F,0x00,0xEC,0x07,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0x1C,0x00,0x00,0xEC,0xC7,0x0F,0xF4,0xEF,0x1F,0xF8,0xEF,0x3F, // 55
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xEF,0x5F,0xEC,0xD7,0x6F,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0xEC,0xD7,0x6F,0xF4,0xEF,0x5F,0xF8,0xEF,0x3F, // 56
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x0F,0x40,0xEC,0x17,0x60,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0x1C,0x38,0x70,0xEC,0xD7,0x6F,0xF4,0xEF,0x5F,0xF8,0xEF,0x3F, // 57
0x00,0x00,0x00,0x80,0x03,0x03,0x80,0x03,0x03 // 58
};

// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const char DSEG7_Classic_Regular_21[] PROGMEM = {
0x11, // Width: 17
0x17, // Height: 23
0x20, // First Char: 32
0x1B, // Numbers of Chars: 27

// Jump Table:
0xFF, 0xFF, 0x00, 0x04, // 32:65535
0x00, 0x00, 0x15, 0x08, // 33:0
0x00, 0x15, 0x15, 0x08, // 34:21
0x00, 0x2A, 0x15, 0x08, // 35:42
0x00, 0x3F, 0x15, 0x08, // 36:63
0x00, 0x54, 0x15, 0x08, // 37:84
0x00, 0x69, 0x15, 0x08, // 38:105
0x00, 0x7E, 0x15, 0x08, // 39:126
0x00, 0x93, 0x15, 0x08, // 40:147
0x00, 0xA8, 0x15, 0x08, // 41:168
0x00, 0xBD, 0x15, 0x08, // 42:189
0x00, 0xD2, 0x15, 0x08, // 43:210
0x00, 0xE7, 0x15, 0x08, // 44:231
0x00, 0xFC, 0x29, 0x11, // 45:252
0xFF, 0xFF, 0x00, 0x00, // 46:65535
0x01, 0x25, 0x15, 0x08, // 47:293
0x01, 0x3A, 0x2D, 0x11, // 48:314
0x01, 0x67, 0x2D, 0x11, // 49:359
0x01, 0x94, 0x2C, 0x11, // 50:404
0x01, 0xC0, 0x2D, 0x11, // 51:448
0x01, 0xED, 0x2D, 0x11, // 52:493
0x02, 0x1A, 0x2D, 0x11, // 53:538
0x02, 0x47, 0x2D, 0x11, // 54:583
0x02, 0x74, 0x2D, 0x11, // 55:628
0x02, 0xA1, 0x2D, 0x11, // 56:673
0x02, 0xCE, 0x2D, 0x11, // 57:718
0x02, 0xFB, 0x09, 0x04, // 58:763

// Font Data:
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 33
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 34
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 35
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 36
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 37
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 38
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 39
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 40
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 41
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 42
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 43
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 44
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10, // 45
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 47
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xC7,0x5F,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0x0C,0x00,0x60,0xF4,0xC7,0x5F,0xF8,0xEF,0x3F, // 48
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xC7,0x1F,0xF8,0xEF,0x3F, // 49
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x3F,0x04,0xD0,0x5F,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0xF4,0x17,0x40,0xF8,0x0F, // 50
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x10,0x40,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0xF4,0xD7,0x5F,0xF8,0xEF,0x3F, // 51
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF0,0x17,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0xF0,0xD7,0x1F,0xF8,0xEF,0x3F, // 52
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x17,0x40,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x04,0xD0,0x5F,0x00,0xE0,0x3F, // 53
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xD7,0x5F,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x04,0xD0,0x5F,0x00,0xE0,0x3F, // 54
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x07,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0x0C,0x00,0x00,0xF4,0xC7,0x1F,0xF8,0xEF,0x3F, // 55
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xEF,0x3F,0xF4,0xD7,0x5F,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0xF4,0xD7,0x5F,0xF8,0xEF,0x3F, // 56
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x00,0xF4,0x17,0x40,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0x0C,0x10,0x60,0xF4,0xD7,0x5F,0xF8,0xEF,0x3F, // 57
0x00,0x00,0x00,0x80,0x03,0x03,0x80,0x03,0x03 // 58
};



78 changes: 78 additions & 0 deletions examples/WeatherStationDemoExtendedDST/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# WeatherStationDemoExtendedDST

Daylight Saving Time and other customizations of the original ESP8266 OLED Weather Station.
Uses SSD1306 128x64 OLED display with with either SPI or I2C interface

| New Splash Screen | DHT22 Update |
|:-----------------:|:------------:|
| ![cover](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/splash.jpg) | ![DHT22 Update](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/DHT22_update.jpg) |

| Zurich Standard Time | Boston Daylight Saving Time | Conditions Screen |
|:--------------------:|:---------------------------:|:-----------------:|
| ![Zurich CET](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/Zurich_CET.jpg) | ![Boston EDT](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/Boston_EDT.jpg) | ![Conditions](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/conditions.jpg) |

| DHT Sensor | Thingspeak Sensor | 1 to 3 Day Forecast | 4 to 6 Day Forecast |
|:----------:|:-----------------:|:-------------------:|:-------------------:|
| ![DHT Sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/DHT22_sensor.jpg) | ![ThingSpeak Sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/thingspeak.jpg) | ![DHT Sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/1-3_day_forecast.jpg) | ![ThingSpeak Sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/4-6_day_forecast.jpg) |

## Specific customizations include:

* Added Wifi Splash screen and credit to Squix78
* Modified progress bar to a thicker and symmetrical shape
* Replaced TimeClient with built-in lwip sntp client (no need for external ntp client library)
* Added Daylight Saving Time Auto adjuster with DST rules using simpleDSTadjust library
* https://github.com/neptune2/simpleDSTadjust
* Added Locale Setting examples for Boston, Zurich and Sydney
* Selectable NTP servers for each locale
* DST rules and timezone settings customizable for each locale
* See https://www.timeanddate.com/time/change/ for DST rules
* Added AM/PM or 24-hour option for each locale
* Added metric settings for each locale
* Changed Clock screen to 7-segment font from http://www.keshikan.net/fonts-e.html
* Added Forecast screen for days 4-6 (requires 1.1.3 or later version of esp8266_Weather_Station library)
* Added support for DHT22, DHT21 and DHT11 Indoor Temperature and Humidity Sensors
* Fixed bug preventing display.flipScreenVertically() from working
* Slight adjustments to overlay
* Moved user settings into settings.h
* Added #defines in settings.h to make it easier to select SPI or I2C interface for OLED in settings.h


## Hardware Requirements

This code is made for an 128x64 SSD1603 OLED display with code running on an ESP8266.
Either the SPI or I2C version can be used.
You can buy the original Squix78 Weather Station Kit here:
[Squix Shop](https://shop.squix.ch/index.php/esp8266.html) or here: [US Amazon store](https://www.amazon.com/gp/product/B01KE7BA3O)

## Software Requirements/ Libraries

* [Arduino IDE with ESP8266 platform installed](https://github.com/esp8266/Arduino)
* [Weather Station Library](https://github.com/squix78/esp8266-weather-station) or through Library Manager
* [ESP8266 OLED SSD1306 Library](https://github.com/squix78/esp8266-oled-ssd1306)
* [WifiManager Library](https://github.com/tzapu/WiFiManager)

### Additional required library for automatic Daylight Saving Time adjust
* [simpleDSTadjust Library](https://github.com/neptune2/simpleDSTadjust)

You also need to get an API key for the Wunderground data: https://www.wunderground.com/

## Wemos D1R2 Wiring
![Wemos D1R2 and DHT22 sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/cover.jpg)

See code for pin configurations

| SSD1306 SPI | Wemos D1R2 |
| ----------- |:----------:|
| CS | D8 |
| DC | D2 |
| RST | D0 |
| D1 | D7 |
| D0 | D5 |
| GND | GND |
| VCC | 3V3 |

| DHT22 | Wemos D1R2 |
| ----- |:----------:|
| DATA | D4 |
| GND | GND |
| VCC | 3V3 |
Loading