Weather stations

How to connect your weather station to OpenWeatherMap

We are glad to invite you to join our network of private weather stations! Today we have more than 40,000 weather stations around the world. You can connect your weather station to OpenWeatherMap and get a convenient interface for gathering and monitoring data from your weather station. You can also embed your weather station data into your home page.

Three simple steps to connect your weather station

1 Create an account on our registration page

2 Connect your weather station to our API using weather station data transmission protocol

3 Sign in and get an access to your data on your personal page

Weather station data transmission protocol

  • This protocol is used to transmit one measurement from your weather station.
  • The data is transmitted by HTTP POST request using HTTP basic authentication.
  • The server address is

The following parameters can be transmitted in POST:

wind_dirDegreesWind direction
wind_speedm/sWind speed
wind_gustm/sWind gust speed
humidityRH %Relative humidity
pressureAtmospheric pressure
rain_1hmmRain in the last hour
rain_24hmmRain in the last 24 hours
rain_todaymmRain since midnight
snowmmSnow in the last 24 hours
latDecimal degreesLatitude
longDecimal degreesLongitude
dewpoint°CDew point
uvUV index
nameStringWeather station name

Software for working with weather stations


A collection of Python scripts to read, store and process data from popular USB wireless weather stations such as Elecsa AstroTouch 6975, Watson W-8681, WH-1080PC, WH1080, WH1081, WH3080 etc. The software has been developed to run in a low power, low memory environment such as a router. It can be used to create graphs and web pages showing recent weather readings, typically updated every hour. It can also send data to OpenWeatherMap, post messages to Twitter, etc.

Example config file weather.ini for pywws

.... [openweathermap] 
user = USERNAME 
password = YOUPASSWORD 
lat = 10.56 
long = 10.23 
alt = 250 
services = ['openweathermap'] 

services = ['openweathermap'] 

services = ['openweathermap'] 

To start:

python -vvv ./data/

More about configuration of this software


wview is a collection of linux/unix daemons that interface with a supported weather station to retrieve current conditions and archive records (if generated by the station). If the station does not generate archive records internally, wview will auto-generate archive records based on the sensor readings collected for that interval. The archive records and High/Low (HILOW) data are stored in SQLite3 databases. At a configurable interval, wview will utilize the archive history and current conditions to generate weather images (buckets, dials and graphs) and HTML web pages based on user-configurable HTML templates. XML, PHP, Perl, Python, etc. template files can also be defined using wview meta-tags which will be replaced with current values when generated by wview.

pure shell

curl -d 'temp=20&lat=49.11&long=24.11&alt=200' --user 'username:****'

OpenWeatherMap weather station prototype

OpenWeatherMap simple GSM-based autonomous sensor

DIY weather station projects

Arduino based: