Weather Gadget With The idIoTware Shield

/**/

Weather Gadget With The idIoTware Shield

The idIoTware Shield allows you to build a weather notification gadget with an ESP8266-01 and a OLED.

Things used in this project

Hardware components

  • Arduino UNO x 1
  • Idiotware Shield x 1
  • Generic Jumper (0.1″) x 1
  • Espressif ESP8266 ESP-01 x 1
  • i2c OLED x 1
  • 9V 1A Switching Wall Power Supply x 1

Software apps and online services

  •  Arduino IDE

Story

idIoTWare Shield Weather Gadget

In this example we are using ESP8266-01 Wifi Module with esp-link firmware and an I2C OLED display to show weather conditions of particular city, fetched from OpenWeatherMaps http://www.openweathermap.org/appid

This code allows you to auto detect your location:

  • Automatically by IP address (default behaviour)
  • Manual Configuration

To get weather conditions of particular city, change the variable cityID in the following code and change autoDetectLocation variable to false. cityID can be searched on openweathermaps

To get data from OpenWeatherMap Api, you need to create openweathermaps account and then generate API key, and use that API Key in this code. You can read on how to do it here http://www.openweathermap.org/appid

In this example we have used ELClient.h library to get data from WeatherDataApi ( explained below). We are sending requests for location, current temperature, humidity and weather description.

WeatherDataApi: Heroku Deployment Application that reduces data downloaded for OpenWeatherMap Api Due to memory limits on the Arduino, an intermediate server filters data recieved from OpenWeatherMaps. The python code can be accessed here https://github.com/CuriosityGym/WeatherDataApi

An i2c OLED is used to display this information.

We send a request after every one hour to get weather information.

Schematics

Code

Video