Skip to content

Releases: cumulusmx/CumulusMX

Build 3269 - Version 3.28.0

12 Dec 11:08
13d9ce8
Compare
Choose a tag to compare

New

  • Adds the option to clear the latest error log
  • Adds User Defined Alarms
    • Trigger an alarm when any numeric or boolean web tag value exceeds or falls below a set value
    • Boolean web tags evaluate to 0 or 1 (false, true), so are treated as numeric
  • You can now change the built-in alarm descriptions in the Locale Strings settings
  • Adds a new web tag <#EcowittVideoUrl> to get the URL of the latest Ecowitt camera timelapse video

Changed

  • Warning message from WLL station about spurious broadcast messages changed to a Debug message
  • All time low wind chill web tags were miss named wchillH and TwchillH. They are now wchillL and TwchillL
    • The default web site page record.htm has been changed to reflect this
    • As has the websitedataT.json file
  • Calibration and Limit values are now displayed and set in your native units
  • NOAA reports now produce an error rather than skipping over if a duplicate entry is detected in the dayfile
  • Reload dayfile now produces an error rather than skipping over if a duplicate entry is detected in the dayfile
  • The default path in the sample cumulusmx.service file has been changed to /opt/CumulusMX
  • Upload.php amended to change the maximum permitted clock difference between MX and the remote server to 20 seconds (was 10)
  • The MQTT config files are now only read at start-up or when the MQTT Settings are saved
  • The MQTT settings have been removed from Internet Settings to their own page
    ** BREAKING CHANGE **
  • The MQTT interval data sending has changed. Previously all topics sent at the same fixed interval. Now you can specify an interval per topic in the MQTT config file
    If you are using MQTT interval topics, then please the ReadMe.txt file in the /mqtt folder for details of the changes you need to make

Fixed

  • Add missing New Record and FTP alarm info to the dashboard data stream
  • Some AirLink wl.com API calls not using the correct API details when configured as Standalone
  • Indoor Temperature and Humidity spike removal not working
  • Program Setting 'Remove space character from date separators (if present)' now applies to all output
  • The Ecowitt API MAC address field was not allowed to be blank in the Wizard or station config
  • Wind Gust values not being recorded as high values with moderate spike values set and wind speed in mph or knots
  • Fix average wind speed values from the day file in the records editors

Build 3263 - Version 3.27.1

21 Nov 10:32
627026b
Compare
Choose a tag to compare

New

  • Two new web tags for the Latest Error. These tags will encode the string for either HTML or JavaScript: <#LatestErrorEnc>, <#LatestErrorJsEnc>
  • New web tag for monthly wind run total <#windrunmonth>
    • Without parameters it returns the total for the current month so far (excluding today)
    • You can add parameters "year" and "month" to return the value for a particular month. Eg. <#windrunmonth year=2022 month=3>
    • Like the existing <#windrun> it also accepts the "unit" parameter to return the value in miles, kilometers, or nautical miles
  • PHP upload advanced option to disable the use of GET for small files and fallback to using POST for all files
  • Ecowitt stations can now map the indoor temp/hum values to the primary outdoor sensor (primarily of use for 4G stations that do not allow extra T/H sensors to be added)
  • New web tags for <#RecentApparent>, <#RecentIndoorTemp>, <#RecentIndoorHumidity>

Changed

  • All third-party upload issues are now classified as Warnings
  • Third party components for FTP(S) and SFTP updated
  • If Cumulus.ini needs rewriting it is now overwritten, if it needs recreating it is first truncated to zero length. Previously the file was deleted and recreated in both instances which
    made linking the file for example in Docker images impossible.
  • The records editors now set both value and date/time when you click on the record from the dayfile for monthly logs
  • The records editors now accept y/n key presses to update records or cancel

Fixed

  • "Object is not initialized" error from the API when the station is not yet ready
  • MX crash on start-up if the SQLite database has certain corruptions
  • Fix for PHP uploads when no compression is supported by the server (or the network was down when MX started)
  • VP2 error message "No Ack in response to DMPAFT" on start-up
  • Ecowitt Cloud API settings are no longer mandatory for Ecowitt station (bug introduced in 3.27.0)
  • Fix for error 500 in upload.php when debug is enabled (only occurred on some servers)
  • PHP uploads using HTTP GET were uploading to the same destination file on one server. Added an Internet advanced option to disable the use of GET and fallback to using POST for all files
  • Ecowitt Extra Cloud sensor station type not starting as expected
  • Ecowitt Extra Cloud sensor station can now pick up the latest web cam URL
  • Some new record alarms not setting the email message correctly
  • Fix for wind spike testing applying unit conversion multiple times in some circumstances
  • Davis VP2, if requested changing the logger interval is now done after reading catch-up data so the archive is not cleared before catch-up
  • Fix error 500 in the config Wizard for Davis Cloud stations
  • Fix Wizard and Settings screens did not allow the entry of an IMEI number for the Ecowitt Cloud API device ID
  • Fix some potential errors in the dewpoint calculations on Ecowitt stations when using a mapped primary temp/hum sensor
  • Fix for zero length string error when parsing web tokens
  • Perform a second chance PHP upload compression test at upload intervals if no compression detected at start-up

Build 3257 - Version 3.27.0

28 Oct 14:52
5816539
Compare
Choose a tag to compare

New

  • Adds a new station type of Ecowitt Cloud. This is intended to be used with those Ecowitt console that no not have a local API, cannot use the HTTP protocol, or are located remotely.
    • It grabs the data from the Ecowitt cloud servers. This data is updated once a minute and is slightly less rich than the locally available API data.
    • This station can also be used as a source of Extra Sensor data for your primary station
    • It also makes available the URL of the latest camera on the Ecowitt cloud server via the new web tag <#EcowittCameraUrl>
    • You can use the tag in the URL field of HTTP Files to download the latest image
  • Adds a new station type of Davis Cloud
    • It grabs the data from the Davis WeatherLink cloud servers. The data is updated according to your subscription model
      • Pro+ = 1 minute updates
      • Pro = 5 minute updates
      • Free = 15 minute updates
  • Adds new Select-a-Period graphs to the dashboard interface.
    • Similar to the existing Select-a-Graph which only show recent 1 minute data, the new charts show data at your logging resolution, but you can select any start and end dates from your historic data.
    • Note: selecting a large date range can be quite slow as the data has to be read from the log files
  • You can now regenerate ALL missing NOAA reports from either the Month or Year NOAA screens
    • Note: Unlike the (Re)Generate button, the new option will not overwrite existing report files, it will only create missing ones
  • There is a new Latest Errors display in the dashboard - Utils | Latest Errors
    • By default it displays the last 50 Warnings and Errors encountered by CMX, if you are seeing too many warnings that are expected, you can opt to log only errors in Settings | Program Settings | Logging Options
  • The Cumulus settings can now be 'secured' with a username/password. NOTE: Because Cumulus does not use HTTPS these credentials can be snooped on the network, the security provided is limited.
    • This feature has required some minor changes to the Cumulus API: wsport.json, version.json, dateformat.txt, and csvseparator.txt have moved to a new path /api/info/
  • Add forwarders to Ecowitt Extra Sensors station type
  • Add an integrity check to the SQLite database on start-up

Changed

  • Internal changes to update the Visual Studio project files from the previous legacy version
  • Additional keep-alive headers added to PHP uploads
  • PHP upload now uses HTTP GET for data sizes < 7000 bytes
    • IMPORTANT: You must update the copy of upload.php on your web site with the latest version in this release
  • Dashboard gauges now follow the general dark theme
  • Adds UV-I to dashboard today/yesterday
  • PHP Upload now closes the connection before it errors - if the host server sends a maximum number of allowed requests per session
  • The following web tags have been deprecated and will be removed in some future release:
    CO2-24h
    CO2-pm2p5
    CO2-pm2p5-24h
    CO2-pm10
    CO2-temp
    CO2-hum
    Please switch to the new names:
    CO2_24h
    CO2_pm2p5
    CO2_pm2p5_24h
    CO2_pm10
    CO2_temp
    CO2_hum

Fixed

  • Fix for Davis average wind spike on restarts with catch-up
  • Bug in Fine Offset console logger interval setting
  • Error saving Locale Strings page - new all-time record alarm was missing
  • Default Web Site:
    • Fix Select-a-Charts for Davis soil moisture sensors limiting the graph to a maximum value of 100 cb
      • webfiles\js\selectachart.js
    • Fixed some rounding errors when converting windspeeds to non-native units
      • webfiles\lib\steelseries\scripts\gauges.js
  • Ecowitt HTTP Station - fixed piezo rain rate not being decoded
  • All stations, fixed rain rate being recorded as zero in the recent graphs when MX was calculating the rate rather than the station supplying it
  • Wind average calibration is once again applied to live data when the option for MX to calculate the average is enabled
  • Davis WLL 10 minute Gust speeds when no broadcasts are being received
  • Error 500 on Locale Strings settings page
  • Fix CO₂ sensor being visible on graphs by default
  • Many Alarms were reverting the Latch Hours value to an integer on restart
  • If the graph data display options are changed whilst PHP incremental uploads are in use, then the uploads may start failing
  • Web tag #rmidnight was being reset before the EOD processing (midnight rollover)
  • Fix bug setting HTTP Ecowitt station custom server
  • AirLink Health error messages on start-up when Airlink is associated with the main station
  • Davis VP2 applying average wind speed calibration to the gust value in LOOP2 packets

Build 3248 - Version 3.26.0

09 Aug 11:17
71d9750
Compare
Choose a tag to compare

New

  • MQTT has a new behaviour - Only update a topic if the data has changed
  • Adds new alarm for any all-time record being set
  • Adds new alarm "Web upload errors" for errors in the FTP/PHP upload processes
  • Adds the ability to append free text comments to the wxnow.txt file. You can also include web tags
  • New web tag for recent rainfall - <#RecentRain> - it takes the same parameters as the other RecentXxxx web tags, and defaults to today's total if the parameters are incorrect or no recent data is available
  • New web tag for Ecowitt sensor radio reception strength - <#EcowittReception>
  • The existing web tag <#txbattery> now also supports the format=json parameter which functions the same as #EcowittReception tag above
  • New alternative name for the existing web tag <#GW1000FirmwareVersion>, you can now use <#EcowittFirmwareVersion>
  • Adds Custom MySQL commands for when Cumulus starts up. These will be executed after the station is initialised, but before it starts any historic catch-up or live processing

Changed

  • Various third-party libraries updated to current versions
  • PHP upload now sends a text/plain content header
  • Davis WLL and Airlink now use the new simplified access method to weatherlink.com V2 API
  • MX now persists the internal recent wind data across restarts so gust and average speeds are consistent on a quick stop/start of MX

Fixed

  • PWS passwords are now URL encoded
  • Solar irradiation and theoretical solar are now stored as integers everywhere
  • Extra end of day files not being processed on copy
  • Davis VP2 stations creating incorrect values for Wind Run and Chill Hours if some logger data is missing
  • Instromet station now forces MX to calculate the average wind speed
  • FTP logging errors when FTP logging is already enabled at start-up
  • Updating MySQL on DayFile edits was erroring with a blank SQL statement
  • Davis stations spike in average wind speed on stop/start of CMX

Build 3245 - Version 3.25.2

01 Jun 13:29
e8015e7
Compare
Choose a tag to compare

Fixed

  • Davis WLL/Airlink not doing historic catch-up or downloading stats from weatherlink.com

Build 3244 - Version 3.25.1

13 May 16:36
49979ee
Compare
Choose a tag to compare

New

  • Adds the station name to the main dashboard page and email subject

Changed

  • NOAA report selectors no longer limited to years greater than 2000

Fixed

  • Tempest station now forces MX to calculate the average wind speed
  • Leaf wetness sensor name changes not being saved in Locale strings
  • Leaf wetness graph data empty for Davis sensors
  • Average wind speed calculation for Davis VP, Davis WLL (when calibration applied), Imet, Tempest, WS2300 stations
  • Another average wind speed calculation for Davis VP and Davis WLL (when broadcasts are not being received)
  • Dashboard Local Time block - again!
  • Zero length string error processing web tags
  • Graph colours for PM2.5 and PM10 getting set to the same value
  • Uncaught exception (TaskList has null entry) in PHP uploads
  • 100% CPU bug in the new HTTP files on first processing of each file
  • Revert TLS1.2/1.3 changes in v3.25.0
  • Extensive HTTPClient code optimisations
  • Fix year bug reading from monthly log in NOAA monthly report generation
  • Fix spurious TokenParser messages from various external task executions

Build 3241 - Version 3.25.0

24 Apr 09:42
86f3e7f
Compare
Choose a tag to compare

New

  • Add data forwarding for HTTP (Ecowitt) stations (EXPERIMENTAL for now)
  • Adds Leaf Wetness as a recent and select-a graph option - also added to chart colour picker
  • Local API, graph data requests now support the URL parameter start=nnnnn where nnnnn = Unix timestamp for first data values
  • The number of concurrent PHP uploads can be configured in Internet Settings | Web/Upload site | Advanced Settings (defaults Windows=4, Mono=1)
  • Non-linear calibrations can now be applied to all applicable values
  • A new download file/upload to web option:- HTTP Files
    • This allows you to download a file from any http URL and either save it locally, or upload it to your web site
    • This can be done at any interval, starting when CMX starts
    • Or you can specify a start time and interval. For example you want to download a forecast image that is updated at 06:00, 12:00, 18:00
      • You could specify an interval of 6 hours starting at 06:01. The image will then be downloaded at 06:01, 12:01 and 18:01
  • Custom MySQL commands now have a new option of Timed updates. These work the same as the HTTP Files timed uploads

Changed

  • Deprecate the StartDate entry in cumulus.ini. The new entry is called StartDateIso and has a consistent format across locales of YYYY-MM-DD
    The existing entry will be migrated and removed automatically
  • Switched to the latest current build of FluentFTP as a fix is now been incorporated for Mono errors
    • This has meant a change to the FTP logging processes. FTP logs are now created in the MXdiags folder, and cycled like the main CMX log files
  • Adds a retry on failure for PHP Uploads
  • PHP Uploads now restricted to prevent excessive process generation under Mono
  • All HTTPS operations (Third Party, Custom, Catch-up from cloud etc) now use TLS 1.2 and TLS 1.3 only

Fixed

  • Real-time FTP/SFTP upload of realtimegauges.txt could corrupt concurrent FTP/SFTP interval uploads of processed files
  • Extra web files was performing the EOD copy before the daily graphs had been created
  • Possible fix for Child process count increasing when using PHP upload
  • The monthly and extra data log file editors now show the correct date for 9/10am rollover configurations before the daily rollover
  • Real time SFTP not reconnecting when SFTP object is null or not connected
  • The following processes now abort processing if they are called before the core met data is available
    Custom Interval Logs, Custom MySQL: Realtime, Interval, and Timed commands
  • Real time FTP login was sometimes being attempted even if FTP was disabled completely - occurred if the real time FTP option was left enabled
  • 24 hour times on the dashboard showing as 24:nn after midnight rather than 00:nn

Build 3235 - Version 3.24.2

15 Mar 11:07
2524ccd
Compare
Choose a tag to compare

New

  • Extra Files now allows you to use the variables thru in the source and destination fields to specify custom log files to be uploaded/copied
  • Copy/Upload Now! gets a new option to transfer the latest NOAA monthly/year reports

Changed

  • Copy/Upload Now! the upload of full rather than incremental versions of graph data files is now optional

Fixed

  • Davis VP2 logger suppression of full logger downloads if CMX is stopped and immediately restarted fractionally after a logging interval
  • Extra Files with EOD flag having "tmp" appended to all source files
  • Not running as a 64 bit application on Windows
  • NOAA report PHP uploads were no using the UTF8 flag
  • Davis WLL using "stale" current wind gust data
  • Daily graphs not being uploaded/copied after day reset

Build 3234 - Version 3.24.1

11 Mar 14:10
a12b575
Compare
Choose a tag to compare

New

  • Implements the dashboard time format override - just on the Dashboard and Today/Yesterday screens for now
    • Configure in Program settings | Culture Over-rides
  • Adds Station Pressure support for Ecowitt API, Ecowitt HTTP, Ambient HTTP, and EasyWeather stations

Changed

  • Extra sensor graph data files now use the customised sensor names
  • The "recent" daily data graphs (daiyrain.json, dailytemp.json, sunhours.json) are now treated like End-of-day files and only created at start-up and daily rollover
  • The graph config files availabledata.json and graphconfig.json are now only uploaded at start-up or on config a change
  • Updates ExportMySQL to v1.8.0 to be compatible with v3.24.0 or later

Fixed

  • Issues in 3.24.0 with Select-a-graph not working on the dashboard and default web site
  • Extra sensor names not saving in Locale strings
  • Extra Dew Point graph data file was empty
  • The initial PHP Upload of graph data files sent 7 days of data regardless of the Graph Hours setting

Build 3231 - Version 3.24.0

08 Mar 14:59
71d18cd
Compare
Choose a tag to compare

New

  • Strings.ini is now created and used by all instances, it has also added to the backup routine
  • Adds customisable graph data series colours to the dashboard and default web site
  • Two new web tags for signed string values of pressure and temperature trends
    <#presstrendsigned>
    <#temptrendsigned>
  • A new web tag for the station pressure (the absolute pressure reading) <#stationpressure>
  • The data visibility has been changed from a simple off/on to a tri-state. You can now select between Off|Visible|Dashboard Only
    • Visible means the data will be shown on both the local dash and the default web site
    • Dashboard Only means the data can only be viewed on the CMX local interface.
      You may wish to use this to hide sensitive data like indoor temperatures on the public web site which can indicate if you are home or not
    • Any data previous flagged as Visible, will migrate to the new Visible state
  • Extra Sensor graph data can now be sent to the default web site
  • You can now send an additional four extra temperature readings to Weather Underground
  • New PHP upload alternative to FTP/SFTP
    • This uses a secure PHP script on your web server to upload the data rather than using an FTP service
    • The graph recent data files are sent incrementally using this mechanism, cutting bandwidth usage
      • On starting CMX a full copy of each data file is sent
      • Thereafter only the new data for the interval is sent, and the PHP upload script appends this to the existing file, and trims out old data
  • The generation of local copies of the data files is now optional
    • You can deselect the "Generate" option if you do not require a file to be written to the CMX folders. This will reduce disk I/O, a concern for rPi users with SD cards
  • Adds the HighCharts accessibility module to all charts with the default basic settings. See:- https://www.highcharts.com/accessibility/
  • Adds the simplified NOAA cooling/heating day calculation to the NOAA reports settings
  • Cumulus MX will now run as a 64 bit application on 64 bit operating systems
  • You can now use the Ecowitt WS90 haptic rain sensor for "Is Raining" if you are using a tipping bucket sensor as the primary rain sensor
    • See Station Options > Common Options

Changed

  • Some entry errors in the settings screen used to output a invalid pattern and regex message. They now output an English language message
  • The Dashboard page can now shows times in your locale format (12/24 hour) - See Program Settings|General Options
  • Moved the existing Graph and Display settings from Station Settings to a new Display Settings page
  • Custom Logs settings screen now shows examples with the correct CSV separator for the CMX locale
  • Tempest station now forces the UDP listening port to be opened in shared mode
  • The "Stop second instance" option has been rewritten. It now only prevents two instances using the same port from running
    • This change means for it to work ALL running instances must be v3.24.0 or later
  • Alarm email sends are now retried twice on failure

Fixed

  • Adds missing Wind Chill from the historic graphs on the dashboard and default web site
  • Now ignores AirLink zero values when the percent in last hour is also zero. This occurs during a restart of AirLink
  • Third party custom rollover URLs overwriting custom minute values on save
  • The monthly data editors were not handing start/end dates of the first of the month correctly when using a 9am rollover
  • The <#altimeterpressure> web tag was defaulting to using 1 decimal place for all units
  • Dashboard menu wrapping
  • Davis VP2/Vue LOOP2 absolute pressure values < 20 inHg are now ignored. Altimeter pressure is set to sea level pressure, station pressure = 0
  • Extra temp/hum/dewpoint not being saved for sensor # 10
  • Ecowitt Local API failing to reconnect after network outage

Removed

  • Local API calls:
    /api/extra/leaf.json
    /api/extra/leaf4.json
  • Redundant web tags <#leaftemp[1-4]>