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;char buffer;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.
Libraries : Json Streaming Parser ESP8266 Oled Driver for SSD1306 display After downloading the library unzip it and installed it with your Arduino Library Manager in Sketch Manage Libraries...3. Weather Underground will immediately send you an email with an activation link.
Enter your email address, a password , and a handle (a username), then click the “Sign Up” button.3.
software to get the most from your weather station.
Not only does it support a huge range of stations from all the major manufacturers but it's also stacked with features and options.
New secure FTP versions to fully support SSH and SSL secure FTP available. 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. Another advantage is that you do not need a separate FTDI programmer to program it. You can use your smart phone/tablet charger cable for it. I'm not sure what is wrong with the code here, It almost worked, I think it has something to do with the display library being used thou. You can still use your favourite Arduino IDE and Arduino code to program it. If you enjoyed this article, don’t forget to pass it along! one problem was even thou I selected imperial units (Fahrenheit) it still displayed C...temperatures where in Fahrenheit - just changed the Cs to Fs.
All you need is an internet connection and a thermometer that is shielded from direct sunlight.