How to avoid "BadCommunicationError" in UaExpert using Anybus CompactCom 40 IIoT Secure?

17 Nov 2022

This article is about a "BadCommunicationError" when trying to establish a connection with the OPC-UA client UaExpert to your Anybus CompactCom IIoT Secure module as OPC-UA server.

In UaExpert, when you try to add your Anybus CompactCom IIoT Secure module as a server, instead of getting a list of available endpoints you end up with a "BadCommunicationError":

mceclip1.png

 

APPLICABLE PRODUCTS

AB6650, Anybus CompactCom for PROFINET M40 IIoT Secure
AB6651, Anybus CompactCom for EtherNet/IP M40 IIoT Secure
AB6689, Anybus CompactCom for PROFINET B40 IIoT Secure
AB6690, Anybus CompactCom for EtherNet/IP B40 IIoT Secure
AB6750, Anybus CompactCom for PROFINET M40 IIoT Secure without housing
AB6751, Anybus CompactCom for EtherNet/IP M40 IIoT Secure without housing

 

BACKGROUND


The application note "Enabling and Using OPC UA on Anybus CompactCom 40 IIoT Secure" describes the steps necessary for a connection with UaExpert.  In short, both the OPC-UA client and server need to trust each other by installing their respective certificates in order to set up a secure connection.

Therefore, by means of the Anybus Certificate Generator, you need to:

  1. Create a CA (certificate authority) certificate (unless you already own one from a third party)
  2. Create a device certificate stemming from the CA certificate and install it to your Anybus CompactCom IIoT Secure
  3. Create the UaExpert application certificate and install it to your Anybus CompactCom IIoT Secure
  4. Install the device certificate (from step 2) in UaExpert

 

POSSIBLE CAUSE

When working out step (2), generating the device certificate in the Anybus Certificate Generator, it is vital that you strictly adhere to the following rules when filling out the fields for Common Name (CN) and Alternative Name (URI).

mceclip0.png

Thus, the default value of the Alternative Name (URI) can either contain the network hostname or the module's serial number:

urn:<hostname>:anybus:compactcom40
or
urn:<serial number>:anybus:compactcom40

An example for the Alternative Name (URI) in case you didn't attribute a network hostname is

urn:A05B2986:anybus:compactcom40

like in both screenshots below

CN-URI.PNG

CN-URI-2.PNG

You can find out the serial number of your Anybus CompactCom IIoT Secure on the sticker or by reading out attribute #3 of the Anybus object #1.

ADDITIONAL INFO