WeeWX overview - weewx/weewx GitHub Wiki

WeeWX overview

WeeWX is a free open source software program written in Python which interacts with your weather station in order to produce graphs, reports, and HTML pages. It can optionally publish to a variety of external Internet weather sites or personal web servers.

WeeWX is very configurable and extensible, permitting the user to add new features and configure their desired functionality as much as possible. The "weectl extension" utility is provided to make it easier to add, delete, or upgrade additional functionality as desired.

WeeWX can run on top of basically any unix-like operating system that has a modern version of python3.

A Basic WeeWX System

A default minimal WeeWX system consists of the following:

  • the WeeWX software itself
  • a weather station connected to the WeeWX computer via:
    • serial port
    • usb port
    • network connection
  • the installed webserver of your choice

Basic Concept of Operations

The basic concept of operations is:

  • WeeWx periodically queries the hardware for raw station data
  • it then reformats that data and stores it in the WeeWX database
  • and periodically generates resulting web pages and images

WeeWX supports two types of database, sqlite3 and MySQL, and can integrate with any desired webserver.

Terminology

There is some WeeWX terminology to be aware of:

  • driver - communicates with the physical station hardware
  • service - does various core functions with the data
  • extension - user-supplied code that extends WeeWX to do even more things
  • skin - a set of web templates to generate a particular web dashboard
  • uploader - generally an extension that sends data to an external site or service

Core WeeWX Functionality

Supported Weather Stations

WeeWX supports literally dozens of weather station models from many vendors via the following drivers:

  • AcuRite
  • CC3300
  • FineOffset
  • Simulator
  • TE923
  • Ultimeter
  • Vantage
  • WMR100
  • WMR300
  • WMR9x8
  • WS1
  • WS23xx
  • WS28xx

Depending on the underlying hardware vendor, each driver can potentially support multiple hardware models.

The core WeeWX drivers support over 100 different hardware models.

Built-in optional features

Optionally, WeeWX may be configured to:

  • periodically sync your generated web pages and images to an external site via:
    • RSYNC
    • FTP
  • upload to a variety of Internet weather sites including:
    • AWEKAS
    • CWOP
    • PWSWeather
    • WOW
    • WeatherUnderground
  • register your station to the online StationRegistry map

Built-in skins

WeeWX provides a few built-in skins to create dashboards with different look-and-feel:

  • Seasons - the current default skin
  • Smartphone - one variety of a skin for a smart phone
  • Mobile - another variety of a skin for mobile devices
  • Standard - the original default skin

User-supported additional functionality

User-supported Drivers and Extensions

Even more station hardware types can be supported by installing a user-supported driver or extension.

At this writing there are over 80 different items available according to the wiki.

User-supported Additional Services

User-supplied services can also be added to make WeeWX do even more.

At this writing there are over 35 such services according to the wiki.

User-supported Skins

User-supported skins can also be added. A 'very' small subset of the known user skins is available in the wiki.

Reference

Extensive documentation is available in:

  • the various guides link
  • the wiki link
  • the FAQ link
  • the User Forums currently hosted in Google Groups link
  • and in the weewx.conf file comments

For more details regarding the items above, some links include:

  • supported stations - see the Hardware Guide link
  • user-supplied drivers - see the Wiki link
  • user-supplied services - see the Wiki link
  • user-supplied uploaders - see the Wiki link
  • user-supplied skins - see the Wiki link