About Cumulus

Cumulus is free software for retrieving, storing and displaying data from an electronic Automatic Weather Station (AWS). It offers a lot of features, here are the key ones:

Features of Cumulus Software

If you have not used Cumulus before, and are wondering whether to explore it further, this article is for you,

If there is information that you would like to see added to this page, either sdd it yourself (you need to register), or put your suggestion in the correct Support Sub-Forum. Thank you.

Key Features

  • Free for personal and non-profit use, (Steve Loft said "but a donation would be appreciated if you continue to use Cumulus after trying it", since he retired from developing Cumulus, the donation option has ended)
  • Cumulus 1 runs on Windows XP, Windows Vista, Windows 7, Windows 8.1, and Windows 10
  • Cumulus 2 and 3 (MX) runs on the last two Windows versions plus all devices running a Unix type environment (such as Linux and Mac OS X).
  • Cumulus 1 Supports Davis Vantage Pro and Pro2; Oregon Scientific WM918, WMR-918, WMR-928, WMR-968 weather stations; EasyWeather stations (MyDEL, Nevada, Watson, Fine Offset, WH1080, WH1081, W8681, FWS-20 etc); La Crosse WS-2300, and other models in the WS23xx range.

Cumulus MX adds further modern stations to the list see Supported Devices page for up-to-date details.

  • Easy to use, clean display [Cumulus 1 has display/editing screens appearing directly on PC running the software, Cumulus MX generates a user interface that is viewed (on your local network) using a browser]
  • Choice of meteorological day - midnight to midnight or 0900 to 0900 (optionally during summertime only 1000 to 1000)
  • Cumulus 1 offered real time web display of wind speed and direction using Silverlight software that is no longer functional
  • Automatic upload of data to web sites, Weather Underground, CWOP/APRS, PSW Weather/WeatherForYou/HAMweather, WOW, Twitter
  • Ready-made web template pages supplied, or build your own using web tags
  • Configurable alarms for various conditions
  • Sunrise, sunset, and (Cumulus 1 only) moon phase display
  • Cumulus 1 can display selected historical data for any given month, year, or other period
  • Cumulus MX saves data from past months and can output regularly to a database (either standard or customised)
  • Graphical display selected from Cumulus 1 main screen of historical data for any time period
  • Generation of xAP home automation weather reports
  • Comprehensive help file included
  • Free support available in the support forum

What does it look like

For Cumulus 1, all the screen shots are shown on Cumulus_Screenshots page.

For Cumulus MX, most of the standard web pages look the same as those for Cumulus 1. MX also provides an admin interface, that is used for 3 main purposes:

  1. Entering all the settings
  2. Editing the extreme records, and viewing/editing the log files
  3. Looking at the weather readings and derivatives, there is a summary dashboard (a replacement for Cumulus 1 main screen, this is where alarms are heard), and screens for current conditions, today/yesterday, this month/this year/monthly all years, monthly reports, yearly reports.

Building up a library of screen shots for MX is planned, when development slows down (so it is not a moving target). Meanwhile, a number of the MX screenshots, as they used to be, is currently still available at CumulusMX-with-a-home-weather-station

Periodic Actions

Reading Weather Station

When Cumulus software (of any flavour) interrogates the weather station for more readings, (which is done very frequently) it compares the readings against those read earlier, so it can maintain a whole series of extremes (maximum and minimum in each day, each month, that month in all years, each year, and all-time).

Real Time Interval

These actions are optional, you need to enable the various possible actions at a real time interval, as well as selecting the time interval between the end of one set of actions and the start of the next set of actions.

Standard Upload Interval actions

At this interval, and you can change the time between these actions, Cumulus (of all flavours) will process templates that create web pages, upload other files, and (MX only) run SQL to update a database for you.

Logging Interval

This is when Cumulus stores, the set of readings it has processed, in a detailed log created specially for each individual month. It does NOT record the maximum and minimum since the last log entry, it just a snapshot of the readings at that logging time, so it is unlikely to capture extremes.


End of Day Actions

Cumulus software of all flavours as already mentioned can support various times when the meteorological days end. As the new day starts, Cumulus does a lot of actions, here is the list for MX:

Entering Day Reset (message about current day of month)
Day Reset (message about date ending, time shown as 00:00:00 because time not defined, not because it is midnight, it might be 9am or 10am)
Run EOD standard or custom SQL (the SQl is updated every time readings are updated)
Custom Http EOD call
Create line to append to dayfile.txt (this does hold extremes for each day)
Open dayfile.txt
Update dayfile.txt
Read Rain Counter
Update today.ini with yesterday's rain
Write yesterday.ini
Create NOAA monthly
Save NOAA monthly
Create NOAA yearly
Save NOAA yearly
Run EOD External Program
Processs any Extra Files with EOD option selected
Day reset complete
Read readings from weather station to assign to start of new day
Create daily backup folder to hold files as at start of new day
Copy all files from data folder (plus Cumulus.ini) into new daily folder
Resume normal operation of reading station, processing real-time and standard time interval functions
In the first Extra Files with standard interval FTP upload, add upload of NOAA files and Extra Files processed at end of day

You will see that if you set your standard logging interval to 10 minutes, and this end of day action was triggered at 10am, it would not finish until after 10:10am, so it is crucial not to have a power cut or anything else affecting the running of Cumulus throughout that period. Do not stop Cumulus after it starts processing end of day. For early versions of Cumulus 1, there was extra processing in the same interval before roll-over, so you could not restart Cumulus just before rollover was due.

Special Features

  1. A key feature of Cumulus software, although only a minority of users utilise this feature, is its ability to mimic what many professional meteorologists do by starting a new meteorological day at 9am GMT (or your local time) with the option of either still using 9am in summer time (Daylight Saving Time - DST) or keeping to 9am GMT in summer by changing at 10am DST. This latter option preserves 24 hour long days even when the clocks change. Alternatively it can start each new day at midnight, and have shorter or longer days when the clocks change, this is the option that is slightly more popular.
  2. Another feature of Cumulus is that it can work with a number of different AWS, see suitable AWS list, most of these connect by a wire to the device that you are running Cumulus on. A side-effect of this is that it it tries to use as much common code that will work with various makes as possible, and is not specifically designed for, nor ideally suited to, any one make.
  3. Another key feature is that Cumulus reads the basic temperature, humidity, pressure, rain, and wind, readings from the AWS, but its outputs include many derived weather values.
    • Regardless of whether the AWS can calculate the highest and lowest values, Cumulus can (and for 9am to 9am if required),
    • it can combine the temperature it reads and the wind strength it reads to calculate current wind chill and also calculate the greatest wind chill in a day, month, year, or all-time,
    • it can also take into account humidity to calculate apparent temperature, Heat Index and Humidex values
    • Cumulus can count the hours when the temperature is below (adjustable) 7 degrees Celsius and total that for a season as Chill_Hours", you can tailor which month the count restarts each year.
    • It can track the number of degrees divergence and time for each divergence to calculate "Heat_Degree_Days" and "Cool_Degree_Days".
    • It can track the duration for each observed wind speed and calculate wind run for each day, it can report the day each month (or year, or all-time) with the highest daily wind run
    • Cumulus also tracks the actual rainfall over each 5 minutes and uses that to calculate a rain rate; it can report the highest hourly rainfall in a day, a month, a year or all-time; and it can report the wettest day in a month, year or all-time.
  4. Cumulus also includes a weather diary where you can record (in free text) any aspect of the weather for a day that your AWS does not capture, this diary includes ability to record for each day if snow is falling, if snow is lying, the snow depth, and from the last it can calculate a snow index for a month or for a winter.
  5. Cumulus also produces monthly reports summarising the weather each day of that month, and a yearly report summarising the weather each month of that year.
  6. Cumulus includes some templates that it processes to generate web pages, and provides hundreds of web tags that you can incorporate into templates of your own that Cumulus will process into scripts or web pages for you; there is a choice of how frequently this processing happens
  7. Cumulus also has the ability to launch external processes, at its "real-time" processing interval, its "normal updating" interval or as it is processing the daily "rollover" to a new meteorological day.

Flavours

Two flavours of Cumulus are available for download from this page, another flavour was briefly available.

Cumulus 1

This is no longer developed and runs only on a device using the Windows operating system. There are large numbers of web sites (both private and public) using Cumulus 1 and it is probably the simplest version to install. However, there is no source available, and no author knowledge available (other than what appears at FAQ for Cumulus 1 and other pages in this Wiki.

The current stable version is 1.9.4 (28 November 2014). If you want to use it, download patch 2 (28 Jan 2020) as that patch has changed the drop down year selectors to allow selection of future years (to 2030) as well as past years. The non-patched version will accept any dates, but the drop-down selectors end run from 2000 to 2020 only.

Cumulus 2

This is no longer available as it never worked satisfactorily.

Some of its features were incorporated into Cumulus 1.9.x and from there into Cumulus MX.

Some other ideas like standardising on ISO format for dates; separating the engine and admin interface; and a few more; formed the basis for Cumulus 3.

So despite Steve Loft feeling he wasted a lot of time working on Cumulus 2, as only a small number of users did use it, most of the ideas he worked on then have now been given an ongoing existence in MX! Plus the design of Cumulus 3 (MX) is much more robust, because it has learnt from the pitfalls of Cumulus 2

Cumulus 3 aka MX

Cumulus MX is newer, and still being actively developed, it will run on a number of operating systems and has the advantage that it consists of an engine that reads the AWS, does the calculations, and creates a web server. There is then a separate user interface that runs in this web server, and lets you see a number of dashboard type web pages and edit settings. This separate user interface can run on any device connected to your local network (LAN) or wifi, as it just just needs a private link to the device running MX. Despite MX being more complicated to get to know, it does offer more features and can connect to more AWS than Cumulus 1. This is not the place to list all extra features, but it can output to a database, it maintains its file of extremes for a month and year beyond the end of those periods, and adds the ability to process a file only at end of each day.

Outputs to external web sites

Cumulus will store full weather records, along with daily and all-time records, and graphical data. Cumulus can upload its data to a web server and comes packaged with template web pages for this purpose. Cumulus also supports automatic uploads to Weather Underground, PWS weather, Weatherbug, WOW, CWOP/APRS, Windy.COM, Awekas and Weathercloud.

Releases after 3072 include an interface to MQTT which allows users to feed data to their home automation systems (e.g. you can feed internal temperatures from your weather station to your home automation system to control your central heating).

A variety of example screen shots are available for Cumulus 1, and those for MX will be added in the future.

Supported Devices

This varies between Cumulus 1 and MX.

There is a full list of Supported Devices



Web pages

Steve Loft once described the web pages his wife designed and he provided with Cumulus with these words: "They exist because they're our web pages, and they're really only included with Cumulus as examples of how the web tags work. It never occurred to me that most people would simply use the supplied examples instead of creating their own pages!"

Web pages included:

  • Current Conditions
  • Gauges (in Cumulus 1 with real time wind display, in MX using Steel Series dial representations)
  • Current Meteorological Day: Maxima and Minima
  • Previous Meteorological Day: Maxima and Minima
  • This month and this year: Maxima and Minima
  • Monthly Records: Maxima and Minima
  • Monthly-all-time Records: Maxima and Minima
  • All Time Records: Maxima and Minima
  • Trend Graphs (in Cumulus 1 the graphs shown are generated by the software as images; in MX the software generates the figures for plotting in Json files, the graphs are then drawn from those figures)

The standard menu navigation allows for inclusion of both a support forum link and a link to a webcam. Custom web pages can be achieved through the use of web tags added to any HTML/CSS layout.

Help and Support

Cumulus 1 includes a comprehensive Help File, this can be downloaded from here if you are using MX, but it is designed to be used on windows operating system.

To read more about this Wiki see About Cumulus Wiki.

There are pages within this Wiki contents page that discuss:

  • Frequently Asked Questions for Cumulus 1 (although it has some applicability to MX and does discuss weather station positioning; and a new one for Cumulus MX (only rough outline at present)
  • each of the configuration and log files,
  • list the web tags available, and how to use input and output parameters with them
  • give guidance for setting up a web site whether using the provided template pages, or ones you have edited/created, plus other "web tips"
  • some 3rd party apps and tools that can be run on your web site
  • weather terminology, explaining the various terms that Cumulus uses, the way that derivatives are calculated, and the ways that your weather station can measure what it reports to Cumulus

Further help, support, and discussion is available on our Forum. Anyone can read the forum. You will need to register to be able to see attachments or post to the forum. Please submit bug reports and requests for enhancements there. You will find a guide to how to capture a what is on your screen in this wiki, as that can be useful when requesting support. You may also be asked to supply various files to help diagnose your problem. Do that by using Zip to compress all the requested files, then below the window where you post your response click on the tab labelled attachments for further instructions.

Donations & Sandaysoft

Since Steve Loft stopped developing Cumulus, there has been no mechanism for donating.

a note from the original developer...

Sandaysoft was the home of Cumulus, software to help you make the most of your weather station. When I wrote it I was located on the island of Sanday, in Orkney, off the north coast of Scotland in the UK. Cumulus is donationware. If you like the software and find it useful, please make a contribution towards the continuing development of Cumulus.

I rely on your donations to allow me to buy the software that I need to continue improving Cumulus. 100% of any donation received goes towards software development, either towards the cost of new development tools or the cost of hosting this site. I and my wife didn’t make a profit from Sandaysoft - when I was writing Cumulus 1, 2, and 3, I had a full-time job and Sandaysoft was one thing we did in our spare time.

Donate via PayPal THIS LINK MAY NO LONGER WORK

Steve Loft