
pywws
*****

[image]

Python software for USB Wireless WeatherStations


Introduction
============

pywws is 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.
I assume any model that is supplied with the EasyWeather Windows
software is compatible, but cannot guarantee this.

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 services such as Weather Underground and post
messages to Twitter.

I have written this software to meet my needs, but have tried to make
it adaptable to other people's requirements. You may want to edit some
or all of the modules, or write some new ones, to get it to do exactly
what you want. One of the reasons for using Python is that it makes
such alterations so easy. Don't be afraid, just jump in and have a go.


Requirements
============

The software you'll need to run pywws depends on what you plan to do
with it. In particular, there is a choice of USB library, to suit
what's available on different operating systems.

   * Python version 2.4 or higher (note: Python 3 is not yet
     supported)

   * USB library option 1:

     * libusb version 0.1.12 (note: libusb 1 is not supported)

     * PyUSB version 0.4.x

   * USB library option 2:

     * hidapi

     * cython-hidapi

     * cython

   * For graph drawing:

     * gnuplot v4.2 or higher

   * For secure website uploading (sftp)

     * paramiko

     * pycrypto

   * For Twitter updates:

     * tweepy

     * simplejson

   * To create new language translations:

     * gettext


Getting a copy of pywws
=======================

The simplest way to obtain pywws is to download a zip or tar.gz file
from the download page and then extract the files into a convenient
directory on your computer. These "archive" files contain a snapshot
release of the software - a new one is released every few months.

If you'd like to try the latest version of pywws, please use git to
clone the repository. After doing so you'll need to use make to
compile the documentation and language localisation files.


Documentation
=============

Documentation is included with pywws downloads, and is also available
online. A good starting place is the how to get started guide which
describes in more detail how to install pywws.

If you have questions not answered in the documentation, please join
the pywws Google mailing list / discussion group and ask there.


Contents
--------

* Licence
* Change log
* User guides
  * How to get started with pywws
  * How to set up 'hourly' logging with pywws
  * How to set up 'live' logging with pywws
  * How to configure pywws to post messages to Twitter
  * How to make a language file for pywws
  * weather.ini - configuration file format
* Python programs and modules
  * Hourly
  * LiveLog
  * Reprocess
  * TwitterAuth
  * SetWeatherStation
  * TestWeatherStation
  * USBQualityTest
  * EWtoPy
  * pywws.Tasks
  * pywws.LogData
  * pywws.Process
  * pywws.calib
  * pywws.Plot
  * pywws.WindRose
  * pywws.Template
  * pywws.Forecast
  * pywws.ZambrettiCore
  * pywws.Upload
  * pywws.ToTwitter
  * pywws.toservice
  * pywws.YoWindow
  * pywws.WeatherStation
  * pywws.device_cython_hidapi
  * pywws.device_pyusb
  * pywws.DataStore
  * pywws.TimeZone
  * pywws.Localisation
  * pywws.calib
  * pywws.conversions
  * pywws.Logger

Indices and tables
------------------

* *Index*

* *Module Index*

* *Search Page*


Credits
=======

I would not have been able to get any information from the weather
station without access to the source of Michael Pendec's "wwsr"
program. I am also indebted to Dave Wells for decoding the weather
station's "fixed block" data.


Legalese
========

pywws - Python software for USB Wireless WeatherStations.http://jim-easterbrook.github.com/pywws/Copyright (C) 2008-12 Jim Easterbrook jim@jim-easterbrook.me.uk

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA
