ACM Software Release Contents

ACM Software Release Contents

 

Information about ACM Security can be found:  AUTOSOL Security Center

Releases In Active Maintenance

*Use the "shift" key to sort by multiple columns.

 

Release

Type

Category

Description

Affects Published Output

Addresses Security Vulnerability

Release

Type

Category

Description

Affects Published Output

Addresses Security Vulnerability

9.2.1

bug

Alias Groups/Items

Corrects an issue where alias groups could be saved with incomplete or duplicate entries.

 

 

9.2.1

bug

asiDataRPC,Item Server

Reduces nuisance error logging from the asiITEMSERVER service.

 

 

9.2.1

bug

asiREPORTSERVER,Configuration Server

Corrects an issue where no entry was logged to the Windows event log if certain services failed to start due to a TCP/IP service port conflict.

 

 

9.2.1

bug

asiREPORTSERVER,Configuration Server

Corrects an issue that doesn't log an entry to the Windows event store if specific services can't start due to a failed process query.

 

 

9.2.1

bug

Bridge

Corrects an issue where bridge logs would be cleared on restart.  Adds logging of topic names for messages received.  Adds logging of payloads decoded into JSON.

 

 

9.2.1

bug

Bridge

Update asiBRIDGE to use OpenSSL 3.5.5.

 

 

9.2.1

bug

Bridge

Major Architecture Refactor

  • Implements multiple worker threads to process incoming messages simultaneously

New Feature: Sequence Tracker
New Sequence Tracking logic provides nuanced Sparkplug sequence number validation:

  • Handles the Sparkplug 255→0 wraparound correctly

  • Distinguishes between: good, duplicate, one-off gap (exactly 1 skipped), large forward gap (triggers rebirth), out-of-order/under

  • Per-device sequence tracking to handle multi-device interleaving without false rebirth requests

  • On node rebirth, all per-device sequence entries for that node are cleared

  • 10-second rate limiter on rebirth requests to the same node to prevent rebirth spam

New Feature: Diagnostics Manager
A new $Diagnostics OPC device is exposed with real-time operational metrics:

  • Queue metrics: Queues.IncomingMessages, Queues.DistributionMessages, Queues.PendingDAUpdates, Queues.ProcessingDAUpdates, Queues.PendingVectorQueue,


     Queues.TotalWorkerQueue, Queues.Worker{N} per worker thread

  • Count metrics: Counts.TotalNodes, Counts.TotalDevices, Counts.TotalTags, Counts.ClientCount

  • Broker metrics: Brokers.ConnectedCount, Brokers.TotalCount, Brokers.Broker{N}.Online, Brokers.Broker{N}.IP

  • Performance: Performance.UptimeSeconds

New Feature: Internal OPC Items

  • ClientsConnected "” per-node diagnostic item

  • LastBirthTimestamp "” per-node and per-device, set on each birth/rebirth

  • LicenseStatus "” license validity now managed by MessageDistributor with expiration time

Performance Improvements

  • Sparkplug payload decoding moved out of the processor thread into a dedicated thread, unblocking message ingestion

  • Data message processing uses a concurrent queue with vector merging on a separate thread to reduce contention

Bug Fixes

  • Corrects a null pointer crash when cleaning up old OPC items during device death

  • Corrects state message construction and state monitoring

  • Adds an existence check before writing to an OPC item to prevent writing to deleted tags

  • Corrects handling of string metric writes

  • Corrects a comparison bug where the settings enum was compared directly to mosquitto's MQTT_PROTOCOL_V5 constant

  • Corrects an edge case causing broker connection to not recover after loss

  • Corrects out-of-bounds access in rebirth request handling

  • Corrects an issue where backfill files not being created

  • Duplicate MQTT messages are now silently ignored instead of processed

  • Adds guards for internal items to prevent errors during death message handling

  • Corrects handling of metrics where the datatype changes between birth messages

  • Corrects license validity check logic

  • Restores deletion of device tags on device death/shutdown

Logging Improvements

  • All log messages in BrokerConnection are rewritten with structured fields (host, port, error code, error string) for easier diagnosis

  • Corrects a crash/issue with empty logging directory

  • Corrects log message line endings

  • Separate log file for write operations vs. broker status

  • Removed per-line logging spam in ProcessBackfill

  • Adds logging for write message lifecycle

 

 

9.2.1

bug

Client Application

Resizes the protocol option box on several device forms to improve readability and reduce scrolling.

 

 

9.2.1

bug

Client Application

Improves the error message displayed when a user without access tries to connect to ACM.

 

 

9.2.1

bug

Client Application

Corrects an unhandled exception when clicking the "Navigate to Object" menu item on the multi-edit grid control.

 

 

9.2.1

bug

Client Application

Corrects an issue that prevents View and Publish Filter objects from being imported correctly.

 

 

9.2.1

bug

Client Application

Corrects a validation error when modifying fields in newly inserted grid rows.

 

 

9.2.1

bug

Client Application

Corrects an issue in tabular view where exiting a form with unsaved changes could cause items in a collection to be removed.

 

 

9.2.1

bug

Client Application

Corrects an issue that could delete the wrong object in the configuration tree when multiple objects are selected for deletion.

 

 

9.2.1

bug

Client Application

Corrects an exception that can occur when opening a multi-edit form.

 

 

9.2.1

bug

Client Application

Corrects an issue where an error popup appears when a device diagnostic item (on the Options tab) is empty and the asiITEMSERVER service is not running.

 

 

9.2.1

bug

TCP Listen Connection

Corrects an issue that caused a priority task to interrupt all devices on the same TCPListen port.

 

 

9.2.1

bug

TCPIP Connection

Corrects an issue that causes a TCP-based port to close before the "Port Release Delay" has elapsed when using "Release When Done".

 

 

9.2.1

bug

TCPIP SSL Connection

Updates the OpenSSL version to resolve vulnerabilities.

 

 

9.2.1

bug

Edge EFM Collection Service

Updates a .NET Framework dependency DLL.

 

 

9.2.1

bug

General

Corrects an issue where asiData could exit unexpectedly after a Daylight Savings time change.

 

 

9.2.1

bug

General

Corrects an issue where MQTT DBIRTH and DDEATH messages are not properly sent when items are added to or removed from alias groups.

 

 

9.2.1

bug

General

Corrects an issue where the $Server.ActiveItems value may not be accurate after a client disconnects.

 

 

9.2.1

bug

General

Improves file validation for the ACM API.

 

 

9.2.1

bug

General

Corrects an issue that leaves meter objects assigned to copied devices.

 

 

9.2.1

bug

General

Corrects an issue that prevented some clients from accessing the $Server "Internal Items" branch when browsing.

 

 

9.2.1

bug

General

Corrects an issue that may prevent ACM from stopping with auto-shutdown when clients rapidly connect and disconnect.

 

 

9.2.1

bug

General

Corrects an issue that allowed IPC Data Update Messages to be logged when the option was not enabled.

 

 

9.2.1

bug

Importer/Exporter

Corrects an import issue where new object properties were linked to old objects.

 

 

9.2.1

bug

Importer/Exporter

Corrects an issue that occurred when importing User Strings inside a FlowX map.

 

 

9.2.1

bug

Item Server

Adds message logs when the Item Service or the Config Service can't start due to TCP listen errors.

 

 

9.2.1

bug

Item Server,MQTT

Corrects issues with remote certificate validation in ItemServer for complex MQTT broker certificate chains.

 

 

9.2.1

bug

Item Server,MQTT

Corrects an issue that can cause multiple incomplete DBIRTH messages when publishing large item counts to MQTT Sparkplug B.

 

 

9.2.1

bug

OPC UA

Improves session handling between ACM OPC UA components when a system time change occurs.

 

 

9.2.1

bug

OPC UA

Corrects an issue where an OPC UA client application could add monitored items in one session while deleting the same items in another session.

 

 

9.2.1

bug

OPC UA

Adds support for new OPC UA encryption security endpoints.

 

 

9.2.1

bug

OPC UA

Logs OPC UA session creation and deletion as informational messages.

 

 

9.2.1

bug

OPC UA

Reduces the amount of time the server takes to process monitored item service calls from the client. Corrects synchronization issues if the client deletes a session then adds a new session immediately with the same list of monitored items. Corrects an issue that could cause a node to have an active monitored item but the item was not active in ACM. Corrects an issue where the service call to CreateMonitoredItems could time out and cause multiple monitored items to be created on a node resulting in the client only having a handle to one monitored item.

 

 

9.2.1

bug

OPC UA

Corrects an issue that prevented access to the OPC UA Session Diagnostics namespace. Adds a new DataAccessDiagnostics namespace.

 

 

9.2.1

bug

OPC UA

Increases the default value for MaxMonitoredItemsPerCall to 8,000 to improve client startup times.

 

 

9.2.1

bug

Base Protocol

Corrects an issue that can cause an incorrect queued message count.

 

 

9.2.1

bug

Base Protocol

Improves the log message for device polling failures to clarify when a connection object is disabled or closed by user action.

 

 

9.2.1

bug

BSAP Protocol

Corrects an issue during primary path testing where NRI messages would become stuck in a loop.

 

 

9.2.1

bug

Client Application,Dresser MC3 Protocol

Corrects an issue where the "Collection Priority" and "Collect Meter Config" configuration properties were missing from the Dresser MC3 Archive Collection tab.

 

 

9.2.1

bug

ControlLogix Protocol

Corrects Control Logix poll cycle error during communication failure.

 

 

9.2.1

bug

DNP3 Protocol

Corrects an issue with messages from the Meter Config upload being left in the read queue when the upload is disabled.

 

 

9.2.1

bug

DNP3 Protocol

Do not map indicated mass to mass.  These are separate fields, and some types of liquid coriolis FBx meters include both mass and indicated mass, which could cause the wrong mass value to be published to CFX. Note: CFX has a field for indicated volume, but not for indicated mass.

 

 

9.2.1

bug

Dresser MC3 Protocol

Corrects the background color of the Archive tab in the Dresser MC3 protocol.

 

 

9.2.1

bug

Eagle Protocol

Corrects an issue where password fields and saved password values are displayed in plain text instead of being masked in both the UI and logger.

 

 

9.2.1

bug