# Heidenhain DNC Connection Properties

## `agent` (string, required)

The name of the agent connecting to the CNC machine. Must match the name that is being used at the heidenhain-agent.exe executable.

Example: `"heidenhain-agent-1"`

## `ipAddress` (string)

IP Address or hostname of the CNC machine

Examples: `"localhost"`, `"192.168.1.2"`

## `cncType` (string, enum)

Type of the CNC control

This element must be one of the following enum values:

* `tnc640`
* `itnc530`
* `tnc426`

Default: `"tnc640"`

Examples: `"tnc640"`, `"itnc530"`, `"tnc426"`

## `domain` (string)

Name of the edge communication domain

Default: `"edge.cybus"`

Example: `"edge.cybus"`

## `plcPassword` (string)

Password to grant access to PLC functionality

Example: `"807667"`

## `tablePassword` (string)

Password to grant access to TABLE functionality

Example: `"807667"`

## `usrPassword` (string)

Password to grant access to USR functionality

Example: `"807667"`

## `sysPassword` (string)

Password to grant access to SYS functionality

Example: `"807667"`

## `connectionStrategy` (object)

If a connection attempt fails, retries will be performed with increasing delay (waiting time) in between. The following parameters control how these delays behave.

Properties of the `connectionStrategy` object:

#### `initialDelay` (integer)

Delay (waiting time) of the first connection retry (in milliseconds). For subsequent retries, the delay will be increased according to the parameter incrementFactor which has a default value of 2.

Default: `5000`

Additional restrictions:

* Minimum: `1000`

#### `maxDelay` (integer)

Maximum delay (waiting time) to wait until the next retry (in milliseconds). The delay (waiting time) for any subsequent connection retry will not be larger than this value. Must be strictly greater than initialDelay.

Default: `30000`

#### `incrementFactor` (integer)

The factor used to increment initialDelay up to maxDelay. For example if initialDelay is set to 1000 and maxDelay to 5000 the values for the delay would be 1000, 2000, 4000, 5000.

Default: `2`

Additional restrictions:

* Minimum: `2`
