Weewx

Weather server software

About weewx

weewx is software program, written in Python, which interacts with your weather station to produce graphs, reports, and HTML pages. It can optionally publish to the WeatherUnderground, PWSweather.com, or CWOP. It uses modern software concepts, making it simple, robust, and easy to extend. For an example station see Hood River West.

weewx runs under Linux (Ubuntu and SuSE) as well as Mac OS X. It currently supports the Davis VantagePro and VantageVue weather stations, using the serial, USB, or WeatherLinkIP interfaces.

Key features:

weewx logo

News

Restrictions

Because weewx is still young, it has some restrictions. Among them:

History

I wrote weewx over the winter of 2008-2009 for two reasons: it was a wet and miserable winter here in Oregon with not much else to do, so there was no good reason not to, and because I wanted a simple, easy-to-understand server to run my Davis VantagePro2 weather station on a Linux box. I had been using wview, which is a high-performance and feature rich system authored by Mark Teel with lots of users. Written in C, it's an efficient system that can run on very underpowered boxes. In exchange, it's huge (nearly 50,000 lines of code), tightly integrated in with its companion library, radlib (another 14,000+ lines), and very complex, making it difficult to understand and reliably customize. I wanted something more modern and much, much simpler.

Having made a career in C++ and Java, I was also interested in some more modern languages, so I thought I'd try either Python or Ruby (although, truth be told, the roots of Python are nearly as old as C++!). I ended up picking Python because its libraries are more mature and there are many more choices for third party libraries.

Weewx weighs in at well under 6,000 lines of code (many of them docstrings). It also has another 3,500 comment lines. Because it is pure Python, it requires no makefiles, no builds, no special installs. It offers very powerful configuration and templating options, as well as an internally extensible engine, making it easy to customize. Its internal modular design and use of modern exception handling make it very robust and difficult to crash. It is also architecturally very simple and easy to understand. However, to be fair, at this point it supports only the  Davis VantagePro family of weather station.

See the Users' Manual for more details.

weewx on SourceForge

Weewx is a SourceForge project. A Subversion repository is available, should you wish to try the very latest version. To get a working copy of the current main development trunk:

svn co https://weewx.svn.sourceforge.net/svnroot/weewx/trunk

Rather than clutter the main trunk, work on major releases is usually done in an SVN branch off of:

weewx.svn.sourceforge.net/svnroot/weewx/branches

Users Group

There is Users' Group on Google: http://groups.google.com/group/weewx-user