Resource Center
RTMC Pro Patch
Software applications, data logger operating systems, firmware, and drivers for Campbell Scientific products
RTMC Pro Patch
v4.3.3aThis patch upgrades RTMC Pro 4.0 and newer to 4.3.3a.
Note: This application requires the Microsoft .Net 4.0 Framework. If it is not already installed on your computer, it can be obtained from the Microsoft Download Center.
Revision History
v4.3.3aMay 22, 2024
- CSI Web Server - (Major) Enhanced security and fixed important vulnerabilities.
- CSI Web Server - (Major) The default administrator account is no longer built in. The anonymous account now defaults to having no rights.
- CSI Web Server - (Major) Moved the log files to be within the sys\ folder. The user can no longer specify where these logs are exported to.
v4.3.3March 13, 2020
- Resolved an issue where the fill and clear of a Scope chart was creating an out of bounds scale condition.
- Added a check to prevent out of bounds values from locking everything up.
- Added a console log so we have more info when a data failure occurs.
- Added the dependency for the CsOperand.js so that it would be included in the project when published.
- Fixed an issue where the graph would not refresh in QuickReports upon completing its' data acquisition.
- Fixed an issue if a chart series was not available an OleException was thrown. This happened in extremely rare circumstance.
- Made sure that the table uri is persisted, for QuickReports, to make it available for the dialogs and also the error given (from MainFrm.cpp) if no data is available.
- Added the ability to get data stored by LNDB from a PostGreSQL or Oracle database server.
- Fixed an issue with backed and veered on rotating and north offset compass.
- Added code that allows the web server to read TOA6 data files as part of a data file source.
- Changed the code that parses request records messages from the web socket so that the more flag is assumed to be false unless it is specified in the message. Assuming that it was true lead to conditions where a web dataquery request would be waiting for new records until it timed out.
- Added properties that allow an HTTP source to produce a low level log file.
- Added code in the alarms email action to block the sending of emails if the "To" address is an empty string.
- Added code to post web server log messages when data requests are started, ready, and stopped, on a web socket.
- Added code that will prevent the web server from serving any requests that reference the "sys" subdirectory within its working directory.
- Added code that will allow devconfig transactions to happen over web sockets with select data source types (presently only BMP5 sources).
- Added a new "CheckAuthorisation" command that can be used by the web client to get its current authorisation.
- Changed the implementation of the "NewestFile" command to return a response in JSON format if the attempt to retrieve the file from the datalogger fails.
- Changed the order in which static resources are served so that the file system is checked before attempting to generate the files from included resources in coratools.
- Fixed an issue where the server time from the LoggerNet server would not get returned if the client only specified the name of the LoggerNet source in the URI.
- Added a new ListFiles command that can be used with various types of data sources, including Server data sources.
- Added an optional parameter to the BrowseSymbols command so that if any symbol is considered that is reported as an array type, and this parameter is enabled, the array values will be returned in the place of the array symbol.
- Changed the code in the close handler for WebData web sockets so that the reference to the data source and manager are cleared immediately. This was done because it was discovered that the browser could delay up to minutes between when the websocket close was requested by the application and the actual close would take place.
- Added a close command that can be sent on a web socket to speed up the release of resources claimed by that web socket.
- Changed the code that processes a time stamp value from a string so that, if the string was in an unsupported format, the string reported would be the zero epoch (2 January 1990).
- Added the ability to get data stored by LNDB from a PostgreSQL or Oracle database server.
- Added code in on_alarm_change() that will make a copy of the web sockets collection before transmitting notifications. This prevents us iterating on the container after it has been altered by removing an active web socket.
- Fixed misaligned quotes in the web server log.
- Updated the latest version of mbed-tls (2.16.3).
- Added a module (used with embedded versions such as Create and EasyFlux-Web) to assist the client in retrieving language files and in discovering the preferred locale.
- Added a new component that can be used to parse the multi-part content type.
- Fixed an issue where north offset or rotating compass caused backed and veered to display wrong.
v4.3.2August 28, 2017
- Updated the mbedTLS framework to the latest version 2.5.1.
- Fixed an issue where data alarms were never reporting an alarm if they had never received data.
- Fixed an issue with a published project that uses the subtraction operand.
- Fixed an issue with precision not being honored with arrays.
- Added an option to disable web sockets in the publisher. Web sockets will be enabled by default and can be configured for each website.
- Added the EmailRelay option to email profiles. This new option allows the user to send emails though Campbell Scientific’s EmailRelay service.
- Fixed and issue where some images were being abandoned on the disk in the temp directory. Animated images are now copied to a temp location and then loaded. This allows animated images from a URL to be loaded as well as animated images to be overwritten. We now try the TEMP directory, then the TMP directory, and if those aren't defined in the environment, then we create an image_cache folder in the RTMC working directory.
- Added a new Julian Date option to FormatTime. The option is specified by using a %J. The software now allows %J for Julian Date and %j for specifying Julian Day.
- Fixed an error with the CS110 where sounds were overlapping with each other.
- Fixed an issue where Boolean values were always displayed as False.
- Fixed an issue where a zero-length string caused labels to overlap.
- Fixed an issue when setting a negative value to the scale max in RTMC standard.
- Fixed an issue where a series that was marked as hidden and then published broke the resulting project.
- Fixed an issue where null components could be reported when accessing the ownerComponent of a web query.
v4.3.1July 21, 2016
- Enhancement - Warning icons are now suspended for 10 seconds to allow normal data flow to occur without reporting an error.
- Enhancement - Prioritize data on published projects so that data from the first visible tab flows in first.
- Enhancement - Changed the library used for the TLS stack from axTLS to mbedTLS.
- Bug Fix - Fixed backgrounds on component snapshots so there isn't a border
- Bug Fix - Fixed fall back mechanism to standard web queries properly if Web Sockets failed on older partial web socket implementations in the datalogger.
- Bug Fix - Fixed some unicode display issues on published projects.
- Bug Fix - Fixed fullscreen mode sizing on published projects.
- Bug Fix - Fixed renaming issue reported with some components.
- Bug Fix - Fixed an issue in reading TOB2 files.
- Bug Fix - Fixed an issue where data file sources weren't honouring the offset specified in the file data source.
v4.3March 11, 2016
- Enhancement - Added code in the javascript data manager to try to use web sockets before falling back on XMLHttpRequests
- Enhancement - Web Sockets are used for datalogger sources in RTMC projects if the datalogger supports it.
- Enhancement - Web Socket support added to published projects.
- Enhancement - The data file source type changed so that it will now index the contents of the file before attempting to service requests. The requests are now filled based upon the contents of this index. This should provide a significant performance improvement when dealing with data files.
- Bug Fix - Changed the javascript ValueAtTime() function so that, if no values are removed but the range of values timestamps is greater than or equal to specified range, the first value will be returned.
- Bug Fix - WebPublisher: Added code to set the position of the title rectangle when a graph is laid out and to refer to this rectangle when the title is drawn instead of simply centering the title on top of the plot rectangle which would conflict with the legend rectangle if the legend was positioned on top.
- Bug Fix - Changed the code that calculates the zero point for bar charts so that a very small value (1E-38) is used rather than zero in order to work with logarithmic plots
- Bug Fix - Added code to that which generates labels and the scale so that, if the scale is logarithmic, the min and max values are rounded while being assigned to the converted log values. Failure to do this was causing small errors to creep in for base 10 logs that could result in expected labels not appearing.
- Bug Fix - Changed the report range component so that it will use the time of the web server for its local time rather than the local time of the browser.
- Bug Fix - Changed the AvgRunOverTimeWithReset(), MaxEunOverTimeWithReset(), MinRunOverTimeWithReset(), and TotalOverTimeWithReset() functions so that the current time is adjusted back rather than adjusting back the last time. This addresses a customer reported problem where the total was resetting one interval sooner than expected.
- Bug Fix - Fixed an issue where email subjects ending in a % were causing RTMC to hang.
- Bug Fix - Fixed an issue where HTTP Sources weren't stopping their polling once started resulting in sluggish datalogger communications.
- Bug Fix - Added a new Boolean property to the HTTP source that will indicate whether HTTPS should be used. The publisher and HTTP source dialog will use this property to generate the protocol for the server URL.
v4.2November 26, 2014
- Requirement - The .Net 4.0 framework (full profile) is required for this application to run in its entirety. The .Net 4.5 framework may also be installed on the system as it is an upgrade to the 4.0 .Net framework and will allow the application to run in its entirety.
- Enhancement - Reworked the ReportRange control so that it is more consistent with what the user would expect.
- Enhancement - Added RESET_WEEKLY and RESET_CUSTOM options for functions with state that reset. RESET_CUSTOM allows for an optional expression to control the state of when the function will reset.
- Enhancement - Changed segmented controls so that they insert a . when there is a character they can't render rather than skipping the character.
- Enhancement - Increased database access speeds.
- Bug Fix - Fixed an issue where attachments were not being sent with alarm emails.
v4.1.1November 27, 2013
- Fixed a bug where touch events on mobile devices weren't working properly.
- Fixed a bug where an alarm did not function, if it was grouped with other components.
- Fixed an issue where the pipe wasn't displayed properly after switching tabs if pointed at a boolean value because it is reported as -1 and the test was looking for > 0 instead of != 0
- Fixed an issue with publishing a project when the screen name has a symbol in it.
- Fixed an issue where fixed size screen dimensions weren't being honored.
- Fixed a directory traversal security issue in CSI Web Server.