# Atlas Copco Data Communication (3.8)

## Software

# Introduction

In this section, you can find the basic information about the product and also the formatting conventions used in the topics.

# General Description

Atlas Copco Data Communication is a data communication service for collecting and storing data from controllers and devices.

# General Data Protection Regulation (GDPR)

This product offers the possibility to process personal identifiable information such as system user name, role and IP-address. The purpose of this processing capability could be to enhance quality control through traceability and proper access management.

If you decide to process personal data you need to be aware of and comply with relevant personal data protection rules, including, in the EU the GDPR as well as other applicable laws, directives and regulations. Atlas Copco can in no way be held liable for any use made by you of the product.

# Revision History

Release Number
Revision Date
Revision Description
Search

Release Number | Revision Date | Revision Description
--- | --- | ---
item | item | none
3.8 | 3/2026 | UPDATED content Configuring the Settings Tab Index Reorganize and Index Rebuild MQTT Overview Upgrade Prerequisites RabbitMQ Overview RabbitMQ Prerequisites RabbitMQ Setup Working with Delete Maintenance NEW content Cybersecurity Recommendations RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x
3.7 | 11/2025 | UPDATED content Configuring the Settings Tab Default Installation Path Upgrade Prerequisites NEW content MQTT Overview
3.6 | 07/2025 | UPDATED content Configuring the Settings Tab Database Installation Tab Working with Delete Maintenance RabbitMQ Prerequisites NEW Content Working with AppSettings TTL (Time To Live) for ACDC-Gateway messages
3.5 | 12/2024 | UPDATED content System Requirements Configuring the Settings Tab Upgrade Prerequisites RabbitMQ Prerequisites
3.4 | 11/2024 | NEW content: RabbitMQ Prerequisites UPDATED content System Requirements Before Installation Configuring the Settings Tab Upgrade Prerequisites RabbitMQ Overview
3.3 | 04/2024 | UPDATED content: System Overview Before Installation Installing Atlas Copco Data Communication Default Databases Configuring the Settings Tab Database Installation Tab Working with the Database Reference
3.2 | 12/2023 | UPDATED content: System Requirements Configuring the Settings Tab
3.1 | 09/2023 | NEW content: Troubleshooting Matrix UPDATED content: Database Installation Tab Index Reorganize and Index Rebuild
3.0 | 04/2023 | UPDATED content: Default Installation Path Supported Platforms System Requirements Before Installation Default Databases Configuring the Settings Tab Database Installation Tab Working with the Log Level RabbitMQ Overview
2.5 | 12/2022 | NEW content: Upgrade prerequisites UPDATED content: Configuring the Settings Tab
2.4 | 06/2022 | UPDATED content: Configuring the Settings Tab Working with Delete Maintenance
2.3 | 03/2022 | UPDATED content: Configuring the Settings Tab
2.2 | 11/2021 | UPDATED content: Configuring the Settings Tab Working with Delete Maintenance
2.1 | 07/2021 | NEW content: RabbitMQ Overview UPDATED content: Before Installation Configuring the Settings Tab
2.0 | 06/2021 | UPDATED content: System Requirements Configuring the Settings Tab
1.14 | 03/2021 | NEW content: Working with the DataCommunication Installation Configurator Configuring the Settings Tab Database Installation Tab Troubleshooting During Installation UPDATED content: Installing Atlas Copco Data Communication
1.13 |  | No changes. New version 1.13 due to software release 1.13
1.12 |  | No changes. New version 1.12 due to software release 1.12
1.11 |  | No changes. New version 1.11 due to software release 1.11
1.10 |  | Added - Default installation path for PowerMacs Program Manager
1.9 |  | Added - Net upgraded to .Net 4.7.2 Added - PowerMacs Installation Requirements Added - Working with the Log Level
1.8 |  | Added - Setting up Protocol Ports
1.7 |  | Added - Atlas Copco WebAPI services Updated System Overview Minor improvements and bug fixes
1.5 |  | Added - Maintaining the Database Added - Setting up Delete maintenance Added - Setting up Delete unbound graphs Added - Setting up Facts and dimensions for results Added - Index reorganize and Index rebuild in Oracle
1.4 |  | Default installation path - updated Before installation - New Port information System requirements - updated Installing Atlas Copco Data Communication - updated
1.3 |  | Initial release

# Conventions

To enhance user understanding, certain formatting conventions are used throughout this document. The formatting conventions used are listed below.

User Guide Conventions
Element | Notation | Description | Output
--- | --- | --- | ---
General emphasis | In the Program workspace. | To make certain text elements stand out, or to highlight. | Text in Bold
Graphical User Interface (GUI) items | Select the Function button. | Any reference to items found on screen in the GUI (for example, command buttons, icon names and field names). | Text in Bold
Graphical User Interface (GUI) Path > | Generally, on the top of the GUI. | Navigation aid which keeps track of the location in the GUI. | For example: Controller > Program > Edit
User input | Enter a Description for the program. | Any text input by the user. | Text in Bold
File names | Enter a File Name for the export. | Files either exported from, or imported into the system. | Text in Bold Italic
Variable and parameter names | Enter a Name for the export. | Variable and parameter names (not values). | Text in Italic
Variable and parameter values | Enter a VALUE for the export. | Variable and parameter values. | Text in BOLD CAPS
System output | Client.Domain.Models.ExportImportConfiguration | Any text output by the system. | Text in Monospace
External links | https://servaid.atlascopco.com www.atlascopco.com https://webbox.atlascopco.com/webbox/dimdrw | Links to external sites that have information connected to the document or subject content. These could include: Technical Product Data Dimensional Drawings Accessories Product Specific Information | Selectable text to external sites
Internal documentation links |  | Relevant Information - links to information which is directly related to the current topic and needs to be considered for certain configurations that are made. In this Section - links to all the topics within the section, which can be useful when understanding a feature, or configuration. If available, these links will be presented below the text. | Selectable text to internal content

# System Overview

A | Tools/Controllers
B | Producer/Interpreter
C | Consumer
D | Database
E | Unify (3rd party software)
F | MQTT
G | Alture
H | Web API

# Installation and Upgrade

In this section, you can find information to help with the initial installation of the product, or upgrading from one version to another.

# Installation Restrictions

# Supported Platforms

Depending on the version of the system and the license used, data collection can be gathered from the following systems:

- Power Focus 3000, Power Focus 4000, PowerMacs 3000, PowerMacs 4000, Power Focus 6000, MT Focus 6000, PF8, SYS6000, Unity.

- Non- Atlas Copco vendors through ToolsNet Open Protocol and ToolsNet Data Collection Protocol.

# System Requirements

## Atlas Copco Data Communication Software Requirements

- RabbitMQ, see Configuring the Settings Tab, RabbitMQ Overview.

- .NET 8.0 runtime, .NET Desktop 8.0 runtime and ASP.NET Core 8.0 runtime

- When HTTPS is enabled for the ACDC Web API or when TLS is enabled for Power Focus 6000, a valid certificate needs to be installed on the application server and configured to be used in Installation Configurator. See Configuring the Settings Tab.

To use TLS 1.3, Atlas Copco Data Communication WebAPI Services must run on Windows Server 2022 or later.

Https is enabled by default for new installations. Without a valid certificate ACDC WebAPI and ACDC DataCommunication services will fail to start.

One of the certificate's purposes must be Server Authentication.

## Atlas Copco Data Communication Server Software Requirements

- Windows server, see release notes for verified versions.

For help with installation of this software, see the official web pages of the respective software providers.

## Database Server Software Requirements

- SQL server

Ensure that SQL Server Agent is activated before installation. Activate SQL Server Agent in Windows services.

For help with installation of the Database Server software, see the official web pages of the respective software providers.

## PowerMACS Installation Requirements

For installing requirements with PowerMacs, see the PowerMacs 4000 User Guide.

# Before Installation

The following preparations have to be made prior to installation of Atlas Copco Data Communication:

- Ensure that the computer(s) that are to run Atlas Copco Data Communication satisfy the hardware and software requirements.

- Ensure that the system firewall is OFF, or open the ports.

- Install RabbitMQ and make sure that the setup corresponds to the Atlas Copco Data Communication configuration. Refer to RabbitMQ Prerequisites in RabbitMQ Overview.

Port No | Protocol | Firewall | Description | Configurable
--- | --- | --- | --- | ---
9010, 9011 | TCP | External | Power Focus 4000 | Yes
9012, 9013 | TCP | External | PowerMacs Protocol version 3 | Yes
9014, 9015 | TCP | External | ToolsNet Open Protocol | Yes
9016 | TCP | External | Power Focus 6000 | Yes
9017 | TCP | External | Power Focus 6000 with TLS | Yes
6700 | TCP | External | ToolsNet Data Collection Protocol | Yes
5672 | TCP | Internal | Port used for the internal RabbitMQ broker | Yes
7110 | TCP | External | Web API port used by integrated products, for example ToolsNet Web | Yes
7111 | TCP | Internal | Internal Web API port for Atlas Copco Data Communication | Yes
7112 | TCP | Internal | Internal Web API port for Atlas Copco ProtocolServerStore service. | Yes
15672 | TCP | Internal | Internal Web Management port for internal RabbitMQ broker | Yes

Ensure that the database server is installed, properly setup, and running.

## Hard Disks and Data Files

Contact the database administrator to decide the following settings:

1. Ensure that there is enough free hard disk space for Production data.

2. Decide which hard disk volume and folder should be used for Production data.

The SQL server transaction log file grows when delete maintenance is running. This log file is truncated when the database is backed up. The database administrator must have a strategy for keeping a reasonable log file size.

# Default Installation Path

For a default installation of Atlas Copco Data Communication, the file paths of files can be found in the tables below.

`C:\Program files (x86)\Atlas Copco` | Root folder for Atlas Copco applications
--- | ---
...\ACDataCommunicationWebAPI | Used for Atlas Copco Data Communication Web API service and appSettings files.
...\ACDataCommunication | Used for Atlas Copco Data Communication service and appSettings files.
...\PowermacsProgramManager | Used for Atlas Copco Data Communication PowerMacsProgramManager service.
...\ACDCInstallationConfigurator | Used for Atlas Copco Data Installation Configurator.
...\ProtocolServerStore | Used for Atlas Copco Data ProtocolServerStore service and appSettings files.
...\ACDCNotificationService | Used for Atlas Copco Data Communication Notification Service and appSettings files.
...\ACDCManagement | Used for Atlas Copco Data Communication Management Service and appSettings files.

`C:\ProgramData\Atlas Copco` | Root folder for application settings and application log files
--- | ---
...\Logs | Application log files
...\Audit Logs | Audit log files
...\ToolsNetDatabase | Installation scripts for the Atlas Copco Data Communication database.
...\ACDCCommon | Settings that are common for different parts of Atlas Copco Data Communication.
...\ProtocolServerStore | Used for the Atlas Copco Data ProtocolServerStore service database.

# Installing Atlas Copco Data Communication

The DataCommunication Installation Configurator helps configure the necessary settings before starting the Atlas Copco Data Communication service.

1. Double-click or run the AtlasCopco Data Communication-x.x.x.msi file.

2. In the InstallShield Wizard, read the information and click Next.

3. Read and accept the terms in the License Agreement and click Next to continue.

   The Destination Folder window opens.

4. Click Change... to choose a different location to install the configurator. The default installation location is C:\Program Files (x86)\Atlas Copco\. The Ready to Install the Program window opens.

5. Click Install to begin the installation. After the installation is complete, the InstallShield Wizard Completed window opens.

6. Click Finish to open the DataCommunication Installation Configurator.

   The DataCommunication Installation Configurator opens.

7. Continue the configuration of the Atlas Copco Data Communication service by going to Working with the DataCommunication Installation Configurator.

Relevant Information

- Troubleshooting During Installation

In this Section

- Default Databases

# Default Databases

The installation package will create the databases, add table spaces, and add required users, depending on the database types used.

Database type | Default database name | Purpose
--- | --- | ---
SQL Server | AtlasCopco_ToolsNet_Database | Storage for production data, such as results and traces.
SQL Server - ProtocolServerStore | AtlasCopco_ACDC_ProtocolStore | Storage for controller sequence numbers.
SQLite – ProtocolServerStore | AcdcProtocolServerStoreService | Storage for controller sequence numbers. The SQLite database is self contained within the ProtocolServerStore service. No separate installation is required.

ProtocolServerStore service can use either SQL Server or SQLite.

# Starting Atlas Copco Data Communication Services

The Atlas Copco Data Communication services needs to be started manually. This is done through Windows Services.

1. Go to Services using Search or the Windows + Q shortcut.

2. In the Services window, find Atlas Copco Data Communication Service in the list of services and right-click to Start the service.

# Upgrade Prerequisites

Uninstall any previous version of Atlas Copco Data Communication before upgrading to version 3.7.x or above.

In order to use Atlas Copco Data Communication Unify Service, a valid Atlas Copco Data Communication Unify License must be applied.

RabbitMQ must be configured to use version 2 (v2) of the queues before starting the Atlas Copco Data Communication service.

When upgrading or installing the latest , make sure RabbitMQ prerequisites are set before starting. If these were already set in the previous version, you can skip the steps below.

When using Atlas Copco Data Communication version 3.7.x or above, upgrading from RabbitMQ v3.11.x to RabbitMQ v4.x.x, specific upgrade steps must be followed. Read RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x for more information.

## RabbitMQ

When upgrading Atlas Copco Data Communication from a version earlier than 3.5.0, configure the following RabbitMQ prerequisites before you upgrade. These steps are not required if you are migrating to RabbitMQ 4.x.x.

1. Ensure all non-meta data queues on the ACDC-Internal virtual host are empty.

2. Stop the RabbitMQ service and navigate to the RabbitMQ folder. The default path is C:\Users\{username}\AppData\Roaming\RabbitMQ. Adjust the path if you have a custom installation.

3. Locate or create the configuration file for RabbitMQ: rabbitmq.conf.

4. Add the following configuration setting to the file.

   `# Set the default version for classic queues`

   `classic_queue.default_version = 2`

   `# Use '2' for classic queues (v2)`

5. Restart the RabbitMQ service.

6. Apply a policy to the ACDC-InternalServices virtual host to ensure its queues run exclusively on version 1 (v1):

   1. Open the Admin tab in RabbitMQ.

   2. Select Policies.

   3. Add or update a policy using the following settings:

      - Virtual host: ACDC-InternalServices

      - Name: v1policy

      - Apply to: Queues

      - Definition: queue-version = 1

7. Delete all queues for the controllers on the ACDC-Internal virtual host before starting the Atlas Copco Data Communication service.

# Configuration

In this section, you can find detailed information about how to create, modify, and verify product settings.

# Working with the DataCommunication Installation Configurator

It is possible to manually start the DataCommunication Installation Configurator. The application is located in a directory relative to the selected installation location <installation path>\Atlas Copco\ACDCInstallationConfigurator.

The default location is C:\Program Files (x86)\Atlas Copco\ACDCInstallationConfigurator.

Open the application by selecting AtlasCopco.InstallationConfigurator.DataCommunication.exe.

In this Section

- Configuring the Settings Tab
- Database Installation Tab

# Configuring the Settings Tab

The Settings tab configures the Atlas Copco Data Communication Service, the Atlas Copco Data Communication WebAPI Services, the Protocol Server Store database, the on-premises database, and the Atlas Copco cloud.

## ACDC

Enables settings for the Atlas Copco Data Communication Service.

Configuring ACDC

1. Verify the General settings.

   The general settings that need to be configured for the service.

2. Verify the Protocol Servers settings.

   The various controllers or tools connected to the service.

3. Verify the Protocol Server Store settings.

   The external service that keeps track of the data consumed and stored within the controller. This is important in the event of a connection failure between the controllers and the Data Communication service.

4. Verify the Internal RabbitMQ settings.

   The settings for the internal communication with the Atlas Copco Data Communication service.

5. If needed, verify the ToolsTalk 2 RabbitMQ settings.

   The connection settings between ToolsTalk 2 and the controllers using RabbitMQ.

6. Review the settings and click Save.

General
Settings | Description
--- | ---
Settings File | The file path to the settings file currently in use.
General Settings | Server IP The IP address that the controllers are connected to. Enable Graph Compression Enables/disables graph value compression in the database. Start Protocol Servers The protocol servers handling the communication between ACDC and the controllers. Select the checkbox to enable the protocol listeners. Start Consumers Enables/disables dispatching messages from the message queue and send them to DB and/or Atlas Copco cloud.
Log Settings | Level Indicates the level of detail in the information to be stored in the log. The available options are: Verbose Debug Information Warning Error Location The target location for the log files.

Protocol Servers
Settings | Description
--- | ---
Protocol Server Ports | The ports used by the specific protocol listeners. The available options are: Px2 Px2 with TLS Power Focus 4000 PIM Power Focus 4000 PowerMACS PIM PowerMACS TNOP PIM TNOP TNDCP TNDCP with TLS Enabling TLS for any protocol requires a certificate to be provided in Security Settings. To use TLS 1.3, Atlas Copco Data Communication WebAPI Services must run on Windows Server 2022 or later.
Enable Protocol Servers | Enable/disable listeners for specific protocols. The available options are: Px2 Px2 with TLS Power Focus 4000 PowerMACS TNOP TNDCP TNDCP with TLS Open Protocol SYS6000 Enabling TLS for any protocol requires a certificate to be provided in Security Settings. To use TLS 1.3, Atlas Copco Data Communication WebAPI Services must run on Windows Server 2022 or later.

Protocol Server Store
Settings | Description
--- | ---
General Settings | Port The port used by the Protocol Server Store. Hostname The host where the Protocol Server Store is installed.
Log Settings | Level Indicates the level of detail in the information to be stored in the log. The available options are: Verbose Debug Information Warning Error Location The file path where the logs are stored.
Database settings | Database Provider The database provider for storing controller data. The available options are: SQL Server Recommended for installation as an on-premise database. Data Source The IP address of the SQL Server. Initial Catalog The name of the SQL Server database. Trust server certificate Default value: False If this checkbox is cleared (default), the SQL Server must use a trusted certificate. If this checkbox is selected, the SQL Server's self-signed certificate is trusted automatically. This is not recommended due to security reasons. SQLite Recommended for any other type of installation. Location The path to where the SQLite database is stored.

Internal RabbitMQ
Settings | Description
--- | ---
General RabbitMQ Settings | Hostname The host where RabbitMQ is installed. Port The port number of the machine connecting RabbitMQ. Username The username used by Atlas Copco Data Communication when connecting to the RabbitMQ broker. Password The password used by Atlas Copco Data Communication when connecting to the RabbitMQ broker.
Internal Queue | Virtual Host The name of the RabbitMQ virtual host used by Atlas Copco Data Communication for internal communication. Management API Port The port used to access the RabbitMQ management plugin UI. Management API Scheme The API scheme used for accessing the RabbitMQ management plugin UI.
Internal Services | Virtual Host The name of the RabbitMQ virtual host used by Atlas Copco Data Communication for communicating with the Protocol Server Store service. Verification Status Verify the connection after adding the configuration settings.

External RabbitMQ
Settings | Description
--- | ---
ToolsTalk 2 RabbitMQ | Enable publishing of messages to ToolsTalk 2 (from release v2.17) via RabbitMQ. RabbitMQ must be installed before you can continue with the settings. For more information how to install RabbitMQ, see RabbitMQ Overview. Exchange Name The name of the RabbitMQ exchange that Atlas Copco Data Communication communicates with. Hostname The hostname of the RabbitMQ broker. The host where RabbitMQ broker is installed. By default, this field is empty which means RabbitMQ publishing is turned off. Specify a value to turn on RabbitMQ publishing. Port The port that Atlas Copco Data Communication uses when connecting to the RabbitMQ broker. Virtual Host The virtual host name that Atlas Copco Data Communication uses when connecting to the RabbitMQ. It is required to be / if it is not possible to change within ToolsTalk 2 configuration. Default value: ACDC-TT2 Username The username Atlas Copco Data Communication is using when connecting to the RabbitMQ broker. Password The password Atlas Copco Data Communication is using when connecting to the RabbitMQ broker. If Atlas Copco Data Communication has already been installed, restart the AtlasCopco_DataCommunication service to activate the settings.
ToolsNet RabbitMQ | Enable publishing of messages to ToolsNet via RabbitMQ. Exchange Name The name of the RabbitMQ exchange that Atlas Copco Data Communication communicates with. Hostname The hostname of the RabbitMQ broker. The host where RabbitMQ broker is installed. By default, this field is empty which means RabbitMQ publishing is turned off. Specify a value to turn on RabbitMQ publishing. Port The port that Atlas Copco Data Communication uses when connecting to the RabbitMQ broker. Default value: 5672. Virtual Host The virtual host name that Atlas Copco Data Communication uses when connecting to the RabbitMQ. It is required to be / if it is not possible to change within ToolsNet configuration. Default value: ACDC-ToolsNet. Username The username that Atlas Copco Data Communication uses when connecting to the RabbitMQ broker. Password The password that Atlas Copco Data Communication uses when connecting to the RabbitMQ broker.

## Web API

Enables settings for the Atlas Copco Data Communication WebAPI Services to collect data over a web API with an option to host using HTTPS.

Configuring Web API

1. Verify the file path for the Settings File currently in use.

2. In Port Settings, specify the Web API Port number used for hosting the Web API. By default, the Web API uses port 7443 for HTTPS communication and port 7110 for HTTP communication.

3. Verify the Log Settings, if required.

   Log Settings
   Settings | Description
   --- | ---
   Level | Indicates the level of detail in the information to be stored in the log. The available options are: Verbose Debug Information Warning Error
   Location | The file path where the log files are stored.

4. To configure Web API for HTTPS, in Https Settings, ensure that the Enable Https checkbox is selected.

   Enabling HTTPS requires a certificate to be provided in Security Settings. The certificate needs to be setup prior to installing the Atlas Copco Data Communication service. It will not be generated automatically by the service.

5. When using HTTPS, enter the External Web Api Https Port and Internal Web Api Https Port used for hosting Web API. The default Web API HTTPS port values are 7443 for external and 7111 for internal.

## On Premise

Enables the settings for the on-premise database. The service stores the data in a local database.

Configuring On Premise

1. Select the Enable settings for on-prem database checkbox.

2. Select the Database Provider:

   - SQL Server

3. Enter the Data Source. The IP address for an SQL Server.

   If the SQL Server is hosted on the computer running the installation, the IP address is `127.0.0.1.`

4. By default, Initial Catalog shows the name of the database. This value cannot be modified.

5. By default, when the Trust server certificate checkbox is cleared, the SQL Server must use a trusted certificate.

   If this checkbox is selected, the SQL Server's self-signed certificate is trusted automatically. This is not recommended due to security reasons.

## Alture

Enables settings for Atlas Copco cloud.

Configuring Alture

1. Select the checkbox Enable settings for Atlas Copco cloud.

2. Configure the settings accordingly.

Settings | Description
--- | ---
IOT Hub Connection String | The IoT Hub Connection String, provided by Atlas Copco.
IOT Hub Communication Protocol | The protocol used when communicating with the IoT Hub. The available options are: Amqp_WebSocket_Only Amqp
Heartbeat interval | The interval (in seconds) at which Atlas Copco Data Communication should send a message to the IoT Hub to verify that the service is functional.
Proxy Server | The URL for the proxy to use, if a proxy should be used.
Proxy Username | The username for the proxy connection.
Proxy Password | The password for the proxy connection.
Proxy Domain | The domain for the proxy connection.
Maximum Batch Size | Maximum allowed batch size to be used when sending multiple messages together to Azure IOT hub.
Cache To Disk Interval | Cache offload to disk interval (in seconds) for storing Unit information together with Result, Jobresult, Event and Program sequence numbers.

Verify that the ACDC application server supports the minimum TLS version required by the Alture installation. It is recommended to use TLS 1.2 or higher.

## Unify

Settings to configure Unify.

Configuring Unify

1. Select the Enable Unify checkbox.

2. Select the appropriate License File using CHOOSE FILE....

   When using Flexera licensing, run the Unify License Enabler first to get a valid license file.

3. In CDM Database Settings, enter the IP address for an SQL Server in Data Source.

   Required if On-premise and Unify are enabled.

4. By default, Initial Catalog, shows the name of the database. This value cannot be modified.

5. By default, when the Trust server certificate checkbox is cleared, the SQL Server must use a trusted certificate.

   If this checkbox is selected, the SQL Server's self-signed certificate is trusted automatically. This is not recommended due to security reasons.

6. Enter valid port numbers for Unify Management Settings. To enable Management to run with the HTTPS protocol, select the Enable HTTPS checkbox.

7. In Log Settings, set the level of detail in the information to be stored in the log using the Level drop-down menu and the target location of the log files using Location.

   The available levels are:

   - Verbose

   - Debug

   - Information

   - Warning

   - Error

In Unify Publishing Settings, the settings for MQTT and RabbitMQ can be configured. The settings define messages to be published to MQTT or RabbitMQ or both. The prerequisite for this is to set Topics in MQTT and Routing keys in RabbitMQ before configuring and starting the Atlas Copco Data Communication service.

Publishing Settings
Settings | Description
--- | ---
MQTT Settings | MQTT broker must be installed before you can continue with the settings. The broker must support MQTT v5 and QoS level 2 (Exactly Once). For more information on how to install an MQTT broker, see MQTT Overview. MQTT Topics are used in the MQTT ecosystem for the broker to determine which clients receive specific messages. Enable Publish To MQTT Select this checkbox to publish data to an MQTT broker. By default, this checkbox is disabled. When enabled, more settings are available: Broker URL The host where the MQTT broker is installed. A URL must be entered to be able to publish messages to MQTT broker. Username Enter the username for MQTT broker authentication. Leave this field blank, if you use the MQTT broker without authentication configured. Password The password for the broker. Leave this field blank, if you use the MQTT broker without authentication configured.
RabbitMQ Settings | RabbitMQ must be installed before you can continue with the settings. For more information how to install RabbitMQ, see RabbitMQ Overview. In RabbitMQ, exchanges are used as routing mediators that decide what messages are sent to a queue, multiple queues or discarded. Queues deliver messages to consumers using a FIFO model. Bindings are used by exchanges to route messages to specific queues. Routing keys in RabbitMQ are attached to exchanges to filter specific messages and route them to the bounded queues. Enable RabbitMQ Publishing: Toggles the RabbitMQ publishing settings to be visible. When enabled, the following setting are available: Exchange Name: The name of the RabbitMQ exchange to use. Hostname: The host where RabbitMQ is installed. (This value must be set if the Enable RabbitMQ Publishing checkbox is checked) Username: The username Atlas Copco Data Communication is using when connecting to the RabbitMQ broker. Password: The password Atlas Copco Data Communication is using when connecting to the RabbitMQ broker. Virtual Host: The name of the RabbitMQ virtual host. Port: The port Atlas Copco Data Communication is using when connecting to the RabbitMQ broker. Publish Ack Timeout: Time allowed for message acknowledgment (in seconds).
Unify V1 | The Unify version(s) of the messages that should be published. Applies to both MQTT and RabbitMQ publishing. Currently only Unify V1 is supported. The available models are: Tools Controller Result with Trace Events Joining Processes

## Remote Logging

Settings | Description
--- | ---
Elastic Stack | Enable loggging to Elasticsearch: Enables logging to Elasticsearch. Url: Url to Elasticsearch. Username: Username for Elasticsearch. Password: Password for Elasticsearch. Index: Elasticsearch index. The logs are sent to this index.

## Security Settings

1. In Choose Certificate, select a certificate that will be used for TLS and/or HTTPS.

2. Click Verify certificate to validate the selected certificate.

3. In Audit log settings, specify the Location where the logs must be stored. The default location is C:\ProgramData\Atlas Copco\Audit Logs\<service name>\

   Audit logs must be protected and must not be changed. By default, only the software has write access to audit log files. Normal users are blocked from accessing or changing these files.

   Audit logs must be immutable. Default permissions must be retained. Changing file permissions can affect the integrity of audit data. Responsibility for data changes lies with the customer.

   Audit logging is also available through OpenTelemetry (OTEL). OTEL uses the same settings as regular logging. To filter audit logs in OTEL, use: Attributes.LogType: "Audit"

   Audit Logs for Atlas Copco Data Communication Installation Configurator will always be in the default location.

4. After reviewing the settings, click Save and then click Close.

# Database Installation Tab

The Database Installation tab sets the installation settings for the on-premises database and the Protocol Server Store database.

## On Premise

Settings

1. In the Database Installation Settings, enter the sign-in information for the database:

   - Username

     SQL Server username.

   - Password

     SQL Server password.

   Ensure that the user has permission to create a database, users, and database jobs.

   The user account entered in this step is only used for the installation. The installer creates new users with limited access only to the Atlas Copco Data Communication database and the Atlas Copco Data Communication related database jobs.

2. Enter the folder path where the database files are going to be placed:

   - If the installation is local, select a location.

   - If the installation is remote, enter a location.

     Ensure that the folder exist on the targeted datasource address.

3. Verify the settings by selecting Verify Connection. The test connection will attempt to log in to the database using the credentials provided.

4. Select Next when the verification is successful.

Features

1. In the Feature Selection dialog box, select all features.

   It is recommended to run all the scripts in Feature Selection during an upgrade.

   If you are upgrading from an ACDC version earlier than 3.1, it is highly recommended to run the migration feature "Update Database job schedules for index maintenance" in order to upgrade the Database Job schedules for index maintenance.

2. Select Next.

Progress

3. In the Progress overview dialog box, all selected features from the Feature selection dialog box appears.

4. Select Execute to start the installation.

5. When the database installation is ready, select OK in the pop-up window.

6. Continue with next database installation if needed or close DataCommunication Installation Configurator by selecting Close.

## Protocol Server Store

The view and options in Settings depends on the selected Database Provider for Protocol Server Store in the Settings tab:

If the selected Database Provider is SQL Server

Settings

1. In SQL Server Database Installation Settings, enter the sign in information for the database:

   - Username

     SQL Server username.

   - Password

     SQL Server password.

2. Verify the settings by selecting Verify Connection. The test connection will attempt to log in to the database using the credentials provided.

3. Select Next when the verification is successful.

Ensure that the user has permission to create a database, users, and database jobs.

The user account entered in this step is only used for the installation. The installer creates new users with limited access only to the Atlas Copco Data Communication database and the Atlas Copco Data Communication related database jobs.

If the selected Database Provider is SQLite

Settings

1. In the SQLite Database Installation Settings, Database and Location are visible.

2. Select Next.

Features

1. In the Feature selection dialog box, select all features.

   It is recommended to select all the scripts in Feature Selection during an upgrade.

2. Select Next.

Migration Settings

1. In Alture migration settings, select the Migrate Alture sequence numbers checkbox to enable migration of data from Atlas Copco cloud to the Protocol Server Store.

2. In the On-premise database migration settings, select the Migrate on-premise sequence numbers checkbox to enable migration of legacy information from the SQL database to the Protocol Server Store and enter the sign-in information for the database:

   - Username

     SQL Server username.

   - Password

     SQL Server password.

3. Verify the settings by clicking the Verify Connection button. The test connection will attempt to log in to the database using the credentials provided.

4. Select Next.

Progress

1. In the Progress overview dialog box, all selected features from the Feature selection dialog box appears.

2. Click Execute to start the installation.

3. When the database installation is ready, click OK in the pop-up window.

4. Close the DataCommunication Installation Configurator by selecting Close.

## CDM

The Database settings for CDM are enabled (and required), if both On-premise and Unify are enabled.

Settings

1. In the Database Installation Settings, verify the Datasource and enter the Username and Password as the sign-in information for the database.

   - Username

     SQL Server username.

   - Password

     SQL Server password.

2. In Installation Folder, enter the folder path to store the database files.

   - If the installation is local, select a location.

   - If the installation is remote, enter a location.

   Ensure that the folder exists on the targeted datasource address.

3. Verify the settings by clicking Verify Connection. The test connection will attempt to log in to the database using the credentials provided.

4. Select Next when the verification is successful.

Features

1. In Feature selection, select all features.

2. Select Next.

There are currently no extra features available for CDM.

Progress

1. In Progress, all selected features from Features appear.

2. Select Execute to start the installation.

3. When the database installation is complete, select OK in the pop-up window.

4. Continue with next database installation if necessary, or close the DataCommunication Installation Configurator by selecting Close.

Relevant Information

- Troubleshooting During Installation

# Working with the Database

In order to keep the Atlas Copco Data Communication database up and running with good performance and reliability, the following maintenance activities are recommended:

- Make regular backups of the database to secure the data in case of hardware failure and to keep the transaction log from growing in size.

- Rebuild and reorganize the indexes in the database regularly, to keep the transactions and searches fast and optimized.

- Delete old results that are no longer needed. This reduces the required disk space and improves report creation speed. After a Delete maintenance job it is also recommended to reorganize the indexes.

- To run the maintenance job, setup and start the job scheduler manager for required database type.

A | AtlasCopcoDataCommunication Service | B | AtlasCopcoDataCommunication_WebAPI service
C | AtlasCopcoDataCommunication_ProtocolServerStore Service | D | AtlasCopcoDataCommunication_PowerMacsProgramManager service
E | AtlasCopcoDataCommunication Database | F | PSS Database

# Working with Delete Maintenance

Step
Job
Properties
Search

Step | Job | Properties
--- | --- | ---
none | none | column
1 | Archive Check |
2 | Graph Maintenance | Days to Keep Bulk Size MaintenanceStopTime
3 | Result Maintenance | Days to Keep Bulk Size Min Results Per Unit And Program MaintenanceStopTime
4 | Event Maintenance | Days to Keep Bulk Size
5 | Maintenance Log | Days to Keep Bulk Size
6 | Program and Unit Maintenance | Days to Keep Bulk Size Delete Program by Last Used Date
7 | History Maintenance | Days to Keep Bulk Size
8 | Tools Maintenance | Days to Keep Bulk Size Delete Manual Tool

Default Values

- Days to Keep = 9999

- Bulk Size = 5000

- Delete Manual Tool = 0

- Delete Program by Last Used Date = 0

- MinResultsPerUnitAndProgram = 0

CDM Delete Maintenance
Step | Job | Properties
--- | --- | ---
1 | Result Maintenance | Days to Keep Bulk Size

Default Values

- Days to Keep = 90

- Bulk Size = 10000

## Editing and Scheduling Jobs

1. Run the database manager.

2. Go to the Job Scheduler for database type.

3. In the database Job Scheduler, configure the settings as per the specific job requirements.

## Configuring Job Steps Properties

@Bulksize and @DaysToKeep: those properties define how long data should be stored and how large should be the chunks to be deleted. Each "delete operation" deletes data in batches, and each batch deletes a number of rows. The maximum number of rows that can be deleted, which is equal to @Bulksize. This operation is repeated until all data longer than @DaysToKeep are deleted.

@DeleteManualTool: this property selects if the manual tools are to be deleted or not.

@DeleteProgramByLastUsedDate: this property selects how programs are to be deleted when running the maintenance job for program and unit.

@MinResultsPerUnitAndProgram: this property determines whether there is a minimum required number of results to keep for each Unit and Program combination regardless of @DaysToKeep. Applies to SQL Server installations only.

1. In the Select a page box select Steps.

2. In the Job step list select the necessary step. Then, select Edit.

3. In the General tab/command field, set the needed properties value and select OK.

   - @DaysToKeep = 0, deletes all data.

   - @DaysToKeep = 1, keeps data from the current day.

   @DeleteProgramByLastUsedDate = 0, makes the job delete programs based on when the programs were created/uploaded to the controller.

   @DeleteProgramByLastUsedDate = 1, makes the job delete programs based on when the programs were last used by the controller.

   @MinResultsPerUnitAndProgram = 0. Runs the job without any restrictions of the minimum number of results to keep per Unit and Program combination.

   @MinResultsPerUnitAndProgram > 0. Runs the job with respect to the number of minimum number of results to keep per Unit and Program combination.

# Working with Delete Unbound Graphs

## Editing and Scheduling Jobs

1. Launch the database manager.

2. Go to the Job Scheduler for database type.

3. In the database Job Scheduler, configure the settings as per the specific job requirements. To configure the Job Properties like DaysTokeep and Bulksize follow the steps below .

## Setting the Number of DaysToKeep and BulkSize

@Bulksize and @DaysToKeep are the properties for each database scheduler job that decides how long data should be stored and in how large chunks it should be deleted. Each delete operation will delete data in batches, each batch deletes a max number of rows which is equal to @Bulksize. This will be repeated until all data older than @DaysToKeep is deleted.

1. Select Steps, then select File in the Job Step List.

2. Select Edit. In the General tab/command field, set the correct value after @BulkSize and @DaysTokeep (@DaysToKeep = 0, will keep data from the current day).

3. Select OK.

# Working with the Log Level

If no custom log level is set, the default log level will be set by the configuration file.

If the Atlas Copco Data Communication service is restarted then all the current log filters will be removed, leaving only the global filter that was set up by the configuration file.

The log level can be changed while Atlas Copco Data Communication is running, by using the Atlas Copco Data Communication Web API.

The following log level system calls are available:

- Endpoint list of all the active log filters

  `GET http://127.0.0.1:7110/DataCommunication/v1/logging`

- Assign a new log level to a specific controller

  `POST http://127.0.0.1:7110/DataCommunication/v1/logging/{logId}/level/{logLevel}`

- Change the global log level for Atlas Copco Data Communication

  `PUT http://127.0.0.1:7110/DataCommunication/v1/logging/global/level/{logLevel}`

- Change the existing log level filter for a controller

  `PUT http://127.0.0.1:7110/DataCommunication/v1/logging/{logId}/level/{logLevel}`

- Reset the log level for the controller. This will revert to use the global log level

  `DELETE http://127.0.0.1:7110/DataCommunication/v1/logging/{logId}`

Log Levels
Log Level | Description
--- | ---
ERROR | Unhandled exceptions.
WARNING | Handled exceptions or other important events that could caus or indicate out of the ordinary application behavior.
INFORMATION | State changes in the application. Useful for managing application (setup information, service start/stop, controller connected/disconnected).
DEBUG | Information that can be used for debugging purposes (variables, method names).
VERBOSE | Similar to DEBUG but also with full object bodies.

## Communication of Log Id and Internet Protocol Address

The IP address can be found on the interface of the controller or in the log file, when it connects to Atlas Copco Data Communication.

Px2 uses a port number which is created when connecting to Atlas Copco Data Communication. You will find the port number in the log file and not in the controller.

Protocol | Log Id
--- | ---
Open Protocol | Controller IP address
Power Focus 4000 | Controller IP address
Px2 | Controller IP address and Port
PowerMACa | Controller IP address
ToolsNet Data Collection Protocol | Controller IP address
ToolsNet Open Protocol | Controller IP address

## Examples of System Calls

- Create a filter of the log level for PowerFocus 4000

  `POST http://127.0.0.1:7110/DataCommunication/v1/logging/127.0.0.1/level/verbose`

- Create a filter of the log level for Px2

  `POST http://127.0.0.1:7110/DataCommunication/v1/logging/127.0.0.1:53069/level/verbose`

# Working with AppSettings

AppSettings contain various application settings that are not visible in the Installation Configurator interface. If a user wants to configure these settings, they should open the appSettings.config file and manually update the desired values.

The default location of the appSettings.config file is: C:\Program Files (x86)\Atlas Copco\ACDataCommunication

After making changes to the file and saving it, the AtlasCopco_DataCommunication service must be restarted for the new settings to take effect.

In this Section

- TTL (Time To Live) for ACDC-Gateway messages

# TTL (Time To Live) for ACDC-Gateway messages

Configure TTL (Time To Live) for ACDC-Gateway messages using two new settings in the appSettings.config file. These settings determine how long messages stay in the queue before they are automatically discarded.

MQTT Message TTL

- Setting name: MqttMessageExpirationTimeInHours

- Description: Specifies the TTL (in hours) for messages sent via MQTT. After this time, messages will be discarded from topic.

- Default value: 24 hours

- How to disable TTL: Leave the value empty to disable TTL for MQTT messages

This setting is only applicable when using MQTT Client v5

RabbitMQ Message TTL

- Setting name: PublishingRabbitMqMessageExpirationTimeInHours

- Description: Specifies the TTL (in hours) for messages sent via RabbitMQ. After this, the messages will be removed from the queue.

- Default value: 24 hours

- How to disable TTL: Leave the value empty to disable TTL for RabbitMQ messages

# Index Reorganize and Index Rebuild

Index reorganize and Index rebuild are set up as jobs in the SQL Server Agent. There are separate jobs for the ACDC database and the ACDC CDM database. The reorganize job should be run once a day on a database. In a transaction heavy system, the rebuild job should be run once a week. The user can modify the job schedule for both jobs and also specify how long a job is allowed to execute in a single run. Both jobs will always run reorganize/rebuild in a specific order, starting with the heaviest fragmented index first.

For the Index Rebuild job, the user can specify:

- RebuildPercentageLimit: This sets the job to only rebuild indexes defraged with a percentage of this limit or above.

- RebuildStopTime: This sets the stop time for the index rebuild job relative to the scheduled start time. This specifies the maximum time the job is allowed to execute. The job will not stop at this time, it will finish up the current index rebuild but no additional indexes will be processed after. Example: The job is scheduled to start at 23:00 and should not run any longer than three hours, then the RebuildStopTime should be set to 02:00.

- MinPageCount: This sets the job only to reorganize indexes with a page size equal to this limit or above.

For the Index Reorganize job, the user can specify:

- LowerReorganizePercentageLimit: This sets job to only reorganize indexes defraged with a percentage of this limit or above

- UpperReorganizePercentageLimit: This sets the job to only reorganize indexes defraged with a percentage of this limit or lower.

- ReorganizeStopTime: This sets the stop time for the index reorganize job relative to the scheduled start time. This specifies the maximum time the job is allowed to execute. The job will not stop at this time, it will finish up the current index reorganization but no additional indexes will be processed after. Example: The job is scheduled to start at 20:00 and should not run any longer than two hours, then the ReorganizeStopTime should be set to 22:00.

- MinPageCount: This sets the job only to reorganize indexes with a page size equal to this limit or above.

# Troubleshooting and Service

This section provides assistance in troubleshooting problems, should they arise, and contains information to help you maintain and service the product.

# Troubleshooting During Installation

Problem | Cause/Solution
--- | ---
The InstallShield Wizard detects problems during the installation of AtlasCopco Data Communication.msi. | In the InstallShield Wizard dialog box, select Show the Windows Installer log and send the log file to Atlas Copco Marketing Support.
The Verify Connection fails. | Ensure that the folder for Remote installation has been created manually. Ensure that the user has been set up properly in the database server. The application AtlasCopco Data Communication.msi has not been installed correctly.
The database installation fails. | In the Progress overview dialog box, expand the features to verify which scripts failed (marked in red). For more information, see the log files C:\ProgramData\Atlas Copco\Logs\AcdcInstallationConfigurator. Select Execute to reinstall the scripts.
The DataCommunication Installation Configurator does not start or the installation fails. | For more information, see the log files C:\ProgramData\Atlas Copco\Logs\AcdcInstallationConfigurator.

# Reference

In this section, you can find miscellaneous useful information.

# RabbitMQ Overview

An installation of RabbitMQ is needed to publish messages from Atlas Copco Data Communication to ToolsTalk 2 (from version 2.17).

After installing RabbitMQ, ensure that the prerequisites are met before starting the Atlas Copco Data Communication service. Refer to RabbitMQ Prerequisites.

When using Atlas Copco Data Communication version 3.7.x or above, specific steps must be followed when upgrading from RabbitMQ v3.11.x to RabbitMQ v4.x.x. Read RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x for more information.

For a general overview of the RabbitMQ installation, visit https://www.rabbitmq.com/install-windows.html.

Installation
Step | To Do | Check
--- | --- | ---
1 | Installing Erlang runtime Download the Erlang runtime installer: https://github.com/erlang/otp/releases/download/OTP-25.3/otp_win64_25.3.exe. Run the installer and follow the guide. Select the default values proposed by the guide. | ░░
2 | Installing RabbitMQ Download the RabbitMQ installer: https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.11.28/rabbitmq-server-3.11.28.exe. Run the installer and follow the guide. Select the default values proposed by the guide. | ░░
3 | Enabling RabbitMQ Web Management Plugin, to manage RabbitMQ via a web browser On the Windows Start menu, select RabbitMQ Server/RabbitMQ Command Prompt (sbin). In the RabbitMQ Command Prompt (sbin dir), enter rabbitmq-plugins.bat enable rabbitmq_management. | ░░

Before the configuration of RabbitMQ make sure that the Atlas Copco Data Communication has been configured correctly.

Configuration
Step | To Do | Check
--- | --- | ---
4 | Configuring RabbitMQ Open a web browser on the same device where RabbitMQ is installed. Enter http://localhost:15672 as the URL. Sign in using Username: guest and Password: guest. Select the Admin tab and then select Add a user. Enter a Username and a Password. Select Admin and then select Add user. Set the permissions for the added user by selecting the user name from the users list. Select Set permission. | ░░

If you need to install Atlas Copco Data Communication, see Installing Atlas Copco Data Communication.

If Atlas Copco Data Communication is already installed, run the DataCommunication Installation Configurator again to complete the settings, see Working with the DataCommunication Installation Configurator and Configuring the Settings Tab.

Verification
Step | To Do | Check
--- | --- | ---
5 | After Atlas Copco Data Communication is installed, the following entry appears in the Atlas Copco Data Communication log file, [2021-06-11 12:16:03.368 INF RabbitMqBroadcastClient.CreateConnectionAndExchange ] - Created RabbitMQ broadcast exchange: AtlasCopco_ACDC_ToolsTalk_Exchange. The log file is located in C:\ProgramData\Atlas Copco\Logs\DataCommunicationService. | ░░

In this Section

- RabbitMQ Prerequisites
- RabbitMQ Setup

# RabbitMQ Prerequisites

When upgrading or installing the latest version of Atlas Copco Data Communication, make sure RabbitMQ prerequisites are set before starting. If these were already set in the previous version, you can skip the steps below. For more information, read Upgrade Prerequisites.

Ensure that the Atlas Copco Data Communication service is stopped before configuring RabbitMQ to use version 2 (v2) of the queues.

When using Atlas Copco Data Communication version 3.7.x or above, specific steps must be followed when upgrading from RabbitMQ v3.11.x to RabbitMQ v4.x.x. Read RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x for more information.

1. Ensure all non-meta data queues on the ACDC-Internal virtual host are empty.

2. Stop the RabbitMQ service and navigate to the RabbitMQ folder. The default path is C:\Users\{username}\AppData\Roaming\RabbitMQ. Adjust the path if you have a custom installation.

3. Locate or create the configuration file for RabbitMQ: rabbitmq.conf.

4. Add the following configuration setting to the file.

   `# Set the default version for classic queues`

   `classic_queue.default_version = 2`

   `# Use '2' for classic queues (v2)`

5. Restart the RabbitMQ service.

6. Apply a policy to the ACDC-InternalServices virtual host to ensure its queues run exclusively on version 1 (v1):

   1. Open the Admin tab in RabbitMQ.

   2. Select Policies.

   3. Add or update a policy using the following settings:

      - Virtual host: ACDC-InternalServices

      - Name: v1policy

      - Apply to: Queues

      - Definition: queue-version = 1

7. Delete all queues for the controllers on the ACDC-Internal virtual host before starting the Atlas Copco Data Communication service.

Additional information

- Delete all queues on ACDC Internal

  RabbitMQ's topology has been updated to version 3.6. To ensure proper configuration and avoid unexpected behavior, all queues in the ACDC internal vhost must be deleted before setting up the new topology.

- Exclude RabbitMQ folders from Antimalware (Recommendation)

  To prevent RabbitMQ queues from entering a “Down” state—which can disrupt a significant portion of the system—it is recommended to exclude all RabbitMQ folders from antimalware scanning.

- Upgrade to secure erlang version (SSH) (Recommendation)

  By default, RabbitMQ does not enable Erlang’s SSH module. However, administrators and operators can manually enable it, which may introduce potential security vulnerabilities.

In this Section

- RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x

# RabbitMQ v4.2.4 - Upgrade from ACDC 3.7.x

Use this procedure when upgrading RabbitMQ from version 3.11.x to version 4.2.x for Atlas Copco Data Communication 3.7.x or above.

## Requirements

- Erlang 26.2 or later (supported up to 27.x).

- Minimum 200 GB free disk space on the application server.

- Disk write speed of at least 200 MB/s.

- Windows Server 2022 or later.

## Prerequisites

- Stop Atlas Copco Data Communication.

- Empty all queues on ACDC Internal.

- Verify no Atlas Copco Data Communication processes are running before starting the upgrade.

Upgrade steps

1. Uninstall RabbitMQ, then uninstall Erlang.

2. Delete existing RabbitMQ data files (default location): C:\Users\Administrator\AppData\Roaming\RabbitMQ

3. If RabbitMQ or Erlang folders remain in C:\Program Files, delete them. If a folder cannot be removed, restart the server and delete it after reboot.

4. Download and install Erlang (recommended version for this upgrade: 27.3.4.8): https://www.erlang.org/patches/otp-27.3.4.8

5. Download and install RabbitMQ 4.2.x: https://www.rabbitmq.com/docs/install-windows#downloads

6. Complete RabbitMQ configuration by following the RabbitMQ setup section in the Atlas Copco Data Communication User Guide. Read RabbitMQ Setup for more information.

## Important information and verification

- Ensure the AtlasCopco_ACDC_ProtocolStore database state is preserved during the RabbitMQ upgrade. Changing the database type or deleting the database catalog/file will reset its state and may trigger reprocessing of a large number of controller messages.

- Make sure Erlang and RabbitMQ versions are compatible before starting Atlas Copco Data Communication.

- After installation, verify RabbitMQ service status and that all required ports and users are configured per the Atlas Copco Data Communication User Guide.

- Restart Atlas Copco Data Communication only after RabbitMQ is running and verified.

# RabbitMQ Setup

The following covers the basic setup of RabbitMQ in order to function with ACDC. Any further advanced scenarios or options are not covered in this guide.

- A virtual host for ACDC internal queuing should exist (default name: "ACDC-Internal").

- A virtual host for ACDC internal services should exist (default name: "ACDC-InternalServices").

- A full access user account must exist for these virtual hosts.

If ToolsTalk 2 is to be used together with ACDC, then the following setup should exist in the RabbitMQ-installation:

- A virtual host for ToolsTalk 2 should exist (default name "ACDC-TT2").

- An exchange of type topic, bound to the virtual host should exist (default name "AtlasCopco_ACDC_ToolsTalk_Exchange").

- A full access user account must exist for this virtual host.

If ACDC Unify is to be used then the following setup should exist in the RabbitMQ-installation:

- A virtual host for RabbitMQ publishing should exist (default name: "ACDC-Publishing").

- An exchange of type topic, bound to the virtual host should exist (default name "amq.topic").

- Queues should be created and bound to the exchange.

- A full access user account must exist for this virtual host.

Relevant Information

- RabbitMQ Overview

# MQTT Overview

An installation of MQTT broker is necessary to publish messages from the Atlas Copco Data Communication. In the following setup, the MQTT broker used is Eclipse Mosquitto but any broker that supports MQTT v5 and QoS level 2 (Exactly Once) can be used.

## Setting Up the Mosquitto MQTT Broker

Follow these steps to install and configure the Mosquitto MQTT Broker with support for MQTT v5.

1. Install the Mosquitto MQTT Broker

   1. Download the Mosquitto installer from the official website: https://mosquitto.org/download

   2. Select version 1.6.0 or later to ensure compatibility with MQTT v5.

   3. Run the installer and follow the on-screen instructions.

2. Configure the Authentication

   1. Open Command Prompt as an administrator.

   2. Navigate to the Mosquitto installation directory: `cd "C:\Program Files\mosquitto"`

   3. Create a password file using the following command: `mosquitto_passwd.exe -c passwd.txt acdcuser`

   4. When prompted, enter the desired password. This creates a passwd.txt file in the Mosquitto directory.

3. Update the Mosquitto Configuration

   1. Open the mosquitto.conf file located in: `C:\Program Files\mosquitto`

   2. Add the following lines to the configuration file:

      `allow_anonymous falsepassword_file`

      `C:\Program Files\mosquitto\passwd.txt`

   3. Save and close the file.

4. Restart Mosquitto Broker Service

   1. Open the Services application (services.msc) and restart the Mosquitto Broker service.

5. Verify the MQTT version

   1. Open Command Prompt and run the following command:

      `mosquitto -h`

   2. The expected output is similar to:

      `mosquitto is an MQTT v5.0/v3.1.1/v3.1 broker.`

# Useful Information

ProtocolServerStartupDelayInSecs is a new optional configuration property that is recommended to be used only in installations that include more than 150 controllers.

By default, this property is disabled and all protocols start simultaneously. When configured, ProtocolServerStartupDelayInSecs introduces a delay between the startup of different protocol types. The recommendation is to set a delay of 5 minutes (300 seconds), though the optimal value may vary depending on the mix of controllers in the system.

Enabling this setting triggers a staggered startup process. As a result, it may take up to 30 minutes for the service to begin reading from all controllers.

To ensure system stability, particularly in large deployments with numerous units and high-frequency data collection, it is strongly recommend to set this delay. It helps prevent potential overload of RabbitMQ during the startup phase.

# Cybersecurity Recommendations

Do not expose ACDC endpoints or services to the public internet.

If the Atlas Copco Data Communication server is decommissioned, the application owner must make sure all associated application data, configurations, and sensitive information stored on the server are securely deleted in accordance with the organization’s data‑handling and security policies.