Software

From Cumulus Wiki
Jump to navigationJump to search

Cumulus MX

a cross platform version of Cumulus software that runs on Microsoft Windows, all varieties of UNIX and Linux (including the Raspberry Pi Operating System), and Mac OS X.

NOTE relating to MX Release v3.9.1 or later: On Linux/RPi/macOS, Mono version 5, or 6, is needed for CreateMissing.Exe, ExportToMySQL.exe, and CumulusMX.exe. Mono v4 is subject to random crashes.


MX Usage Restriction

Both the mandatory MX Interface, and the optional default MX web site, include the HighStock product.

Are you using MX for a non-profit organisation, personal website, or school project? Then download MX and start using it with Highcharts today.

Are you representing any commercial organisation running a facility that others use? If so, then you cannot use Cumulus MX to share weather data on behalf of your organisation without buying a licence from the High Charts organisation.

HighCharts rules for usage of their products are described on their licence purchase web page, and it is your responsibility to ensure compliance.

Help with ‘Stable’ MX releases

If you need any help with Cumulus MX, please first consult, in this Wiki, What_to_do_when_I_have_a_problem_with_MX.

It is recommended you check you have complied with any instructions in the announcement for the latest MX release in the forum before installing it (to see what changes affect you, and what actions you may need to take).

If you wish to research the documentation on MX to try to resolve your problem yourself, use the entry point of the Category:Cumulus MX page for pointers to other Wiki pages connected with MX that may help.

If you cannot answer your questions from information in this Wiki (and MX changes so quickly any information here can be very out of date), then use the correct MX support forum to see if others have answers.

Upgrading

We strongly advise upgrading to the latest release:

  • You may wish to wait a few days after a new release comes out, just in case a new release has some bugs
    • MX is extremely complex, the developers work on MX edits in their spare time, and do not have the full set of sensors that MX can support, so pre-release testing is never perfect
  • By switching to latest release, you gain any extra functionality it may offer (although it may not be useful to you), but more importantly you gain fixes of bugs your existing release may have
  • Also the developer can more easily offer support if you are using the build he most recently released.

There are interdependencies between different files in the MX release distribution:

  • Therefore you must always install into your MX folders, every file included in the download zip.
    • You can take a back-up of your existing installation before you copy in any new files, that will provide you with the ability to regress to the earlier release, if the new release does cause you an issue
  • If you customise any file that is in the distribution, either give the new file a new name (I add a prefix of "_" in front of files I edit) or place your tailored version in a different folder
    • Either approach will ensure your tailored files are not overwritten by files from the download, and let you compare your tailored file with the new file in the download to see if you need to tweak your tailored file
  • It is strongly recommended that you install all files in the download for a new release of MX directly over your existing installation.
    • You may end up with some files no longer needed by the new release, left over from older release, but this is better than risking missing some vital files
There is an installer utility available to help with upgrading.
  • Important, please read all of the release notes (in the appropriate forum announcement threads) for the builds since the version you are upgrading from, especially noting when there are references to necessary once-off actions.
  • If you have never upgraded before, or you are currently running a fairly old release of MX, you are advised to read the Updating MX to new version page in this Wiki,
    • overwriting an existing installation will add any new files, but it won't remove obsolete files, and sometimes replacement files have different names to their predecessors
    • (a few builds will include one-off actions, e.g. rewriting Cumulus.ini or changes to columns in database tables, in these cases you probably need to upgrade in multiple steps, to ensure these special actions are done at the particular release versions where the actions are supposed to be done).
  • If you are upgrading from a previous version of the legacy Cumulus 1, then you might want to read Migrating from Cumulus 1 to MX page; and if you need more justification read Compare legacy Cumulus and MX page
    • However, it is likely that information on those pages was written for earlier MX releases, and might be out of date, so like many other people you might want to ask in the correct MX support forum to see if others have more up-to-date advice.

Note by Steve Loft: you may find that anti-virus software flag a new release of Cumulus as a ‘threat’, for a few days or weeks after a new version has been released, even though it does not actually contain a virus of any kind. This is due to a system they call ‘reputation’ where they automatically block any versions of software that have recently been released. You may want to consider complaining to the provider of your anti-virus software about this ridiculous system, or better still, use some better anti-virus software.

Current Release

Latest build distribution download

~ Download Cumulus MX v3.19.2 build 3195, 20-July-2022

Raspberry Pi Image

~ Download Raspberry Pi Image for Cumulus MX 3.19.0

As at April 2022, the image includes Raspberry Pi. O. S. 11 "Bullseye" version of Linux.


  1. This is a pre-built disk image file for your first installation onto a Raspberry Pi computer.
  2. Do read the instructions for using this image on the Raspberry Pi Image page to see what is in the image and how to use it
  3. It is of course possible that sometimes the image provided may have issues for you,
    • it is set up so that MX starts running as a service immediately you boot up your Raspberry Pi, rather than letting you first run MX interactively (see MX_on_Linux#Running_MX);
    • it is produced with a Raspberry Pi model 3, so with other models you may need to replace the Mono software included in image, and consider what updating rates your model can support;
    • it is produced using a GB locale and GB time-zone, so that automatically started MX may not initially be running correctly for your locale (however as you need to restart MX after changing settings you should be okay when MX starts recording data).
Please note, this image may not always contain latest MX release, but once you have installed a release of MX on your Raspberry Pi, upgrading is done using main software download link, as none of the other components in the image need to be upgraded (unless the release announcement states that the new release needs a specific version of Mono).

Latest MX Source Code

~ View/download Cumulus MX Current Source Code 

This code base is updated for all releases resulting from development by M Crossley with some contributions from other developers.

Older releases

It is always possible that a new release introduces a bug, and you decide to regress to an earlier release.

Find link to earlier MX release distributions here.

(You can search using the history tab on this Wiki page to see which past builds were made available as Raspberry Pi images, as these are not created for all releases, but there is no way to tell if the old filenames can still be downloaded. Generally, it is easiest to download a different normal MX release distribution over whatever MX release was in the image you downloaded.)

Other utilities

By Mark Crossley

The following download zips do not include the *.dll files ("software libraries") needed to run the respective utility, these are provided in the MX release zip that is stated alongside download link.

If you are using an earlier MX release than that stated, upgrade MX to bring in the new "*.dll" files needed, because the utility will not work with the "software libraries" included with earlier MX releases.

If you are using a later MX release than that stated, check the MX release announcements for all releases since that stated to see if the "software libraries" have been upgraded, if they have then the respective utility because it has been compiled with older versions of the respective .dll files will probably not work. (Sometimes the names of new .dll files are different to the names of the old .dll files, so an upgrade of MX done by copying files over an existing installation will leave the old files there, in that case the utility might still work).

Create Missing

This is a MX utility, by Mark Crossley, to create a new daily summary (dayfile.txt). If you already have a "dayfile.txt", that is renamed, the new file should include individual fields, and lines, missing from your old file.

The utility reads the source values in your month by month (MMMyylog.txt) files as input files. This utility has the ability to calculate many of the derived fields, so will add those derived values to your month by month files as it proceeds. Therefore the utility should be used to add the extra fields for those months where the input file was produced by Cumulus 1 or an earlier release of MX (which might have populated fewer fields or used a different calculation).

~ The CreateMissing.exe v1.2.1 download dated 20 May 2022 (works with release of MX 3.14.0 onwards) is here.

Check compatibility with the MX release you have running as per notes above. (Although earlier releases of "Create Missing" exist on "github.com/cumulusmx/CreateMissing/releases", their software bugs imply they should not be used).

  • Learn about this utility by reading the calculate missing page in this Wiki.
    • Elsewhere on that same page learn when this utility might be useful, and what else you can try.
  • Check in the support forum for information about status of bugs in this utility, at time of last updating this paragraph there was an outstanding issue concerning storing the line in dayfile.txt for the first of some months if your rollover time is not midnight.
  • For full information about solving problems with your dayfile.txt file read the amending daily summary file page.

Usage information by the author of the utility can be found here.

Export To MySQL

A utility, by Mark Crossley, to export content of Cumulus MX month by month (MMMyylog.txt) and daily summary (dayfile.txt) files to a MySQL, or Maria, database server.

~ The ExportToMySQL.exe v1.4.1 download dated 21 June 2022 (works with release of MX 3.18.0) is here.

Check compatibility with the MX release you have running as per notes above. Earlier release zips (and source code) for this utility are available at ExportToMySQL/releases.

Usage information by the author of the utility can be found here.

This new utility replaces the "ExportMySQL.exe" (no "To" in that name) utility included by Steve Loft in his MX beta distributions. That is not compatible with any recent MX releases.

By Steve Loft

Source code for these utilities are not available, therefore they cannot be altered or upgraded.

Utility for Fine Offset Stations

  • Set Logger Interval A utility by Steve Loft to adjust the internal logging interval on Fine Offset stations


Weather Display Converter

This utility was provided by Steve to convert Weather Display log files to Cumulus 1 format, download here.

Please read the readme file in the zip.

There is a forum thread about using this converter with the legacy Cumulus here.


At time of creating this utility, the functionality offered by MX was limited, and this utility was not useful with MX.

Since then, MX has developed and has changed so much, so this utility can be used with MX, but will not support all fields used by MX. It is advised you use #Create Missing (see above) after using this utility to populate the other fields.

If you do find this utility does not work with MX, you may need to manually recreate records, etc. using Cumulus 1, and then Migrate all your files from Cumulus 1 to MX.

WeatherLink Converter

This utility was provided by Steve to convert WeatherLink log files to Cumulus format, download here.

Please read the readme file in the zip.

Third Party Contributions by other Cumulus Users

For files, and add-on's, contributed by Cumulus users, see these Categories:

  1. Category:3rd Party Apps - contributions for various devices,
  2. Category:AddOns - adding extra functionality,
  3. Category:WebTools - for your web server, and
  4. Category:User_Contributions - key contributions from the user community

Current MX Developed from

Cumulus 3 (MX) software was developed as a beta with limited functionality by Steve Loft.

  • Steve Loft previously developed Cumulus 2 (where he tested using the C# language, now used for MX)
  • Steve Loft created the original Cumulus software (now known as legacy cumulus 1) just for his use, before making it generally available, he then developed it over the next decade to include requirements suggested by thousands of users.
  • Steve Loft, the author of Cumulus/Cumulus MX has since fully retired, and stopped providing support, or updates, to any of his software.

Steve's final beta MX

You can download below the final Cumulus 3 beta release, as made available by Steve Loft, and also his subsequent final source code.

If you are able to understand his source code (linked below), and compare it to the latest source code (linked above), you can appreciate the transformation that has taken place in recent years.

  • Cumulus MX v3.0.0 beta build 3043, 20-Jan-2017 Cumulus MX, a cross platform version of Cumulus 3 which runs on Windows, Linux (including the Raspberry Pi) and Mac OS X (Steve Loft - final release), single zip that includes both "CumulusMX.exe" and "ExportMySQL.exe".
  • subsequent updated Cumulus MX Source Code from Steve Loft. He made the following comments, as he handed the project over to "the community":
    • This version of the code is post the last release I made at build 3043 as it includes some extra changes that I have not finalised.
    • My source code is offered as my parting gift, completely without support, in the hope that it might be useful to future developers.
    • My source code is very badly structured due to the 'Frankenstein' way I cobbled it together from various places. Some of it is a machine translation of parts of Cumulus 1.

Legacy releases

See downloads page for full details.

Cumulus 1

Cumulus 1 software was popular, when it went public in 2008, and its usage grew very rapidly in the subsequent decade. Even now (in mid-2022) some people are still using the final release version (and a quite substantial number of public viewable weather sites are still driven by earlier builds).

Be aware, the longer you wait before swapping from legacy to Cumulus MX software; the more that MX will have developed away from the legacy. MX's development has effectively abandoned its former focus on compatibility, so you might encounter more difficulty with transferring your data files when you migrate.

In all months of 2020, (when the year selection drop-down provided in all releases of original software reached its limit, and MX gained a substantial increase in functionality), and continuing into mid-2021, there was an avalanche of people who used to use the legacy software successfully swapping to MX. As of mid-2022, the usage of this legacy software is in fast decline, implying fewer people can offer assistance.

The installer for the FINAL release of the legacy Cumulus 1 is available here:

  1. Cumulus 1099 installer Full set of files within an installer.
    • On the "this period" type, and snow index, screens you can still manually enter any year,but you have to over-type with the full year yourself, outside range 2008 to 2020.
    • You cannot manually regenerate NOAA reports after 2020, but there is no problem with automatic generation.
  2. Cumulus 1.9.4 build 1099.2 patch Patched version of one file (cumulus.exe) to replace that file from above installer
    • Note this is not the full installation package, just one file to replace in the suite of files created by the installer.
    • This patch modifies the drop-down year selectors, (on "this period" screens, for NOAA reports, and for Snow Index) making it easier to choose date entries (patch version 1099.2 was released 28 Jan 2020) up to the year 2030.

Legacy Cumulus 1 Resources

  • Cumulus installation guide Instructions for installing Cumulus 1
  • Cumulus readme.txt Please read this before installing or updating Cumulus
  • Cumulus help file The Cumulus 1 help file (this also gets installed when Cumulus is installed)
  • Cumulus help file in French The Cumulus 1 help file translated into French
  • Cumulus Realtime An obsolete Silverlight (Silverlight is no longer developed or supported by Microsoft) application for displaying 2 extra dials showing real time wind data on the standard Cumulus gauges page (with temperature and rainfall in histogram style) for a web site

Special Variants

It is STRONGLY RECOMMENDED that users of Cumulus 1.9.4 variants migrate to Cumulus MX, which has ongoing support by Mark Crossley. The baud rate can be selected within MX as a configuration setting.

  • Cumulus 1.9.4 build 1100 setup Use ONLY if you are an Instromet user, and your logger operates at 115200 baud, you should use build 1100
  • Cumulus 1.9.4 build 1101 setup Use ONLY if you are an Instromet user, and your logger operates at 19200 baud, you should use build 1101
  • NOTE: These Cumulus 1.9.4 variants will not have any updates in the future.
  • The patch for Cumulus.exe, cannot be used with these variants
  • The menu items with year drop-down selectors will not display years beyond 2020.
    • For example, this will happen on manual generation of NOAA-style reports.
    • This does not affect any automatic generation of NOAA reports, but does prevent re-generation.

Cumulus 2

The software for Cumulus 2 alpha release is no longer available.