Skip to main content

Configuration

The CODESYS Mass Licenser is configured by means of a configuration file. The file must be named CML.cfg and be located in the C:\ProgramData\CODESYS CML\configuration\ directory.

The CODESYS Mass Licenser add-on will not start without the configuration file.

Important

Administrator permissions are required to create the CFG file.

There are basically two different license configurations:

  • Configuration for a license ticket which contains only one license.

  • Configuration for a license ticket for a bundle license for several products

    A bundle license always includes several, non-identical products. One example of this is an application-based runtime system license (CODESYS Control Basic). By default, this bundle license also includes the license for operating the TargetVisu and the WebVisu (CODESYS Visualization S) and the license for operating the symbol configuration, the communication manager, and the data source manager (CODESYS Communication S). It does not include a license for operating a soft PLC.

Example 1. Example

Configuration file for the license types: single license and bundle license

Single license

Bundle license

{
    "Settings" : [
        { "Username" : "admin" },
        { "Password" : "admin" },
        { "LicenseCentralUrl" : "https://license.codesys.com/gateways"},
        { "GatewayAddress" : "192.168.101.67" },
        { "FilterDeviceId" : "0x8041"},
        { "FilterNodeName" : "^MyDevice-*"},
        { "LogVerbose" : false},
        { "ConnectTimeout" : 0},
        { "LogRotateEntries" : 10000},
        { "KeepUserDB" : false },
        { "LicenseDongle" : false },
    ],
    "Licenses" : [
        {
            "LicenseName" : "1stlicense",
            "LicenseFile" : "%APPDATA%\\CODESYS CML\\licenses\\CML_TestA_LicenseA.txt",
            "LicenseFirmCode"    : 6000437,
            "LicenseProductCode" : 20000,
            "LicenseFeatureMap"  : "",
        },
        {
            "LicenseName" : "2ndlicense",
            "LicenseFile" : "%APPDATA%\\CODESYS CML\\licenses\\CML_TestA_LicenseB.txt",
            "LicenseFirmCode"    : 6000437,
            "LicenseProductCode" : 20001,
            "LicenseFeatureMap"  : "0004",
         }
    ]
} 
{
    "Settings" : [
        { "Username" : "admin" },
        { "Password" : "admin" },
        {"LicenseCentralUrl" : "https://license.codesys.com/gateways"},
        { "GatewayAddress" : "192.168.101.67" },
        { "FilterDeviceId" : "0x8041"},
        { "FilterNodeName" : "^MyDevice-*"},
        { "LogVerbose" : false},
        { "ConnectTimeout" : 0},
        { "LogRotateEntries" : 10000},
        { "KeepUserDB" : false },
        { "LicenseDongle" : false },
    ],
    "Licenses" : [
        {
            "LicenseName" : "1stlicense",
            "LicenseFile" : "%APPDATA%\\CODESYS CML\\licenses\\CML_TestA_LicenseA.txt",
            "LicenseFirmCode"    : 6000437,

            "LicenseBundle" :    [
                {
                    "LicenseProductCode" : 12290,
                    "LicenseFeatureMap"  : "2000"
                },
                {
                    "LicenseProductCode" : 12291,
                    "LicenseFeatureMap"  : "0800"
                },
                {
                    "LicenseProductCode" : 12292,
                    "LicenseFeatureMap"  : "0200"
                }
            ]
        }
    ]
}

Tip

More examples can be found under C:\ProgramData\CODESYS CML\configuration\ after installation.



Parameter description

Parameter

Description

Default Value

Data Type

Optional

Username

User name which the CODESYS Mass Licenser uses to create the temporary user management

CMLTool

STRING

Yes

Password

Password which the CODESYS Mass Licenser uses to create the temporary user management

Serial number of the device

STRING

Yes

GatewayAddress

Address of the gateway where the controllers can be reached

Localhost

STRING

Yes

FilterDeviceId

Filter for the device ID

Only devices with a suitable ID are considered by the CODESYS Mass Licenser. For hexadecimal values, specify the 0x prefix. You can either take the values from the device description or detect them by scanning in CODESYS.

STRING

Yes

FilterNodeName

Filter for the device name

Only devices with a suitable ID are considered by the CODESYS Mass Licenser. C# regex expressions are permitted.

STRING

Yes

LogVerbose

Detail level in the log output

FALSE: No details

TRUE: Output with details

FALSE

BOOL

Yes

ConnectTimeout

Time allowed to establish a connection

20 seconds

Integer

Yes

LogRotateEntries

Number of entries stored in the log file

After that, the entries are overwritten.

Integer

Yes

KeepUserDB

Specifies whether or not the user defined by user name and password is retained after the licensing process

For security reasons, this setting should only be used for devices with a preconfigured user administration. Otherwise, the user administration configured here, which has not been created directly by the user, is retained.

FALSE

BOOL

Yes

LicenseDongle

Specifies whether or not the license should is saved on a Wibu license dongle

Only one dongle may be plugged into the device at a time. By default, the license is saved in a soft container.

FALSE

BOOL

Yes

Under the "Licenses" field, enter the licenses which you want to activate on the controllers. Some parameters are required for this:

Parameter

Description

LicenseName

Name of the license

This parameter is only used for differentiation in log outputs.

LicenseFile

Directory where the text files with the respective licenses are stored

This has to exist in order for the CODESYS Mass Licenser to start.

LicenseFirmCode

Firm code of the respective license

The firm codes are listed in the table below.

LicenseProductCode

Product code of the respective license

The product codes are listed in the table below.

LicenseFeatureMap

Feature map of the respective license

The feature maps are listed in the table below.

LicenseBundle

Parameters for bundle licenses

LicenseFeatureMap and LicenseProductCode must be entered and grouped under this entry for bundle licenses.

Important

Note that all licenses must have the same firm code for successful licensing with CODESYS Mass Licenser.

If a license container is already available on your device, then make sure that the licenses to be imported have the same firm code. Moreover, you also need to configure the CODESYS Mass Licenser with the firm code of the available license container.

Licenses

License

Name

Firm Code

Product Code

Feature Map

000131

Test license: CML_01

6000437 / 5000304

20000

n/a

000132

Test license: CML_02

6000437 / 5000304

20001

0004

000133

Test license: CML_03

6000437 / 5000304

20002

n/a

2101000008

CODESYS Depictor

6000437 / 5000304

8750

0000

2111000003

Matrix Library

5000304

8707

n/a

2112000000

Home Energy Control

5000304

8717

0001

2112000003

MsSQL library SL

6000437 / 5000304

8766

0001

2302000000

CODESYS Control RTE SL

6000437 / 5000304

305017

0001

2302000001

CODESYS Control RTE SL (for Beckhoff CX)

5000304

305017

0001

2302000003

CODESYS Control Win SL

6000437 / 5000304

305021

0001

2302000005

CODESYS Control​ for Linux SL

6000437 / 5000304

8755

0001

2302000006

CODESYS Control SoftMotion RTE SL

6000437 / 5000304

309015

0001

2302000007

CODESYS Control SoftMotion RTE SL (for Beckhoff CX)

6000437 / 5000304

309015

0001

2302000009

CODESYS Control for Raspberry Pi SL

6000437 / 5000304

603001

0001

2302000010

CODESYS Control for PFC200 SL

6000437 / 5000304

8752

0001

2302000013

CODESYS Control for BeagleBone SL

6000437 / 5000304

8751

0001

2302000014

CODESYS Control for emPC-A/iMX6 SL

6000437 / 5000304

309041

0001

2302000019

CODESYS Control for PFC100 SL

6000437 / 5000304

8767

0001

2302000026

CODESYS Control for IOT2000 SL SL

6000437 / 5000304

8768

0001

2302000028

OPC DA Server SL

6000437 / 5000304

8772

0001

2302000030

CODESYS Control Win MC SL

6000437 / 5000304

8786

20000000

2302000031

CODESYS Control​ for Linux MC SL

6000437 / 5000304

8791

20000000

2302000032

CODESYS Control for Raspberry Pi MC SL

6000437 / 5000304

8787

20000000

2302000033

CODESYS Control for PLCnext SL

6000437 / 5000304

8795

0001

2302000036

CODESYS Control for PLCnext MC SL

6000437 / 5000304

8802

20000000

2302000037

CODESYS Control for emPC-A/iMX6 MC SL

6000437 / 5000304

8788

20000000

2302000038

CODESYS Control for WAGO​ Touch Panel 600​ SL

6000437 / 5000304

8805

0001

2302000039

CODESYS Control for Linux ARM SL

6000437 / 5000304

8785

20000000

2302000040

CODESYS Redundancy SL

6000437 / 5000304

4224

0001

2302000041

CODESYS OPC UA Server SL

6000437 / 5000304

4352

0001

2302000042

CODESYS OPC UA Client SL

6000437 / 5000304

8806

0001

2302000043

CODESYS Control RTE MC SL

6000437 / 5000304

8789

20000000

2303000001

CODESYS Modbus TCP Client SL

6000437 / 5000304

4128

0002

2303000005

CODESYS BACnet SL

6000437 / 5000304

4320

0001

2303000006

CODESYS EtherNet/IP Adapter (Slave) SL

6000437 / 5000304

4192

0001

2303000007

CODESYS EtherNet/IP Scanner SL

6000437 / 5000304

4464

0001

2303000008

CODESYS IO-Link SL

6000437 / 5000304

4272

0001

2303000009

CODESYS PROFINET Controller (for EL6631) SL

6000437 / 5000304

4384

0001

2303000010

CODESYS PROFINET Device (for EL6631-0010) SL

6000437 / 5000304

4416

0001

2303000011

CODESYS Profibus Slave (for EL6731-0010) SL

6000437 / 5000304

4400

0001

2303000012

CODESYS Profibus Master (for EL6731) SL

6000437 / 5000304

4288

0001

2303000014

CODESYS Modbus Serial Clinet SL

6000437 / 5000304

4129

0002

2303000015

CODESYS PROFINET Controller (Master) SL

6000437 / 5000304

4448

0001

2303000018

CODESYS EtherCAT Master SL

6000437 / 5000304

4112

0001

2303000019

CODESYS Modbus Serial Server SL

6000437 / 5000304

4129

0001

2303000020

CODESYS Modbus TCP Server SL

6000437 / 5000304

4128

0001

2303000021

CODESYS PROFINET Device (IEC) SL

6000437 / 5000304

4432

0001

2303000022

CODESYS J1939 Manager SL

6000437 / 5000304

4240

0001

2303000232

CODESYS KNX SL

6000437 / 5000304

8773

0001

2303000233

CODESYS CANopen Manager SL

6000437 / 5000304

4096

0002

2304000000

CODESYS HMI SL

6000437 / 5000304

304

0001

2304000002

CODESYS TargetVisu SL

6000437 / 5000304

256

0001

2304000004

CODESYS WebVisu SL

6000437 / 5000304

272

0001

2304000010

CODESYS HMI SL

5000304

8763

0002

2305000000

CODESYS SoftMotion SL

6000437 / 5000304

512

0001

2305000001

CODESYS SoftMotion CNC+Robotics SL

6000437 / 5000304

512

0006

2305000002

CODESYS SoftMotion Light SL

6000437 / 5000304

513

0001

2305000008

CODESYS SoftMotion Light SL (US)

6000437 / 5000304

513

0001

2306000000

CODESYS Safety for EtherCAT Safety Module (EL6900) SL

6000437 / 5000304

4256

0001

2311000000

CODESYS IIoT Libraries SL

6000437 / 5000304

8803

0001

2311000001

CODESYS OPC UA PubSub SL

6000437 / 5000304

8809

0001

2312000000

JSON HTTP Client Library

6000437 / 5000304

8753

-

2312000001

Romod I/O Module SL

5000304

8765

0001

2312000002

JANZ TEC MQTT LIBRARY FOR CODESYS SL

6000437 / 5000304

8761

0001

2312000003

DweetPro Library SL

6000437 / 5000304

8774

0001

2312000005

HVAC Building Automation Package SL

6000437 / 5000304

8777

0001

2312000008

Universal Modbus Client or Master SL

6000437 / 5000304

8784

0001

2312000014

IEC 60870-5-101/104 Server

6000437 / 5000304

8813

0001

2312000015

DNP3-Kombi

6000437 / 5000304

8818

0001

2312000016

DNP3-Master

6000437 / 5000304

8817

0001

2312000017

DNP3-Slave

6000437 / 5000304

8816

0001

2312000018

IEC 60870-5-101/104 Client

6000437 / 5000304

8814

0001

Application-based software licenses

Use the following logic when you want to activate a bundle license consisting of a runtime system license and feature licenses on your device:

License

Application-Based License

Firm Code

Product Code

Feature Map

2302000047-F

CODESYS Control Basic S

6000437

12290

0040

2302000048-F

CODESYS Control Basic M

6000437

12290

0080

2302000049-F

CODESYS Control Basic L

6000437

12290

0100

2302000050-F

CODESYS Control Standard S

6000437

12290

0200

2302000051-F

CODESYS Control Standard M

6000437

12290

0400

2302000052-F

CODESYS Control Standard L

6000437

12290

1000

2302000053-F

CODESYS Control Performance M

6000437

12290

2000

2302000054-F

CODESYS Control Performance L

6000437

12290

4000

Important

A bundle license always consists of several individual licenses. The CODESYS Control Basic license also includes the CODESYS Visualization S and CODESYS Communication S licenses.

You need to explicitly specify all individual licenses in the CFG file CML.cfg.

Use the following logic when you want to activate one of the licenses listed below for one feature:

License

Name

Firm Code

Product Code

Feature Map

2304000015-F

CODESYS Visualization S

6000437

12291

0128

2304000011-F

CODESYS Visualization M

6000437

12291

2048

2304000012-F

CODESYS Visualization L

6000437

12291

4096

2304000013-F

CODESYS Visualization XL

6000437

12291

8192

2304000014-F

CODESYS Visualization XXL

6000437

12291

81000000

2302000056-F

CODESYS Communication S

600437

12292

0512

2302000057-F

CODESYS Communication M

6000437

12292

4096

2302000055-F

CODESYS Communication XXL

6000437

12292

81000000

2305000009-F

CODESYS SoftMotion Axes (4)

6000437

12295

0004

2305000010-F

CODESYS SoftMotion Axes (8)

6000437

12295

0008

2305000011-F

CODESYS SoftMotion Axes (16)

6000437

12295

0010

2305000012-F

CODESYS SoftMotion Axes (32)

6000437

12295

0020

2305000013-F

CODESYS SoftMotion Axes (48)

6000437

12295

0030

2305000014-F

CODESYS SoftMotion Axes (64)

6000437

12295

0040

2305000015-F

SoftMotion Axis Groups/CNC Interpolators (1)

6000437

12296

0001

2305000016-F

SoftMotion Axis Groups/CNC Interpolators (2)

6000437

12296

0002

2305000017-F

SoftMotion Axis Groups/CNC Interpolators (3)

6000437

12296

0003

2305000018-F

SoftMotion Axis Groups/CNC Interpolators (4)

6000437

12296

0004

2305000019-F

SoftMotion Axis Groups/CNC Interpolators (5)

6000437

12296

0005

2305000020-F

SoftMotion Axis Groups/CNC Interpolators (6)

6000437

12296

0006