ESP8266 Based Network Clock and Weather Monitor

1,418

42

3

Published

Introduction: ESP8266 Based Network Clock and Weather Monitor

Short and Simple Weekend Project with ESP8266 and 0.96'' 128x64 OLED Display.

The device is a network clock i.e. fetches time from ntp servers. It also Displays weather information with icons from openweathermap.org

Parts Required:

1. ESP8266 Module (Any one, I used NodeMCU)

2. 0.96" OLED (I2C Based)

3. Jumper Wires

4. Bread Board

5. USB Cable to attach ESP8266 to the computer

Step 1: Create an Account on Openweathermap.org

Creating an account on openweathermap.org is straight forward.

Create an account by clicking on signup.


Login and go to the API Tab. Note your API Key.

Step 2: Hardware Connections

On NodeMCU the connections are as follows.


NodeMCU OLED

3V ---------------> Vcc

Gnd ---------------> Gnd

D1 ---------------> SCL

D2 ----------------> SDA

Step 3: Burn the Program From Arduino IDE

Open the Program in Arduino IDE.

Select the ESP8266 Module that you are using from the Boards menu and Upload the code to the module.

The code updates the weather information every 10 minutes.

All the weather Icons are placed in the icon.h file.

Icon code is returned from the the call that we make to openweathermap.org

I have used a very crude parsing logic to extract the weather information from the json that is received.

You can used the json library for Arduino if you wish to.

Share

    Recommendations

    • Woodworking Contest

      Woodworking Contest
    • Clocks Contest

      Clocks Contest
    • Planter Challenge

      Planter Challenge
    user

    We have a be nice policy.
    Please be positive and constructive.

    Tips

    Questions

    3 Comments

    Nice building-block project. Thank you for posting.

    Nice project but can you please explain more about the code. :)

    That would be great to have to check in the mornings :)