Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

HTML
<a id="toggleAll" href="#">Expand/Collapse All to allow Search</a> <script type="text/javascript"> AJS.toInit(function () { AJS.$('#toggleAll').click(function() { jQuery(".expand-control").each(function()

{ jQuery(this).trigger("click");}

) }); }); </script>
<p>



Expand
titlev4.0.30 June 24, 2025


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • Added support for auto-detection and loading of new TLS certificates when they are loaded into Ignition
  • Added support for 'Unique LWT Topics' to reject connections from clients with duplicate MQTT Will Message Topics


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Modified MQTT Engine to disconnect/reconnect when detecting an invalid STATE message to force timestamp update to current time
  • Added support for metricTimestampValidationSkew via a CustomProperty in MQTT Engine
  • Modified Engine server set creation to automatically add the new set to all namespaces
  • Added support for configurable alarm 'display path' at MQTT Engine which propagating alarms from Transmission to Engine
  • Modified the Engine and Transmission to support DataSets, Documents, and Array types as Strings on the wire as an option to remain Sparkplug compliant
  • Added support for clearing alarm events already cleared at the Edge and missed by MQTT Engine
  • Improved logging around null dataset handling
  • Added support for 'auto-reconciliation' of alarms between Transmission and Engine
  • Added support for auto-removal of Namespace Server Set references when deleting Server Sets


Expand
titleWhat's Fixed
  • Fixed potential synchronization issue when removing subscriptions on disconnect
  • Fixed updates to the PHID info tags in Engine to not update improperly on incoming older STATE messages
  • Fixed handling of Date and String datatypes in alarm propagation
  • Fixed alarm preservation across Engine disable/enable and alarm SQL inserts
  • Fixed alarm handling to prevent duplication if both the Default and UNS tag tree views are enabled
  • Fixed handling of historical alarms as regular metrics which was updating tag values incorrectly
  • Fixed potential NPE in handling null bound property values
  • Fixed potential edge cases in Dataset handling



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Modified global and edge node level refresh logic to better handle refresh complete
  • Made CMD writes non-blocking to improve write performance
  • Added support for propagation of all alarm properties when publishing alarms
  • Modified Transmission to support DataSets, Documents, and Array types as Strings on the wire as an option to remain Sparkplug compliant
  • Added support for 'auto-reconciliation' of alarms between Transmission and Engine
  • Added support for manual alarm reconciliation via a Transmission control tag
  • Removed code that built up UDT definitions even when they were not configured to be published
  • Modified default history flush quantity to 40k


Expand
titleWhat's Fixed
  • Fixed rolling buffer store and forward support in Transmission
  • Fixed handling of Date and String datatypes in alarm propagation
  • Fixed potential concurrency issues in BIRTH building
  • Fixed issue when flushing in-order and 'writing directly to the historian' in Engine could result in old/invalid tag values
  • Fixed potential NPE during BIRTH building reconciliation
  • Fixed potential edge cases in Dataset handling
  • Fixed Transmitter config to not allow a Device ID to be configured when an Edge Node ID is not configured



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Modified global and edge node level refresh logic to better handle refresh complete
  • Added support optionally to include Node/Device Info and Control metrics
  • Removed code that built up UDT definitions even when they were not configured to be pushed
  • Fixed Agent config to not allow a Device ID to be configured when an Edge Node ID is not configured


Expand
titleWhat's Fixed
  • Fixed potential concurrency issues in BIRTH building
  • Fixed potential NPE during BIRTH building reconciliation



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Modified global and edge node level refresh logic to better handle refresh complete
  • Added ISO-8859-1 encoding support
  • Added support optionally to include Node/Device Info and Control metrics
  • Removed code that built up UDT definitions even when they were not configured to be pushed
  • Fixed Agent config to not allow a Device ID to be configured when an Edge Node ID is not configured


Expand
titleWhat's Fixed
  • Fixed potential concurrency issues in BIRTH building
  • Fixed potential NPE during BIRTH building reconciliation



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Modified global and edge node level refresh logic to better handle refresh complete
  • Added support optionally to include Node/Device Info and Control metrics
  • Removed code that built up UDT definitions even when they were not configured to be pushed
  • Fixed Agent config to not allow a Device ID to be configured when an Edge Node ID is not configured


Expand
titleWhat's Fixed
  • Fixed potential concurrency issues in BIRTH building
  • Fixed potential NPE during BIRTH building reconciliation



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed potential NPE in the getRegisterSets method of the PollGroupManager class
  • Fixed a bug when updated global definitions name is not properly applied to device connections
  • Fixed potential NPE in Meter Config record handling



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • Improved logging in the initializeOpCodeTables method of the RocDevice class


Expand
titleWhat's Fixed
  • Fixed a bug when updated global definitions name is not properly applied to device connections



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes





Expand
titlev4.0.29 Apr 10, 2025


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Removed invalid update of online/offline timestamp update for Elecsys namespace that resulted in noisy log messages



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed issue with threading that resulted in significant performance decrease



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes





Expand
titlev4.0.28 Mar 31, 2025


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • Upticked Google Protobuf version to v3.25.5


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Upticked Google GSON version to v2.8.9
  • Upticked Google Protobuf version to v3.25.5
  • Added support to store alarm events in the alarm journal
  • Added Sparkplug IDs to the source and display path of alarms at MQTT Engine
  • Added support to treat 'all numbers as floats' in Engine JSON custom namespace handling


Expand
titleWhat's Fixed
  • Fixed potential deadlock in the alarm DB
  • Fixed custom namespace issue that could result in processing topics not intended for that namespace
  • Fixed initialization order in MQTT Engine to ensure TLS certificates get loaded on startup
  • Fixed support for Array, Dataset, and Document tag properties
  • Fixed Elecsys namespace $sys commands



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Upticked Google Protobuf version to v3.25.5
  • Added support for 'randomizing server connections'
  • Added warning message if a conflicting UDT definition is found and would've been included in the NBIRTH


Expand
titleWhat's Fixed
  • Fixed potential deadlock in the disk-backed history store
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages
  • Fixed birth building issues that could result in erroneous tags being published
  • Fixed support for Array, Dataset, and Document tag properties
  • Fixed issue that could result in Transmission ceasing to publish data after a Rebirth request
  • Fixed potential NPE when trying to detect tag enabled status on startup
  • Fixed issue with Dataset datatype coercion
  • Fixed UNS Transmitters to include Sparkplug IDs for UDT member tags
  • Fixed bound value string handling for numeric bound UDT parameters
  • Fixed tag change event reconciliation logic when publishing cached births
  • Fixed issue that could result in DATA messages being published out of order when under heavy load



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Upticked Google Protobuf version to v3.25.5
  • Upticked AWS SDK version to v2.28.17
  • Added support for 'hybrid push'
  • Added warning message if a conflicting UDT definition is found and would've been included in the NBIRTH


Expand
titleWhat's Fixed
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages
  • Fixed birth building issues that could result in erroneous tags being pushed
  • Fixed potential NPE when trying to detect tag enabled status on startup
  • Fixed issue with Dataset datatype coercion
  • Fixed bound value string handling for numeric bound UDT parameters
  • Fixed tag change event reconciliation logic when pushing cached births



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Upticked Google Protobuf version to v3.25.5
  • Added support for 'hybrid push'
  • Added warning message if a conflicting UDT definition is found and would've been included in the NBIRTH


Expand
titleWhat's Fixed
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages
  • Fixed birth building issues that could result in erroneous tags being pushed
  • Fixed potential NPE when trying to detect tag enabled status on startup
  • Fixed issue with Dataset datatype coercion
  • Fixed bound value string handling for numeric bound UDT parameters
  • Fixed tag change event reconciliation logic when pushing cached births
  • Fixed potential deadlock during disconnect/reconnect events



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Upticked Google Protobuf version to v3.25.5
  • Added support for 'hybrid push'
  • Added warning message if a conflicting UDT definition is found and would've been included in the NBIRTH


Expand
titleWhat's Fixed
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages
  • Fixed birth building issues that could result in erroneous tags being pushed
  • Fixed potential NPE when trying to detect tag enabled status on startup
  • Fixed issue with Dataset datatype coercion
  • Fixed bound value string handling for numeric bound UDT parameters
  • Fixed tag change event reconciliation logic when pushing cached births



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • Upticked Quartz version to v2.3.2


Expand
titleWhat's Fixed
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages
  • Fixed potential NPEs when processing some types of Totalflow applications



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • Upticked Quartz version to v2.3.2


Expand
titleWhat's Fixed
  • Added code to remove RedundancyStateListeners to prevent erroneous error messages



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.26 Jan 15, 2025


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • Added retry logic for listeners that failed to initialize


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Added 'Not Licensed' state to Server Connection Status field in the Web UI
  • General logging improvements
  • Added cleanup mechanism to delete Persistent Records associated with a deleted NamespaceRecord
  • Added support for null/empty 'replacement string' in custom namespace conversion rules
  • Added support to automatically populate new Custom Namespace Server Set bindings list with all existing Server Sets
  • Added support for null JSON payload values if the tag already exists
  • Added support for Edge side 'Node Control' tags in DATA messages


Expand
titleWhat's Fixed
  • Fixed issue that would keep removed legacy state client subscriptions after they were deleted
  • Fixes to ensure all subscriptions are necessary
  • Fixed decoding support of Array, DataSet, and Document property types
  • Improved handling for historical metric DataTypeClass discovery to prevent NPEs



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Added 'Not Licensed' state to Server Connection Status field in the Web UI
  • Optimized births to omit unused UDT definitions in the payload
  • Added support for the 'Enabled' property to be a bound parameter
  • Changed history store query timeout and minimum value to prevent query timeouts


Expand
titleWhat's Fixed
  • Fixed potential deadlock in connection logic
  • Fixed potential ClassCastException during birth building
  • Fixed encoding support of Array, DataSet, and Document property types



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • Added documentation tag property for MQTT Recorder tags


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Added documentation tag property for AWS Injector tags
  • Optimized births to omit unused UDT definitions in the payload
  • Added support for the 'Enabled' property to be a bound parameter
  • Changed history store query timeout and minimum value to prevent query timeouts


Expand
titleWhat's Fixed
  • Fixed potential deadlock in connection logic
  • Fixed potential ClassCastException during birth building
  • Fixed encoding support of Array, DataSet, and Document property types



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Added documentation tag property for Azure Injector tags
  • Optimized births to omit unused UDT definitions in the payload
  • Added support for Azure cert based auth for Event Hub connections
  • Added support for the 'Enabled' property to be a bound parameter
  • Changed history store query timeout and minimum value to prevent query timeouts


Expand
titleWhat's Fixed
  • Fixed potential deadlock in connection logic
  • Fixed potential ClassCastException during birth building
  • Fixed encoding support of Array, DataSet, and Document property types



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Added documentation tag property for Google Cloud Injector tags
  • Optimized births to omit unused UDT definitions in the payload
  • Added support for the 'Enabled' property to be a bound parameter
  • Changed history store query timeout and minimum value to prevent query timeouts


Expand
titleWhat's Fixed
  • Fixed potential deadlock in connection logic
  • Fixed potential ClassCastException during birth building
  • Fixed encoding support of Array, DataSet, and Document property types



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • Added validator to prevent submission of a global definition w/o specifying a file


Expand
titleWhat's Fixed
  • Fixed potential NPE around wildcard characters while parsing INI files with @ROWLOOP



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.25 Nov 12, 2024


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • Added documentation property to info tags to describe each tag


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Added documentation property to info tags to describe each tag
  • Made alarm persistence location configurable
  • Added documentation property to info tags to describe each tag
  • Added the 'ActiveSubscription' Engine Info tag
  • Modified python script APIs to not return private keys in plain text
  • Logging improvements
  • Added support for Alarm ACKs even when command blocking is enabled
  • Moved default H2 DB location for Windows from 'data' to 'user-lib'


Expand
titleWhat's Fixed
  • Fixed alarm handling of 'ack time', 'clear time', and 'display path'
  • Fixed potential erroneous tag states when both UNS and default Sparkplug tags were enabled
  • Fixed issue that could result in incorrect filters when filtering on a per server basis
  • Fixed alarm ACKs when using Engine on Windows OS
  • Fixed logging and feedback when an alarm is ACKed and the associated Edge Node is offline



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Added support for UNS Transmitters
  • Added support for alarm 'notes'
  • Made disk-backed history store persistence location configurable
  • Added documentation property to info tags to describe each tag
  • Modified python script APIs to not return private keys in plain text
  • Moved default H2 DB location for Windows from 'data' to 'user-lib'
  • Improved Exception handling when building BIRTHs to denote datatype mismatches
  • Added RedundnacyTransitionActiveDelay config option to Transmission to allow redundant gateway to stop before the active one starts


Expand
titleWhat's Fixed
  • Fixed alarm handling of 'ack time', 'clear time', and 'display path'
  • Fixed a deadlock that could occur on rebirth requests or in certain startup scenarios
  • Fixed SecurityContext handling when not validating writes against a supplied security context
  • Fixed issue that could result in in-order history flushing not being honored when a Transmission server config is updated
  • Fixed NPE when alarm config contained unknown property
  • Fixed situations that could result in an 'unregistered' alarm
  • Fixed updating/unregistering a disabled Transmitter



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Made disk-backed history store persistence location configurable
  • Added documentation property to info tags to describe each tag
  • Moved default H2 DB location for Windows from 'data' to 'user-lib'
  • Improved Exception handling when building BIRTHs to denote datatype mismatches
  • Added support for 'SendAllProps' to send all default tag properties in a BIRTH


Expand
titleWhat's Fixed
  • Fixed dynamic handling of services after creating, updating, or deleting agents
  • Fixed issue that could result in startup or shutdown of wrong Kinesis endpoint on config changes
  • Modified JSON Metrics to always include a value even if it is null



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Made disk-backed history store persistence location configurable
  • Added documentation property to info tags to describe each tag
  • Modified python script APIs to not return private keys in plain text
  • Moved default H2 DB location for Windows from 'data' to 'user-lib'
  • Improved Exception handling when building BIRTHs to denote datatype mismatches
  • Added support for 'SendAllProps' to send all default tag properties in a BIRTH


Expand
titleWhat's Fixed
  • Fixed dynamic handling of services after creating, updating, or deleting agents
  • Modified JSON Metrics to always include a value even if it is null



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Made disk-backed history store persistence location configurable
  • Added documentation property to info tags to describe each tag
  • Modified python script APIs to not return private keys in plain text
  • Moved default H2 DB location for Windows from 'data' to 'user-lib'
  • Improved Exception handling when building BIRTHs to denote datatype mismatches
  • Added support for 'SendAllProps' to send all default tag properties in a BIRTH


Expand
titleWhat's Fixed
  • Fixed dynamic handling of services after creating, updating, or deleting agents
  • Modified JSON Metrics to always include a value even if it is null



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • Added initial support for AAR Alarms


Expand
titleWhat's Fixed
  • Fixed an issue with incorrect EFM device connection status when 2-hours trial expires



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed potential migration issue with global TLP handling when upgrading from Ignition 7 to 8
  • Fixed an issue with incorrect EFM device connection status when 2-hours trial expires



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.24 Sept 16, 2024


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed Alarm handling to support clearing of alarms before acknowledgement



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.23 Sept 13, 2024


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed issue that could cause Distributor to disconnect clients due to not receiving a PINGRESP even when data in still being received
  • Fixed socket close handling when no data is sent to support health checks



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Added support for Alarm events via MQTT with Acknowledgments
  • Added ‘UNS Tag Tree’ support
  • Added ‘Delete UNS’ control tags to better support Edge Node deletion in UNS namespaces
  • Added info tags in MQTT Engine to better track the inbound message queue health
  • Added configuration option for inbound message thread pool sizing
  • Removed ‘URL validation’ is MQTT Engine that prevented duplicate IP/hostname definitions
  • Added support for Python system.cirruslink.engine.publish to take either a Server Name or a Server Set name
  • Added support for a configurable rebirth debounce delay instead of a hardcoded 5s


Expand
titleWhat's Fixed
  • Improved thread/queue handling for inbound messages to prevent ‘rebirth storms’
  • Fixed issue where MQTT Engine ‘overrides’ UDT instance member properties if the user has manually modified the Engine side UDT definition member properties
  • Fixed Engine server set migration to create a server set per server definition from Engine prior to adding server set support
  • Fixed issue that could cause MQTT Engine to not properly publish rebirth requests in some cases



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Added support for Alarm events via MQTT with Acknowledgments
  • Modified RPC clients to only be one per server set
  • Added a configuration option to delay birth fetching to allow consumption of tag change events that may occur with timestamps before ‘now’ and birth fetching
  • Added support for handling of multiple metrics in NCMD and DCMDs
  • Moved payload logging from TransmissionClientManager to TransmissionClient


Expand
titleWhat's Fixed
  • Fixed issue where MQTT Engine ‘overrides’ UDT instance member properties if the user has manually modified the Engine side UDT definition member properties
  • Fixed birth creation to reconcile the birth with tag change events during the birth building process
  • Fixed issue that could result in duplicate or incorrect generated aliases
  • Fixed issue that could cause Transmission to erroneously flush history when in-order after failing to publish a birth sequence
  • Fixed timestamp handling of Array, Document, and Dataset types now that Ignition resolved timestamp handling in Ignition 8.1.43
  • Added synchronization around RPC client startup/shutdown to prevent potential thread leak
  • Fixed escaping of table names in the disk-backed history store to support ‘-’ chars in Sparkplug IDs
  • Added/fixed support for null dataset values



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Added a configuration option to delay birth fetching to allow consumption of tag change events that may occur with timestamps before ‘now’ and birth fetching


Expand
titleWhat's Fixed
  • Fixed birth creation to reconcile the birth with tag change events during the birth building process
  • Fixed timestamp handling of Array, Document, and Dataset types now that Ignition resolved timestamp handling in Ignition 8.1.43
  • Fixed escaping of table names in the disk-backed history store to support ‘-’ chars in Sparkplug IDs
  • Added/fixed support for null dataset values



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Added a configuration option to delay birth fetching to allow consumption of tag change events that may occur with timestamps before ‘now’ and birth fetching


Expand
titleWhat's Fixed
  • Fixed birth creation to reconcile the birth with tag change events during the birth building process
  • Fixed timestamp handling of Array, Document, and Dataset types now that Ignition resolved timestamp handling in Ignition 8.1.43
  • Fixed escaping of table names in the disk-backed history store to support ‘-’ chars in Sparkplug IDs
  • Added/fixed support for null dataset values



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Added a configuration option to delay birth fetching to allow consumption of tag change events that may occur with timestamps before ‘now’ and birth fetching


Expand
titleWhat's Fixed
  • Fixed birth creation to reconcile the birth with tag change events during the birth building process
  • Fixed timestamp handling of Array, Document, and Dataset types now that Ignition resolved timestamp handling in Ignition 8.1.43
  • Fixed escaping of table names in the disk-backed history store to support ‘-’ chars in Sparkplug IDs
  • Added/fixed support for null dataset values



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Improved ABB CSV parsing to prevent edge case Exceptions
  • Fixed migration bug around CSV file handling
  • Potential problem when parsing @ROWLOOP @REPLACE with increment above 1



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.22 June 20, 2024


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • Fixed connection issues with clients with no specified client ID
  • Fixed possible minor delay in processing QoS 2 messages
  • Fixed packet identifier warnings in log



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • Added support for 'server sets' to MQTT Engine to better support redundancy and more complex architectures

  • Added URL validation to server records
  • Added support for a Sparkplug 'device dataset' in Engine info tags to show all Sparkplug Devices
  • Cleanup/refinement of various info tags
  • Added config UI validation to Topic Token Filters
  • Added support for AWT Colors in DataSets
  • Added support for Array, DataSets, and Document tag properties


Expand
titleWhat's Fixed
  • Fixed handling of the Primary Host State info tag when Engine is disabled and config changes

  • Fixed client connections to publish an LWT before unsubscribing from Sparkplug Topics
  • Fixed NPE in edge cases around Rebirth requests
  • Various fixes to UDT collision detection
  • Fixed STATE correction handling in redundant and multi-server environments
  • Fixed potential thread leak on shutdown of MQTT clients
  • Fixed the DEATH message handling so tags with null values are properly 'staled'



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Added URL validation to server records
  • Added a thread pool to hand off history store writes to keep data flowing smoothly out of Transmission
  • Added support for 'maximum history store size' to prevent history from overrunning memory or disk
  • Added support for AWT Colors in DataSets
  • Added a config UI validator to ensure PHID is set when file 'auto-publish' is enabled as it is required
  • Added support for Array, DataSets, and Document tag properties
  • Made the H2 TCP port configurable
  • General logging cleanup
  • Increated Transmission RPC clients to support 500 in-flight MQTT messages
  • General performance improvements to disk-backed history storage


Expand
titleWhat's Fixed
  • Fixed History Store category headings in the config UI
  • Fixed handling of restarted tags to ensure they properly return to a good quality
  • Fixed issue that prevented proper publishing when child UDTs are deleted from a parent UDT and 'convert UDTs' is enabled
  • Moved history store on disk to the 'data' directory to better support redundancy and gateway backups
  • Fixed permissions issue that prevented Transmission from browsing tags when read permissions had been modified on the tag provider
  • Various fixes to UDT collision detection
  • Fixed startup race condition that could result in invalid initial values
  • Various fixes to Transmission info tags
  • Fixed potential NPEs when fetching existing tag paths
  • Fixed handling of numeric parameter values in UDTs



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Added support for EC2 Instance IAM Roles as an alternative to AWS access/secret keys
  • Added support for 'maximum history store size' to prevent history from overrunning memory or disk
  • Added support for AWT Colors in DataSets
  • Added support for Array, DataSets, and Document tag properties
  • Made the H2 TCP port configurable
  • General logging cleanup
  • General performance improvements to disk-backed history storage


Expand
titleWhat's Fixed
  • Fixed handling of restarted tags to ensure they properly return to a good quality
  • Moved history store on disk to the 'data' directory to better support redundancy and gateway backups
  • Fixed permissions issue that prevented Injectors from browsing tags when read permissions had been modified on the tag provider
  • Fixed startup race condition that could result in invalid initial values
  • Fixed potential NPEs when fetching existing tag paths
  • Fixed handling of numeric parameter values in UDTs
  • Fixed dynamic configuration UI handling in Kinesis configuration
  • Fixed support for Kinesis Firehose configurations



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Added support for 'maximum history store size' to prevent history from overrunning memory or disk
  • Added support for AWT Colors in DataSets
  • Added support for Array, DataSets, and Document tag properties
  • Made the H2 TCP port configurable
  • General logging cleanup
  • General performance improvements to disk-backed history storage


Expand
titleWhat's Fixed
  • Fixed handling of restarted tags to ensure they properly return to a good quality
  • Moved history store on disk to the 'data' directory to better support redundancy and gateway backups
  • Fixed permissions issue that prevented Injectors from browsing tags when read permissions had been modified on the tag provider
  • Fixed startup race condition that could result in invalid initial values
  • Fixed potential NPEs when fetching existing tag paths
  • Fixed handling of numeric parameter values in UDTs
  • Fixed potential NPE when using certificate based auth and no CA cert is defined



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Added support for 'maximum history store size' to prevent history from overrunning memory or disk
  • Added support for AWT Colors in DataSets
  • Added support for Array, DataSets, and Document tag properties
  • Made the H2 TCP port configurable
  • General logging cleanup
  • General performance improvements to disk-backed history storage


Expand
titleWhat's Fixed
  • Fixed handling of restarted tags to ensure they properly return to a good quality
  • Moved history store on disk to the 'data' directory to better support redundancy and gateway backups
  • Fixed permissions issue that prevented Injectors from browsing tags when read permissions had been modified on the tag provider
  • Fixed startup race condition that could result in invalid initial values
  • Fixed potential NPEs when fetching existing tag paths
  • Fixed handling of numeric parameter values in UDTs



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • Added 'Flow Factor', 'Flow Time', and 'Total Volume' column support


Expand
titleWhat's Fixed
  • Fixes to migration code for Totalflow applications
  • Fix to restart polling when auto-discovery completes and ON_DEMAND is being used
  • Fixed flowtime calculation as it was improperly being multiplied by 60



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • Added 'Flow Factor', 'Flow Time', and 'Total Volume' column support


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes




Expand
titlev4.0.21 January 26, 2024


Expand
titleMQTT Distributor


Expand
titleWhat's New or Improved
  • Added custom property support for 'maxOutboundQueueSize'


Expand
titleWhat's Fixed
  • No fixes



Expand
titleMQTT Engine


Expand
titleWhat's New or Improved
  • MQTT Engine now excludes empty property sets on the wire which could result in problems for some Edge Node implementations

  • Modified MQTT Engine to only perform UDT collision detection for MQTT Transmission Sparkplug Edge Nodes

  • Improved logging to not log at info level on ignored tag collisions when a duplicate tag change event is being ignored and is identical to the original

  • Added support for excluding datatypes from CMD messages per the Sparkplug spec

  • Added support for missing datatypes in DATA messages per the Sparkplug spec

  • Added support for 'Binary Data' datatype

  • Added Engine side write support for ByteArray, DateTimeArray, and StringArray datatypes


Expand
titleWhat's Fixed
  • Fixed potential erroneous UDT collision warnings in MQTT Engine

  • Fixed potential NPE in UDT collision detection for templates with no parameters

  • Fixed timing issue that could result in Transmission attempting to read tags before the tag provider is started which could result in failure to initialize on startup



Expand
titleMQTT Transmission


Expand
titleWhat's New or Improved
  • Made 'hashing algorithm' names consistent across all modules
  • Increased the default query timeout for disk-backed history stores to improve reliability on underpowered systems
  • Added support for excluding datatypes from DATA messages per the Sparkplug spec
  • Added support for missing datatypes in CMD messages per the Sparkplug spec
  • Added a dedup filter to prevent some edge cases where BIRTH and subsequent DATA messages could include identical tag change events
  • Added support for 'Binary Data' datatype
  • Set defaults for history store configurations


Expand
titleWhat's Fixed
  • Fixed multiple edge cases where duplicate tag change events could be sent when they shouldn't be
  • Fixed edge case that could result in some metrics failing to get aliases assigned when aliasing is enabled
  • Fixed support for ByteArray datatypes
  • Fixed potential NPEs when flushing history in-order
  • Fixed issue that could result in live data being mixed in with history during in-order history flush
  • Added Paho bug workaround to minimize leaked Paho threads
  • Fixed dataset deserialization when in use in history stores which resulted in zero values in datasets at MQTT Engine
  • Fixed issue that could result in missing aliases when using aliasing with history stores
  • Removed issue that could result in Ignition shutdown when using disk-backed history store
  • Fixed issue that required a CA cert when using client side cert auth even if using a 'real' CA



Expand
titleMQTT Recorder


Expand
titleWhat's New or Improved
  • Made 'hashing algorithm' names consistent across all modules


Expand
titleWhat's Fixed
  • No fixes



Expand
titleAWS Injector


Expand
titleWhat's New or Improved
  • Increased the default query timeout for disk-backed history stores to improve reliability on underpowered systems
  • Added support for 'Binary Data' datatype


Expand
titleWhat's Fixed
  • Fixed multiple edge cases where duplicate tag change events could be sent when they shouldn't be
  • Fixed timing issue that could result in Transmission attempting to read tags before the tag provider is started which could result in failure to initialize on startup
  • Fixed support for ByteArray datatypes

  • Fixed dataset deserialization when in use in history stores which resulted in zero values in datasets

  • Added code to ensure a history store is not started if the Injector is disabled

  • Removed issue that could result in Ignition shutdown when using disk-backed history store



Expand
titleAzure Injector


Expand
titleWhat's New or Improved
  • Increased the default query timeout for disk-backed history stores to improve reliability on underpowered systems
  • Added support for 'Binary Data' datatype


Expand
titleWhat's Fixed
  • Fixed multiple edge cases where duplicate tag change events could be sent when they shouldn't be
  • Fixed timing issue that could result in Transmission attempting to read tags before the tag provider is started which could result in failure to initialize on startup
  • Fixed support for ByteArray datatypes
  • Added Paho bug workaround to minimize leaked Paho threads
  • Fixed dataset deserialization when in use in history stores which resulted in zero values in datasets
  • Added code to ensure a history store is not started if the Injector is disabled
  • Fixed potential IoT Hub deadlock
  • Removed issue that could result in Ignition shutdown when using disk-backed history store



Expand
titleGoogle Cloud Injector


Expand
titleWhat's New or Improved
  • Modified default configuration to use Clearblade IoT Core endpoint
  • Increased the default query timeout for disk-backed history stores to improve reliability on underpowered systems
  • Added support for 'Binary Data' datatype


Expand
titleWhat's Fixed
  • Fixed multiple edge cases where duplicate tag change events could be sent when they shouldn't be
  • Fixed timing issue that could result in Transmission attempting to read tags before the tag provider is started which could result in failure to initialize on startup
  • Fixed support for ByteArray datatypes
  • Added Paho bug workaround to minimize leaked Paho threads
  • Fixed dataset deserialization when in use in history stores which resulted in zero values in datasets
  • Added code to ensure a history store is not started if the Injector is disabled
  • Removed issue that could result in Ignition shutdown when using disk-backed history store



Expand
titleEFM ABB Totalflow


Expand
titleWhat's New or Improved
  • Made 'hashing algorithm' names consistent across all modules


Expand
titleWhat's Fixed
  • No fixes



Expand
titleEFM Emerson ROC


Expand
titleWhat's New or Improved
  • Made 'hashing algorithm' names consistent across all modules


Expand
titleWhat's Fixed
  • No fixes



Expand
titleOpto22 groov EPIC and SNAPPAC Driver


Expand
titleWhat's New or Improved
  • No new features


Expand
titleWhat's Fixed
  • No fixes



...