home-assistant.io/source/_components/sensor.wunderground.markdown
2017-09-25 22:26:17 +02:00

199 lines
8.8 KiB
Markdown

---
layout: page
title: "Weather Underground (WUnderground)"
description: "Instructions how to integrate Weather Underground (WUnderground) Weather within Home Assistant."
date: 2016-08-18
sidebar: true
comments: false
sharing: true
footer: true
logo: wunderground.png
ha_category: Weather
ha_release: 0.27
ha_iot_class: "Cloud Polling"
---
The `wunderground` platform uses [Weather Underground](http://www.wunderground.com) as a source for current weather information.
<p class='note warning'>
Obtain a WUnderground API key [here](https://www.wunderground.com/weather/api). A free account allows 500 requests per day and also a maximum of 10 per minute. See details [here](https://www.wunderground.com/weather/api/d/pricing.html).
</p>
To add Wunderground to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: wunderground
api_key: your_api_key
monitored_conditions:
- alerts
- dewpoint_c
```
Configuration variables:
- **api_key** (*Required*): The API key for Weather Underground. See above for details.
- **pws_id** (*Optional*): You can enter a Personal Weather Station ID. The current list of Wunderground PWS stations is available [here](https://www.wunderground.com/weatherstation/ListStations.asp). If you do not enter a PWS ID, the current location information (latitude and longitude) from your `configuration.yaml` will be used to display weather conditions.
- **lang** (*Optional*): Specify the language that the API returns. The current list of all Wunderground language codes is available [here](https://www.wunderground.com/weather/api/d/docs?d=language-support). If not specified, it defaults to English (EN).
- **latitude** (*Optional*): Latitude coordinate to monitor weather of (required if **longitude** is specified). Defaults to coordinates defined in your `configuration.yaml`.
- **longitude** (*Optional*): Longitude coordinate to monitor weather of (required if **latitude** is specified). Defaults to coordinates defined in your `configuration.yaml`.
- **monitored_conditions** array (*Required*): Conditions to display in the frontend. The following conditions can be monitored.
- **alerts**: Current severe weather advisories
- **dewpoint_c**: Temperature in Celsius below which water droplets begin to condense and dew can form
- **dewpoint_f**: Temperature in Fahrenheit below which water droplets begin to condense and dew can form
- **dewpoint_string**: Text summary of dew point
- **feelslike_c**: Feels like (or apparent) temperature in Celsius
- **feelslike_f**: Feels like (or apparent) temperature in Fahrenheit
- **feelslike_string**: Text summary of how the current temperature feels like
- **heat_index_c**: Heat index (combined effects of the temperature and humidity of the air) in Celsius
- **heat_index_f**: Heat index (combined effects of the temperature and humidity of the air) in Fahrenheit
- **heat_index_string**: Text summary of current heat index
- **elevation**: Elevation in feet
- **location**: City and State
- **observation_time**: Text summary of observation time
- **precip_today_in**: Total precipitation in inches
- **precip_today_metric**: Total precipitation in metric units
- **precip_today_string**: Text summary of precipitation today
- **precip_1d_mm** [<sup>[1d]</sup>](#1d): Forecasted precipitation intensity in millimeters
- **precip_1d_in** [<sup>[1d]</sup>](#1d): Forecasted precipitation intensity in inches
- **precip_1d** [<sup>[1d]</sup>](#1d): Forecasted precipitation probability in %
- **pressure_in**: Atmospheric air pressure in inches
- **pressure_mb**: Atmospheric air pressure in millibars
- **pressure_trend**: Atmospheric air pressure trend signal (+/-)
- **relative_humidity**: Relative humidity
- **station_id**: Your personal weather station (PWS) ID
- **solarradiation**: Current levels of solar radiation
- **temperature_string**: Temperature text combining Fahrenheit and Celsius
- **temp_c**: Current temperature in Celsius
- **temp_f**: Current temperature in Fahrenheit
- **temp_high_record_c**: Maximum temperature measured in Celsius
- **temp_high_record_f**: Maximum temperature measured in Fahrenheit
- **temp_low_record_c**: Minimal temperature measured in Celsius
- **temp_low_record_f**: Minimal temperature measured in Fahrenheit
- **temp_high_avg_c**: Average high for today in Celsius
- **temp_high_avg_f**: Average high for today in Fahrenheit
- **temp_low_avg_c**: Average low for today in Celsius
- **temp_low_avg_f**: Average low for today in Fahrenheit
- **temp_high_1d_c** [<sup>[1d]</sup>](#1d): Forecasted high temperature in Celsius
- **temp_high_1d_f** [<sup>[1d]</sup>](#1d): Forecasted high temperature in Fahrenheit
- **temp_low_1d_c** [<sup>[1d]</sup>](#1d): Forecasted low temperature in Celsius
- **temp_low_1d_f** [<sup>[1d]</sup>](#1d): Forecasted low temperature in Fahrenheit
- **UV**: Current levels of UV radiation. See [here](https://www.wunderground.com/resources/health/uvindex.asp) for explanation.
- **visibility_km**: Average visibility in km
- **visibility_mi**: Average visibility in miles
- **weather**: A human-readable text summary with picture from Wunderground.
- **weather_1d** [<sup>[12h]</sup>](#12h): A human-readable weather forecast using imperial units.
- **weather_1d_metric** [<sup>[12h]</sup>](#12h): A human-readable weather forecast using metric units.
- **weather_1h** [<sup>[1h]</sup>](#1h): Weather conditions in 1 hour. (e.g. "Thunderstorm" etc.)
- **wind_degrees**: Wind degrees
- **wind_dir**: Wind direction
- **wind_gust_kph**: Wind gusts speed in kph
- **wind_gust_mph**: Wind gusts speed in mph
- **wind_gust_1d_kph** [<sup>[1d]</sup>](#1d): Max. forecasted Wind in kph
- **wind_gust_1d_mph** [<sup>[1d]</sup>](#1d): Max. forecasted Wind in mph
- **wind_kph**: Current wind speed in kph
- **wind_mph**: Current wind speed in mph
- **wind_1d_kph** [<sup>[1d]</sup>](#1d): Forecasted wind speed in kph
- **wind_1d_mph** [<sup>[1d]</sup>](#1d): Forecasted wind speed in mph
- **wind_string**: Text summary of current wind conditions
All the conditions listed above will be updated every 5 minutes.
### {% linkable_title Forecasts %}
_12 hour forecasts_
Monitored conditions marked above with <a name="12h">[12h]</a> are 12 hour forecasts. To get a forecast for different period/daytime replace the `_1d_` part of the sensor name. e.g. `weather_2n` will give you forecast for tomorrow night. Valid values for day are `1` to `4` and valid values for daytime are `d` or `n`.
_Daily forecasts_
Conditions above marked with <a name="1d">[1d]</a> are daily forecasts. To get forecast for different day, replace the number
in `_1d_` part of the sensor name. Valid values are from `1` to `4`.
_Hourly forecasts_
Conditions marked with <a name="1h">[1h]</a> are hourly forecasts. To get forecast for different hour, replace the number
in the `_1h_` part of the sensor name with `1` to `36`. E.g. `weather_24h` will give you weather in 24 hours.
### {% linkable_title Additional examples %}
#### Daily forecast
```yaml
sensor:
- platform: wunderground
api_key: your_api_key
monitored_conditions:
- weather_1d_metric
- weather_1n_metric
- weather_2d_metric
- weather_2n_metric
- weather_3d_metric
- weather_3n_metric
- weather_4d_metric
- weather_4n_metric
group:
daily_forecast:
name: Daily Forecast
entities:
- sensor.pws_weather_1d_metric
- sensor.pws_weather_1n_metric
- sensor.pws_weather_2d_metric
- sensor.pws_weather_2n_metric
- sensor.pws_weather_3d_metric
- sensor.pws_weather_3n_metric
- sensor.pws_weather_4d_metric
- sensor.pws_weather_4n_metric
```
![Daily Forecast](/images/screenshots/wunderground_daily_forecast.png)
#### Weather overview
```yaml
sensor:
- platform: wunderground
api_key: your_api_key
monitored_conditions:
- temp_high_record_c
- temp_high_1d_c
- temp_c
- temp_low_1d_c
- temp_low_record_c
- precip_1d
- precip_1d_mm
- wind_kph
- wind_1d_kph
- alerts
group:
weather_overview:
name: Weather overview
entities:
- sensor.pws_weather_1d_metric
- sensor.pws_temp_high_record_c
- sensor.pws_temp_high_1d_c
- sensor.pws_temp_c
- sensor.pws_temp_low_1d_c
- sensor.pws_temp_low_record_c
- sensor.pws_precip_1d
- sensor.pws_precip_1d_mm
- sensor.pws_wind_kph
- sensor.pws_wind_1d_kph
- sensor.pws_alerts
```
![Weather overview](/images/screenshots/wunderground_weather_overview.png)
<p class='note warning'>
Note: While the platform is called “wunderground” the sensors will show up in Home Assistant as “PWS” (eg: sensor.pws_weather).
</p>
Additional details about the API are available [here](https://www.wunderground.com/weather/api/d/docs).