Updating weather page dating djibouti love site

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs. Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

||

Now you can make it by downloading the gerber files attached below. When asked if the API is for chip processing, answer “No”. Slide the switch to its normal position Connect the Power Supply. After few seconds the OLED will display all the weather parametrs.

Slide Switch (S2) : Used for changing the mode of ESP8266. Resistors : R1 is a pull up resistor and R2 is current limiting resistor.5. Header OLED : Connection for OLED Display Update as on 13/03/2016 : New PCB files Thanks to my friend spilz who put his effort to make this nice PCB. When asked if the API is for commercial use, answer “No”. Adjust the location according to Wunderground API, e.g. Adjust UTC offset Now remove the programmer and its connection.

is my personal web site which I maintain on my own time to provide weather information to residents of the Southeast Labrador Coast, Labrador Straits, and Quebec Lower North Shore.

[ Play Video ]Welcome to my new Weather Widget Project. Follow the steps : First update the Node MCU to latest version firmware . This is a fake "WEMOS" ESP8266 with OLED board (D-Duino board) - Node MCU is used to upload code. i get this error like this "Arduino: 1.8.3 (Windows 10), Board: "Node MCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_10 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:: error: 'const char Arial MT_Plain_10 [2731]' previously defined here const char Arial MT_Plain_10[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_16 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:2: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:4: error: 'const char Arial MT_Plain_16 [5049]' previously defined here const char Arial MT_Plain_16[] PROGMEM = { ^In file included from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/esp8266_peri.h:24:0, from C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/Arduino.h:38, from sketch\esp8266cpp:1: C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0/tools/sdk/include/c_types.h:: error: redefinition of 'const char Arial MT_Plain_24 []' #define ICACHE_RODATA_ATTR __attribute__((section("text"))) ^C:\Users\User\App Data\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/pgmspace.h:: note: in expansion of macro 'ICACHE_RODATA_ATTR' #define PROGMEM ICACHE_RODATA_ATTR ^sketch\SSD1306Fonts.h:4: note: in expansion of macro 'PROGMEM' const char Arial MT_Plain_24[] PROGMEM = { ^In file included from C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay.h:32:0, from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:2: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/OLEDDisplay Fonts.h:8: error: 'const char Arial MT_Plain_24 [9643]' previously defined here const char Arial MT_Plain_24[] PROGMEM = { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:46:0:ssd1306_i2c.h:57: error: using typedef-name 'SSD1306' after 'class' class SSD1306 { ^In file included from E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino:9:0: C:\Users\User\Documents\Arduino\libraries\esp8266-oled-ssd1306-master/SSD1306.h:: note: 'SSD1306' has a previous declaration here typedef SSD1306Wire SSD1306; ^esp8266-weather-station:71: error: 'draw Frame1' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame2' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame3' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^esp8266-weather-station:71: error: 'draw Frame4' was not declared in this scope void (*frame Callbacks[])(int x, int y) = ; ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void setup()':esp8266-weather-station:100: error: 'SSD1306' has no member named 'set Frame Callbacks' Frame Callbacks(number Of Frames, frame Callbacks); ^esp8266-weather-station:102: error: 'SSD1306' has no member named 'set Frame Transition Ticks' Frame Transition Ticks(10); ^esp8266-weather-station:104: error: 'SSD1306' has no member named 'set Frame Wait Ticks' Frame Wait Ticks(150); ^E:\1A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.

A1A Weather station\F7MN21OIIW1Y89Y\ESP8266 Weather Widget\esp8266-weather-station-master\esp8266-weather-station\esp8266-weather-station.ino: In function 'void loop()':esp8266-weather-station:118: error: 'SSD1306' has no member named 'get Frame State' if (ready For Weather Update && Frame State() == display. But, if you are not seeing the forecast in Serial Monitor similar to the attached image, your API is NOT working.thank you for library seems to be fine.Combination of your code, Wifi Manager, and some code from Fowlerk. D4 This Code is added Moon and Sun Rise and set time and Moon Phase and UV Level, Humidity, Dew Point, Feel Like, Wind speed, Wind direction, POP, Moonlight! =========================================================================================================================================================================================================================================================================================/**The MIT License (MIT)Copyright (c) 2016 by Daniel Eichhorn Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software. Can you help me please..comment is under your comment. I can see the Weather data downloaded but it is not shown in the Display. SDA is connected to D1, SCL is connected to D2, and if you change the pin setting of the code (the time display is strange and the weather is not displayed correctly). IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.*/#include // Initialize the oled display for address 0x3c// sda-pin=14 and sdc-pin=12// SSD1306 display(0x3c, D6, D5); // for Node MCUSSD1306 display(0x3c, 0, 2); // for ESP8266-01 - [ADDRESS, SDA, SCL]// Set to false, if you prefere imperial/inches, Fahrenheit Wunderground Client wunderground(true);float utc Offset = 9.5; // enter your UTCTime Client time Client(utc Offset);// Add your wounderground api key here String api Key = "abcdefghijklmnop"; String country = "AU"; String city = "Adelaide";// this array keeps function pointers to all frames// frames are the single views that slide from right to left///void (*frame Callbacks[])(int x, int y) = ;void (*frame Callbacks[])(int x, int y) ;int number Of Frames = 4;//void (*frame Callbacks[])(int x, int y) ;//int number Of Frames = 5;// flag changed in the ticker function every x minutes: Adjust "ticker.attach(x * 60, set Ready For Weather Update);" -line 109bool ready For Weather Update = false; String last Update = "--"; Ticker ticker;#define ONE_WIRE_BUS 2// (try to avoid using pin D0, i faced some problems when i use pin D0)// Setup a one Wire instance to communicate with any One Wire devices (not just Maxim/Dallas temperature ICs)One Wire one Wire(ONE_WIRE_BUS);// Pass our one Wire reference to Dallas Temperature. this happens sometimes because i am 50 years a hardware guy and 5 years an arduino guy. thank you for pointing out my error.again thanks, the next pint is on me.daveok i had a few on last post. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. I have found this info: the adafruit link you posted below. As I understand SDA - GPIO0SDC - GPIO2CS should go to Low RES not sure DC or SA0 not sure either Rgds Finally managed to do it with a D1 Mini instead, with this connections taken from examples:/* ###################################### * Hardware Wemos D1 mini SPI pins D5 GPIO14 CLK - D0 pin OLED display D6 GPIO12 MISO (DIN) - not connected D7 GPIO13 MOSI (DOUT) - D1 pin OLED display D1 GPIO5 RST - RST pin OLED display D2 GPIO4 DC - DC pin OLED D8 GPIO15 CS / SS - CS pin OLED display#########################################and the following libraries (just in case it helps):#include Also tested with ESP-07, same connections as with the D1 Mini and// Pin definitions for SPI// ESP8266 -07#define OLED_RESET 5 // RESET#define OLED_DC 4 // Data/Command#define OLED_CS 15 // Chip select Just in case it helps!!!!! I live in Seoul and the quality of the service provided by Wunderground is not good. https://learn.adafruit.com/monochrome-oled-breakouts/wiring-1-dot-3-128x64This is url. Dallas Temperature sensors(&one Wire); // constructor for our DS18B20 sensor to read temperature using Dallas Temperature libary//char buffer[10];char buffer[5];float temperature Deg C = -127;void setup() void loop() void draw Frame1(int x, int y) void draw Frame2(int x, int y) void draw Frame3(int x, int y) void draw Frame4(int x, int y) /*void draw Frame5(int x, int y) void draw Frame6(int x, int y) */void draw Forecast(int x, int y, int day Index) void draw Frame7(int x, int y) void set Ready For Weather Update() Proof it is easy to overlook the obvious. The user hereby assumes all risks associated with the use of information on Temperatures will hold above seasonable values to close out 2017 as a maritime air mass dominates across the region.

Total accumulations through New Year's may push 15 centimetres over some areas in the north, with lesser amounts elsewhere.— Rodney — and I will get you set up with an easy-to-use web form that you go to at any time to submit your reports whenever you want.

You can make the same Weather Widget by using a Node MCU board. It includes firmware which runs on the ESP8266 Wi-Fi So C, and hardware which is based on the ESP-12 module. Hello, tried to build this sketch but I always get the following error when compiling :esp8266-weather-station:189: error: 'class SSD1306' has no member named 'set Text Alignment' Text Alignment(TEXT_ALIGN_LEFT); ^esp8266-weather-station:189: error: 'TEXT_ALIGN_LEFT' was not declared in this scope Text Alignment(TEXT_ALIGN_LEFT); ^exit status 1'class SSD1306' has no member named 'set Text Alignment'What might be wrong ? Didn't get this to work - but did get https://blog.squix.org/weatherstation-getting-code...working..the most part it was easy....

After downloading the Arduino Code, you have to change the following things 1. If you are a not interested to make the circuit by using an ESP8266-01 module,then this is an alternative for you.

Fix for crashes/hangs for WD Mac version, build 270.

Updated the compiler used for overall improvements.

updating weather page-51updating weather page-31updating weather page-72

Version 10.37S Build 62 News:14th November 2017 : Added support for 280 Twitter limit. Added main screen custom to Mac and Linux versions. Added support for history data from Weather Flow station.

Join our conversation (15 Comments).
Click Here To Leave Your Comment Updating weather page.

Comments:

Leave a Reply

Your email address will not be published. Required fields are marked *