Weather Plugin

From MiOS
Revision as of 20:31, 5 September 2009 by Guessed (Talk | contribs)

Jump to: navigation, search
WeatherDevice.png

Contents

Introduction

The Weather plugin is a Luup component that captures, displays, and periodically updates Temperature and Humidity data based upon Vera's current Location.

How does it work

The plugin uses the Latitude/Longitude values configured in Vera's Location settings, and data provided by the Unofficial Google Weather service, to retrieve:

  • Temperature - The Current temperature
  • Low Temperature - The estimated low temperature
  • High Temperature - The estimated high temperature
  • Humidity - The estimated humidity

Each of these values is presented as a Child Device of the Weather plugin, implementing the respective UPnP Service. They're all set to be visually grouped in the UI/Presentation.

Behind the scenes, the plugin uses Vera's Latitude and Longitude values, derived from the User-specified Location settings, to help form a URL to the Google Weather API. This URL call looks like:

http://www.google.com/ig/api?weather=,,,40980465,-72212690

The plugin selects elements from the XML output, and translates them into values that are set upon the respective Child Devices.

The Weather plugin retrieves the Weather data at startup, and again every 30 minutes after that.

Installation

  1. Configure the physical location of your Vera, using the Location settings UI
  2. Download the ZIP file Weather.zip from document
  3. Expand the ZIP File to extract the 3x files, their names should be exactly as follows:
    • D_Weather.xml
    • S_Weather.xml
    • I_GoogleWeather.xml
  4. Goto Devices --> Luup plugins --> Luup files
  5. Click the (Browse) buttons on the right, and enter the 3 filenames references above.
  6. Select the checkbox "[x] Restart Luup after upload" and click (Go)
  7. ... wait whilst it uploads and restarts the Lua engine ...
  8. If successful, you'll see the 3x files listed in the System.
  9. Navigate to Devices, scroll to the bottom at the Add device form.
  10. Type "D_Weather.xml", and click (Add Device), type in a name of your choice against the device then click (Save)
  11. At this point you should have a working Weather component

Errors

  • The Weather device requires Location data to start
If the Vera's Location has not been configured by the user, then the Weather plugin will not startup, and will indicate an error to the User in Vera's Device pane.
  • The Weather device is dependent upon data from Google's Weather API
Through the discussion thread below we've discovered that some of the values, such as the Humidity, for a given Location are extrapolated from nearby Weather stations. This process isn't 100% accurate and can lead to anomalies. A future version of the Weather Plugin will provide an override for the Location so that users can specify ZIP Codes (etc) to get more accurate information. This is awaiting some functionality in the Luup and presentation/UI layers of Vera.
  • The values don't display in Metric
Vera's luup API's, as of 1.0.900 don't support retrieval of the User-specified Temperature format in Vera's Location settings. When this API is added, we can make changes to have the temperature values presented in that format.

Discussion

The Weather plugin is discussed in this forum thread, along with a lot of it's development history:

http://forum.micasaverde.com/index.php?topic=1435.0

Feel free to ask questions on that thread, as well as make any suggestions & contributions to the future development of the Weather plugin's functionality.

Personal tools