myDLMS Login

Conformance Testing Tips and Tricks

Here, some useful tips and tricks are provided to facilitate conformance assessment and certification.

Licensing the CTT

Installation of the CTT

The CTT shall be installed following the Guidance provided by EuroDCS. The Readme file provides release notes.
The licence file (_.lic file) and the COSEM Object definitions (_.dat file) shall be copied to the same folder where the ctt.exe file is found (e.g. C:\Program Files\DLMSUA\CTT).

Logical Device Name

The Logical Device Name of each Logical Device shall meet the requirements specified in the Blue Book: Three-letter manufacturer identifier "FLAG ID" plus up to 13 octets. It shall uniquely identify the IUT so that the test can be reproduced on the same IUT if needed.

Enable and DoNotTest options

The CTI allows enabling or disabling the testing of Logical Devices and Application Associations declared in the CTI and it allows declaring some DoNotTest options.
If the purpose of the test session is to obtain a Certification, then all test cases shall be selected, the testing of all Logical Devices and Application Associations shall be enabled and all DoNotTest options shall be omitted or empty.

CTT fatal failure handling

In the case when a failure occurs in a test case that may affect running other test cases the CTT raises a fatal failure. The user may choose from one of a predefined set of options:

- "Abort the test session": if this choice is taken, the test session is aborted;

- "Continue": if this choice is taken, the test session is continued;

- "Ask the user": if this choice is taken, the test session is suspended and a dialog box is displayed. If the operator chooses to continue the test session, it is resumed. If the operator chooses not to continue, then the test session is aborted.

In all cases, the reason for raising the fatal failure is logged. In some cases, an EXCEPTION can occur during the test session. These may be caused by inappropriate settings or by abnormal data received from the IUT. The Help file provides more information on this.

The test session can be aborted any time from the Run menu.

CTI declaration


There are problems reported related to ClassExtraInfo or InstanceExtraInfo declarations.


In the CTT3.0 CTI template there are some example specifications e.g. for ClassExtraInfo (with ClassId = 8, Clock), and InstanceExtraInfo declarations (with classId = 40, Push).

However these declarations are not complete and if they are left as they are they may cause problems during testing.


Please check carefully that all elements of the CTI fit the implementation and any elements not needed are commented out or completely removed.

Mandatory objects – Current Association

When the IUT uses LN referencing, make sure that the "Association LN".associated_partners_id attribute is readable and the value matches the server_SAP and the client_SAP. Otherwise, the COSEM mandatory objects test results an INCONCLUSIVE verdict and the object_list cannot be reported. This leads to the rejection of the Test Report.

Length of CtoS

Green Book Edition 8.3 Table 42 specifies that the length of CtoS and StoC shall be 8 to 64 octets for HLS mechanisms (2) – (6), and that the length of CtoS and StoC shall be 32 to 64 octets for HLS mechanism (7).

CTT 3.1 Release 106 and lower generates CtoS of length 8 to 64 octets no matter the HLS mechanism.

If there is an issue with testing HLS mechanism (7) due to a CtoS that is too short, then the workaround is to declare CtoS in the CTI, as described in the CTI specification file delivered with CTT 3.1. In this case, the IUT will always accept the CtoS.

The CtoS challenge is set using HLSChallenge.
"HLSChallenge, optional string for associations using HIGH_LEVEL_SECURITY_xxx. It is the value set in the AARQ.CallingAuthenticationValue. If not specified, then an arbitrary value between 8 and 64 octets is set."