Skip to content

Commit e417ae2

Browse files
authored
Merge pull request #43 from neptune2/master
Daylight Saving Time and 7-Segment example
2 parents a2b59c1 + 0bea0a8 commit e417ae2

18 files changed

+2205
-1
lines changed

WundergroundClient.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ See more at http://blog.squix.ch
2828
#include <JsonListener.h>
2929
#include <JsonStreamingParser.h>
3030

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

3333
class WundergroundClient: public JsonListener {
3434
private:
Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
/******************************************************
2+
[Name] 7-segment Font DSEG7 Family
3+
[Version] 0.30(2015.07.20)
4+
[File Type] Derived from TTF(True Type Font)
5+
[License] Free(See link for details)
6+
[Copyrights] Keshikan(http://www.keshikan.net/fonts-e.html)
7+
******************************************************/
8+
9+
// Converted by FontConverterV3.java written by Squix78 http://oleddisplay.squix.ch/ Consider a donation
10+
// In case of problems make sure that you are using the font file with the correct version!
11+
const char DSEG7_Classic_Bold_21[] PROGMEM = {
12+
0x11, // Width: 17
13+
0x17, // Height: 23
14+
0x20, // First Char: 32
15+
0x1B, // Numbers of Chars: 27
16+
17+
// Jump Table:
18+
0xFF, 0xFF, 0x00, 0x04, // 32:65535
19+
0x00, 0x00, 0x15, 0x08, // 33:0
20+
0x00, 0x15, 0x15, 0x08, // 34:21
21+
0x00, 0x2A, 0x15, 0x08, // 35:42
22+
0x00, 0x3F, 0x15, 0x08, // 36:63
23+
0x00, 0x54, 0x15, 0x08, // 37:84
24+
0x00, 0x69, 0x15, 0x08, // 38:105
25+
0x00, 0x7E, 0x15, 0x08, // 39:126
26+
0x00, 0x93, 0x15, 0x08, // 40:147
27+
0x00, 0xA8, 0x15, 0x08, // 41:168
28+
0x00, 0xBD, 0x15, 0x08, // 42:189
29+
0x00, 0xD2, 0x15, 0x08, // 43:210
30+
0x00, 0xE7, 0x15, 0x08, // 44:231
31+
0x00, 0xFC, 0x26, 0x11, // 45:252
32+
0xFF, 0xFF, 0x00, 0x00, // 46:65535
33+
0x01, 0x22, 0x15, 0x08, // 47:290
34+
0x01, 0x37, 0x2D, 0x11, // 48:311
35+
0x01, 0x64, 0x2D, 0x11, // 49:356
36+
0x01, 0x91, 0x2C, 0x11, // 50:401
37+
0x01, 0xBD, 0x2D, 0x11, // 51:445
38+
0x01, 0xEA, 0x2D, 0x11, // 52:490
39+
0x02, 0x17, 0x2D, 0x11, // 53:535
40+
0x02, 0x44, 0x2D, 0x11, // 54:580
41+
0x02, 0x71, 0x2D, 0x11, // 55:625
42+
0x02, 0x9E, 0x2D, 0x11, // 56:670
43+
0x02, 0xCB, 0x2D, 0x11, // 57:715
44+
0x02, 0xF8, 0x09, 0x04, // 58:760
45+
46+
// Font Data:
47+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 33
48+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 34
49+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 35
50+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 36
51+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 37
52+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 38
53+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 39
54+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 40
55+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 41
56+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 42
57+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 43
58+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 44
59+
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
60+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 47
61+
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
62+
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
63+
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
64+
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
65+
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
66+
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
67+
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
68+
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
69+
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
70+
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
71+
0x00,0x00,0x00,0x80,0x03,0x03,0x80,0x03,0x03 // 58
72+
};
73+
74+
// Created by http://oleddisplay.squix.ch/ Consider a donation
75+
// In case of problems make sure that you are using the font file with the correct version!
76+
const char DSEG7_Classic_Regular_21[] PROGMEM = {
77+
0x11, // Width: 17
78+
0x17, // Height: 23
79+
0x20, // First Char: 32
80+
0x1B, // Numbers of Chars: 27
81+
82+
// Jump Table:
83+
0xFF, 0xFF, 0x00, 0x04, // 32:65535
84+
0x00, 0x00, 0x15, 0x08, // 33:0
85+
0x00, 0x15, 0x15, 0x08, // 34:21
86+
0x00, 0x2A, 0x15, 0x08, // 35:42
87+
0x00, 0x3F, 0x15, 0x08, // 36:63
88+
0x00, 0x54, 0x15, 0x08, // 37:84
89+
0x00, 0x69, 0x15, 0x08, // 38:105
90+
0x00, 0x7E, 0x15, 0x08, // 39:126
91+
0x00, 0x93, 0x15, 0x08, // 40:147
92+
0x00, 0xA8, 0x15, 0x08, // 41:168
93+
0x00, 0xBD, 0x15, 0x08, // 42:189
94+
0x00, 0xD2, 0x15, 0x08, // 43:210
95+
0x00, 0xE7, 0x15, 0x08, // 44:231
96+
0x00, 0xFC, 0x29, 0x11, // 45:252
97+
0xFF, 0xFF, 0x00, 0x00, // 46:65535
98+
0x01, 0x25, 0x15, 0x08, // 47:293
99+
0x01, 0x3A, 0x2D, 0x11, // 48:314
100+
0x01, 0x67, 0x2D, 0x11, // 49:359
101+
0x01, 0x94, 0x2C, 0x11, // 50:404
102+
0x01, 0xC0, 0x2D, 0x11, // 51:448
103+
0x01, 0xED, 0x2D, 0x11, // 52:493
104+
0x02, 0x1A, 0x2D, 0x11, // 53:538
105+
0x02, 0x47, 0x2D, 0x11, // 54:583
106+
0x02, 0x74, 0x2D, 0x11, // 55:628
107+
0x02, 0xA1, 0x2D, 0x11, // 56:673
108+
0x02, 0xCE, 0x2D, 0x11, // 57:718
109+
0x02, 0xFB, 0x09, 0x04, // 58:763
110+
111+
// Font Data:
112+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 33
113+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 34
114+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 35
115+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 36
116+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 37
117+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 38
118+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 39
119+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 40
120+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 41
121+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 42
122+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 43
123+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 44
124+
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
125+
0x00,0x00,0x00,0x00,0xFE,0x7F,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0x02,0x40,0x00,0xFE,0x7F, // 47
126+
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
127+
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
128+
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
129+
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
130+
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
131+
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
132+
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
133+
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
134+
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
135+
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
136+
0x00,0x00,0x00,0x80,0x03,0x03,0x80,0x03,0x03 // 58
137+
};
138+
139+
140+
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# WeatherStationDemoExtendedDST
2+
3+
Daylight Saving Time and other customizations of the original ESP8266 OLED Weather Station.
4+
Uses SSD1306 128x64 OLED display with with either SPI or I2C interface
5+
6+
| New Splash Screen | DHT22 Update |
7+
|:-----------------:|:------------:|
8+
| ![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) |
9+
10+
| Zurich Standard Time | Boston Daylight Saving Time | Conditions Screen |
11+
|:--------------------:|:---------------------------:|:-----------------:|
12+
| ![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) |
13+
14+
| DHT Sensor | Thingspeak Sensor | 1 to 3 Day Forecast | 4 to 6 Day Forecast |
15+
|:----------:|:-----------------:|:-------------------:|:-------------------:|
16+
| ![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) |
17+
18+
## Specific customizations include:
19+
20+
* Added Wifi Splash screen and credit to Squix78
21+
* Modified progress bar to a thicker and symmetrical shape
22+
* Replaced TimeClient with built-in lwip sntp client (no need for external ntp client library)
23+
* Added Daylight Saving Time Auto adjuster with DST rules using simpleDSTadjust library
24+
* https://github.com/neptune2/simpleDSTadjust
25+
* Added Locale Setting examples for Boston, Zurich and Sydney
26+
* Selectable NTP servers for each locale
27+
* DST rules and timezone settings customizable for each locale
28+
* See https://www.timeanddate.com/time/change/ for DST rules
29+
* Added AM/PM or 24-hour option for each locale
30+
* Added metric settings for each locale
31+
* Changed Clock screen to 7-segment font from http://www.keshikan.net/fonts-e.html
32+
* Added Forecast screen for days 4-6 (requires 1.1.3 or later version of esp8266_Weather_Station library)
33+
* Added support for DHT22, DHT21 and DHT11 Indoor Temperature and Humidity Sensors
34+
* Fixed bug preventing display.flipScreenVertically() from working
35+
* Slight adjustments to overlay
36+
* Moved user settings into settings.h
37+
* Added #defines in settings.h to make it easier to select SPI or I2C interface for OLED in settings.h
38+
39+
40+
## Hardware Requirements
41+
42+
This code is made for an 128x64 SSD1603 OLED display with code running on an ESP8266.
43+
Either the SPI or I2C version can be used.
44+
You can buy the original Squix78 Weather Station Kit here:
45+
[Squix Shop](https://shop.squix.ch/index.php/esp8266.html) or here: [US Amazon store](https://www.amazon.com/gp/product/B01KE7BA3O)
46+
47+
## Software Requirements/ Libraries
48+
49+
* [Arduino IDE with ESP8266 platform installed](https://github.com/esp8266/Arduino)
50+
* [Weather Station Library](https://github.com/squix78/esp8266-weather-station) or through Library Manager
51+
* [ESP8266 OLED SSD1306 Library](https://github.com/squix78/esp8266-oled-ssd1306)
52+
* [WifiManager Library](https://github.com/tzapu/WiFiManager)
53+
54+
### Additional required library for automatic Daylight Saving Time adjust
55+
* [simpleDSTadjust Library](https://github.com/neptune2/simpleDSTadjust)
56+
57+
You also need to get an API key for the Wunderground data: https://www.wunderground.com/
58+
59+
## Wemos D1R2 Wiring
60+
![Wemos D1R2 and DHT22 sensor](https://github.com/neptune2/esp8266-weather-station-oled-DST/raw/master/resources/cover.jpg)
61+
62+
See code for pin configurations
63+
64+
| SSD1306 SPI | Wemos D1R2 |
65+
| ----------- |:----------:|
66+
| CS | D8 |
67+
| DC | D2 |
68+
| RST | D0 |
69+
| D1 | D7 |
70+
| D0 | D5 |
71+
| GND | GND |
72+
| VCC | 3V3 |
73+
74+
| DHT22 | Wemos D1R2 |
75+
| ----- |:----------:|
76+
| DATA | D4 |
77+
| GND | GND |
78+
| VCC | 3V3 |

0 commit comments

Comments
 (0)