github cumulusmx/CumulusMX b3141
Build 3141 - Version 3.12.0

latest releases: b4043, b4042, b4041...
3 years ago

This is a larger than usual update...

  • Fix: The Realtime FTP - particularly SFTP - reconnection code has been rewritten to make it more robust

  • Fix: SteelSeries gauges data mouseovers not working on the dashboard interface

  • Fix: Davis WLL, bug in Chill Hours calculation during archive data catch-up. Each interval increment was 60x larger than it should be

  • Fix: Davis WLL, add missing Sunshine hours calculation to historic catch-up

  • Fix: Davis WLL, now correctly handles null values in historic data during cath-up

  • Fix: GW1000 station, 0.1mm rain tippers would take 3 tips in an interval to register "last rained" when using Inches as the rain unit

  • Fix: GW1000 station, adds missing low battery alarm

  • Fix: GW1000 station, user temperatures above channel 1 were not being assigned to the correct channel

  • Fix: Instromet Increment Logger Pointer was not saving correctly from the Station Settings screen

  • Fix: LowTempAlarmSoundFile being written to incorrect Cumulus.ini entry

  • Fix: Start-up PING now attempts to catch 'hung' responses and terminates them

  • Fix: Start-up delay is now applied before the start-up PING as originally intended

  • Fix: Broken 'Stop second instance' code

  • New: Adds a First Time Setup Wizard to the settings menu. First time users (i.e. no pre-existing Cumulus.ini) are asked to run this from prompts in the console.

  • New: Adds a HTTP upload station type using WUnderground protocol

    • Set-up your Customized Server in WSView to:
      Protocol : Wunderground
      Server : <hostname_or_ip_of_CMX>
      Path : /station/wunderground?
      Station Id : 1 (can be anything)
      Key : 1 (can be anything)
      Port : 8998 (or whatever you have configured CMX for)
      Interval : 20 (seconds)
  • New: Adds a HTTP upload station type using Ecowitt protocol

    • Set-up your Customized Server in WSView to:
      Protocol : Ecowitt
      Server : <hostname_or_ip_of_CMX>
      Path : /station/ecowitt
      Port : 8998 (or whatever you have configured CMX for)
      Interval : 20 (seconds)
  • New: You can now add extra sensors to your existing station using an Ecowitt GW1000 (or compatible console).

    • Set-up your Customized Server in WSView to:
      Protocol : Ecowitt
      Server : <hostname_or_ip_of_CMX>
      Path : /station/ecowittextra
      Port : 8998 (or whatever you have configured CMX for)
      Interval : 20 (seconds)
  • New: Adds more "advanced" options to the GUI configuration:

    • Max wind speed in Station > Common Options > Advanced options
    • Record set timeout in Station > Common Options > Advanced options
    • Snow depth hour in Station > Common Options > Advanced options
    • Rain day threshold in Station > Common Options > Advanced options
    • List web tags in Program Settings > Program General Options
  • New: Adds Cloud base unit to Units settings

  • New: Realtime and Web Interval settings changed via the dashboard now have immediate effect, a restart is no longer required.

  • New: Adds Lightning distance and last strike time to Today.ini to preserve the values across CMX runs when the GW-1000 has 'forgotten' them
    [Lightning]
    Distance=-1
    LastStrike=0001-01-01T00:00:00

  • New: Adds a global Enable/Disable switch to Internet FTP settings, the value for this on the first run of this version of CMX will be inferred from the other settings.
    From this release onwards, this switch can be used to enable/disable all FTP activity. It does not affect the Interval and real time interval settings.
    Disabling this option also disables all the relevant FTP settings in the following sub-sections on the page

  • New: Adds an option to Internet settings for "Local Copy". This enables the ability to create all the standard web site files, and copy them on the local file
    system instead (or as well as) FTPing them. Useful for installs that run on the same host as the web server.

  • New: Two new web tags for sunshine hours
    <#SunshineHoursMonth> <#SunshineHoursYear>

    • When used without parameters these return the total sunshine hours for this month so far, and this year so far.
    • The Month tag accepts three parameters:
      y=nnnn & m=nn - use these to specify a specific month you want the total for. Example - <#SunshineHoursMonth y=2021 m=1> for the January 2021 total
      r=-nn - use this parameter to specify a relative month, -1 = last month, -2 = month before last etc. Example <#SunshineHoursMonth r=-1> for last month's total
    • The Year tag accepts two parameters:
      y=nnnn - specify the year you want the total. Example <#SunshineHoursYear y=2020>
      r=-nn - specify a relative year, -1 = last year etc. Example <#SunshineHoursYear r=-2> total for the year before last
    • The tags also accept the usual rc=y and dp=n parameters
  • New: Add New Record timeout value to Station Settings > General > Advanced

  • New: Adds Chill hours to yesterday.ini, and adds a new web tag for chill hours total yesterday
    <#Ychillhours>

  • New: Adds the Chill Hours configuration values to the Station Settings screen

  • New: Add new web tags for average wind speed today and yesterday
    <#windAvg>, <#windAvgY>

  • New: Adds the ability to update the corresponding entries in the Dayfile and Monthly MySQL tables when using the log file editors in the dashboard

    • You can enable/disable this feature via a setting in MySQL settings
    • It only applies to Edit, Delete does not delete the entry in MySQL
  • New: Catch-up from a station logger with (standard) MySQL enabled, now also adds each archive entry to the Realtime table

  • New: Adds the ability to buffer failed MySQL commands until the MySQL server becomes available again, or Cumulus MX is restarted - when they will be lost

    • Enabled via an option in MySQL Settings
    • Note: Whilst Realtime updates are buffered, the uploading of failed queries is only performed by the Log updates
  • New: FineOffset stations now log the progress of archive data loading to the console

  • New: NOAA Reports now have an option to calculate the mean temperatures using the traditional method (max + min) / 2

    • Note: This does not apply to heating/cooling degree days, they will still use the integrated method
  • New: Adds ET for Davis WLL stations with Pro subscriptions

    • Note: Your solar sensor MUST be connected to your primary ISS for this to work, otherwise weatherlink.com does not calculate ET
  • Change: Cumulus MX now uses a persistent database to store the recent 1 minute data

    • This means that charts, recent webtags, and internal calculations for trends and periodic values will be more accurate after a restart
    • If Cumulus MX is offline for a prolonged period, data for that offline period will obviously still be at the station logging interval resolution
  • Change: MQTT now allows multiple topics for both Update and Interval data.

    • The format of the MQTT template files has changed to accommodate this
    • The template must now be formatted as JSON, however the payload data for each topic can still be in whatever format you like so long as you construct
      a valid string - i.e. escape quotation marks
    • The default interval template (the update template is similar) now looks like this...
      {"topics": [
      {
      "topic": "CumulusMX/Interval",
      "data": "{"time":"<#timehhmmss>","temp":<#temp rc=y>,"humidity":<#hum>,"wgust":<#wgust rc=y>}",
      "retain": false
      }
      ]}
      Where the topic name is "CumulusMX/Interval", and the payload is the string "{"time":"<#timehhmmss>","te...rc=y>}" which is formatted as JSON text
    • To create a template with multiple topics, use this format...
      {"topics": [
      {"topic": "MyName/Topic1", "data": ""<#timehhmmss>",<#temp rc=y>", "retain": false},
      {"topic": "MyName/Topic2", "data": "<#hum>", "retain": true}
      ]}
      Where Topic1 is formatted as CSV and is not retained on the server, and Topic2 as XML and is retained
    • The Dashboard Internet > MQTT settings have been updated to reflect these changes
  • Change: Moves the FTP Rename/Delete/UTF-8 Encode settings from Internet Settings|Web Settings|General, to Internet Settings|Web Site|General

  • Change: Moves the Forum URL and Webcam URL settings from Internet Settings|Web Site to Internet Settings|Miscellaneous

  • Change [Internal]: The Dashboard web pages now all use a common menu.js script to render the menus - it saves me a lot of typing when anything changes!

  • Change: The Dashboard settings pages now load the forms JSON as static files rather than via the API.

  • Change: The console output on start-up has been changed slightly to show actual IP addresses in URLs, and I have added some colour.

    • You now also get different messages if no Cumulus.ini file is detected, directing users to run the first time setup wizard
  • Change: The default web site NOAA reports page is now accessible and removes the mouse-over month selection

  • Change: When configuring the Davis WLL station, if any extra sensors are enabled, then Extra Logging is also automatically enabled.

  • Change: Default unit values for new installs changed for Wind, Pressure and Altitude...
    m/s -> km/h
    mbar -> hPa
    feet -> metres

  • Change: When reading the Cumulus.ini file at start-up, if settings are migrated, or invalid entries corrected, Cumulus.ini is now re-written.
    That is re-written as created afresh, not updated in place. Old entries are removed, and the file order resequenced. Thus you cannot then
    use the new Cumulus.ini on old versions of Cumulus, you will have to use backups.

  • Change: Cosmetic changes to most Settings pages, and Records editors

  • Change: Some libraries updated:

    • Email: MailKit
    • MQTT: MQTTnet
    • MySQL: MySqlConnector
    • JSON: ServiceStack.Text

Don't miss a new CumulusMX release

NewReleases is sending notifications on new releases.