Possible Config Entries in WinCC OA
Section | Description |
---|---|
[all drivers] | Settings valid for all drivers. Define the entries in the driver specific section (e.g. [apc], [opc], ...). |
[all sections] | Settings which can be used in all sections |
[all sections except general] | Settings for all sections except [general] |
[ascii] | Settings for the ASCII Manager |
[asx] | Settings for the ASX driver |
[asx_<k_komReceiver>] | Settings for the ASX Receiver. |
[attentionEffectEWO] | Settings for the AttentionEffectEWO. |
[auth] | The settings for the auth section start with this keyword. |
[bacnet] | Settings for the BACnet driver |
[bacnetdefault] | Settings for the BACnet Application. |
[calcstate] | Settings for the calculateState.ctl CTRL script. |
[commandChannel] | Settings for the Command Channel. |
[ctrl] | Settings for the Control Manager |
[data] | Settings for the Data Manager |
[different sections] | Settings for different sections |
[DisRec] | Settings for the Disaster Recovery System |
[dist] | Settings for the Distribution Manager |
[distsync] | Settings for Dist management. |
[dnp3] | Settings for the DNP3 driver |
[driver] | Config Entries for Drivers. |
[eip] | Settings for the EIP driver |
[event] | Settings for the Event Manager |
[general] | Global settings valid for all managers |
[httpServer] | Defines options for the httpServer running inside a CTRL manager |
[iec] | Settings for the IEC driver |
[iec61850] | Settings for the IEC 61850 client. |
[mod] | Settings for the Modbus driver |
[modsrv] | Settings for the Modbus/TCP server |
[mqtt] | Settings for the MQTT driver. |
[mqttpub] | Settings for the MQTT Publisher. |
[NextGenArch] | Settings for the NextGenArchive (NGA) |
[oaTest] | Settings for the WinCC OA Unit Dynamic Link Library. |
[oledb] | Settings for the OLE DB provider. |
[onlineBackup] | Settings for the online backup |
[opc] | Settings for the OPC client |
[opcae] | Settings for the OPC A&E Client |
[opcaesrv] | Settings for the WinCC OA OPC A&E server. |
[opcae_<servername>] | Server-specific settings for the OPC A&E client |
[opchda] | Settings for the OPC HDA client |
[opchdasrv] | Settings for the OPC HDA Server |
[OPCSERVER] | Settings for the OPC server |
[opcsrv] | General settings for the OPC DA server. |
[opcua] | Settings for the OPC UA client |
[opcuasrv] | Settings for the OPC UA server |
[opc_<symbolic_servername>] | Server-specific settings for the OPC client |
[PMAgent] | Settings for the PM-Add-On. |
[pmon] | Settings for the Process Monitor (Pmon) |
[pmonWatchdog] | The settings for the pmonWatchdog section start with this keyword. |
[profisafe] | Settings for the PROFIsafe driver. |
[proxy] | Settings for the WCCILproxy |
[redu] | Settings for the Redundancy Manager |
[reporting] | Settings for the Reporting Manager. |
[rk512] | Settings for the RK512 driver |
[s7] | Settings for the S7 driver |
[s7plus] | Settings for the S7Plus driver |
[sbus] | Settings for the S-Bus driver |
[secs] | Settings for the SECS driver. |
[sinaut] | Settings for the SINAUT driver |
[snmpa] | Settings for the SNMP Live Agent |
[snmpdrv] | Settings for the SNMP manager |
[split] | Settings for the split mode manager |
[ssi] | Settings for the SSI driver |
[stdlib] | Settings for the Standard Object Library (Stdlib). |
[TLSGateway] | Settings for the TLS gateway. The TLS standard is only used in the German-speaking part of Europe. Therefore the full documentation is only available in German. Please contact an ETM key account manager for further information. |
[ui] | Settings for the User Interface |
[ulcUX] | Settings for the ULC UX client. |
[valarch] | Settings for the Value Archive |
[ValueArchiveRDB] | Settings for the RDB Archiving |
[webClient] | Settings for the WinCC OA mobile UI application and the Desktop UI. |
[wssServer] | Settings for specialized WebSocket servers (as used for e.g. Dashboard or Node-RED). |
[all drivers]
Settings valid for all drivers. Define the entries in the driver specific section (e.g. [apc], [opc], ...).
[all drivers] commitCount
- Type
- unsigned integer
- Default
- 100
[all drivers] connectForAlerts
- Type
- bool
- Default
- n
- Range
- y|n
[all drivers] drvDpName
- Type
- string
- Default
- _Driver<num>
[all drivers] histDataBits
- Type
- string
Example:
histDataBits = "Userbit 1, Userbit 3"
causes the driver to interpret all values of the periphery, which have set the userbits
1 and 3 as historical data. Only the last entry is valid. it is not possible to define
alternatives. The userbits can be switched off, with a leading "-". e.g.:
histDataBits = "+Userbit 1,+Userbit 2,-Userbit 3,+Userbit 4,+Userbit 5,-Userbit 6,-Userbit
7,-Userbit 8,+Userbit 9,+Userbit 10,-Userbit 11,+Userbit 12,+Userbit 13,-Userbit
14,-Userbit 15,-Userbit 16,+Userbit 17,+Userbit 18,-Userbit 19,+Userbit 20,+Userbit
21,-Userbit 22,-Userbit 23,-Userbit 24,+Userbit 25,+Userbit 26,-Userbit 27,+Userbit
28,+Userbit 29,-Userbit 30,-Userbit 31,-Userbit 32"
CAUTION: Do not use BLANKS after the comma for the "-" entries. For "+" it is not relevant.
[all drivers] IOTransitionTimeout
- Type
- int
- Default
- 10
NOTE:
The value for the config entry IOTransitionTimeout should be two times bigger than
the biggest parameterized poll interval, to prevent the polling process from running
into an timeout all the time.
If you set the config entry IOTransitionTimeout to 0 in the driver specific section
of the config file, the original value will not be reset and the transition bit will not be used.
[all drivers] loopTime
- Type
- unsigned long
- Default
- 10
- Range
- >0
[all drivers] maxConnectMachineSend
- Type
- int
- Default
- 100
[all drivers] maxOutputQueueSize
- Type
- unsigned integer
- Default
- 1000*
[all drivers] maxVcMessageSize
- Type
- unsigned integer
- Default
- 200
- Range
- >= 0
[all drivers] passiveDriverWrites
- Type
- bool
- Default
- 0
- Range
- 0|1
[all drivers] pollCount
- Type
- unsigned integer
- Default
- 32
- Range
- >0
[all drivers] pollEpsilon
- Type
- float
- Default
- 200.0
- Range
- > 0.0
[all drivers] pollMode
- Type
- bool
- Default
- 1 (Simulator: 0)
- Range
- 0|1
[all drivers] pollTime
- Type
- float
- Default
- 1.0
- Range
- >0.0
[all drivers] reconnectToEvent
- Type
- string
- Default
- no
- Range
- yes|no
[all drivers] smoothBit
- Type
- string
- Range
- Userbit 1..Userbit 32
smoothBit = "Userbit 1"
smoothBit = "Userbit 2"
...
smoothBit = "Userbit 32"
[all drivers] srcTimeCheckMode
- Type
- int
- Default
- 0
- Range
- 0,1,2
srcTimeCheckMode
srcTimeMaxBefore
srcTimeMaxBehind
srcTimeCheckMode is the mode for checking the source time:
- 0 = no check
- 1 = only error message
- 2 = error message and the data is discarded
[all drivers] srcTimeMaxBefore
- Type
- float
- Default
- 120 [s]
[all drivers] srcTimeMaxBehind
- Type
- float
- Default
- 3600 [s]
[all drivers] useCRC
- Type
- bool
- Default
- 0
- Range
- 0|1
useCRC is a safety feature of the WinCC OA messaging system. It offers extended failure detection capabilities compared to the Standard messaging system. To ensure data integrity in WinCC OA Messages, these messages are divided into CRC telegrams of appropriate length each containing a 32 bit CRC. On reception of the messages the values are checked and if the values do not match, an error is detected.
The error is shown in the log viewer and the connection between the WinCC OA managers is closed.
- The entry "useCRC" can be used in the [event] or in a driver specific section of the config file. It can be used in one of these sections or in both sections.
- The entry is always manager specific. The "stronger" manager wins and decides the type of connection:
EXAMPLE
The connection between the driver and the event will use the extended data integrity check. As will all other managers that connect to the event manager.
[event]
useCRC = 1
[mod]
useCRC = 0
EXAMPLE
The connection between the driver and the event will use the extended data integrity check. All other managers that connect to the event manager will not use it (unless specified in their section).
[event]
useCRC = 0
[mod]
useCRC = 1
- The information whether a specific connection uses extended data integrity check or not is written to the connection data point of the manager. In addition a log entry will be written upon startup of the manager reporting its way of communication.
- In a redundant system the entry can be used in one or both system(s) of the redundant system.
- In a DRS system the entry can be used in one or both of the DRS system(s).
If distributed systems are used and one of the systems is a safety system and the other system is not, use the entry only for the safety system.
The distributed partner of the safety system will use CRC checks when communicating with the safety system's event.
CRC checks will not be used when communicating with the non-safety system's event manager.NOTE
Default behavior is communication without extended CRC checks.
- In case an invalid value is entered to the config file for the keyword "useCRC", a warning will be output in the log file and the manager will use default behaviour in its communication.
- Log messages are output when CRC is used or when CRC was configured but is not used due to a localhost connection.
- A message is also output when CRC is configured and should be used but is not being used (WARNING).
For a safety project see also the "Basic and operating Conditions" document in the ETM portal.
[all drivers] waitSecondsForIdps
- Type
- unsigned int
- Default
- 60s
- Range
- > 0
[all sections]
Settings which can be used in all sections
[all sections] aliveTimeout
- Type
- integer
- Default
- -10
- Range
- MIN_INT..MAX_INT
[all sections] allowLocalMessageCompression
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections] chainPrefix
- Type
- string
The certificate "chain" is a concatenation of the subjects of the daisy chained certificates. If you, for example, use the following certificates, e.g.:
root-CA
^
sub-CA1 signed by |
^
sub-CA2 signed by |
^
HOST_CERT signed by |
In this example the certificate chain would be "rootCA;sub-CA1;sub-CA2;HOST_CERT".
If the config file entry chainPrefix is set, the start of the certificate chain of the peer has to match the given string.
[all sections] cipherSuiteList
- Type
- string
- Default
- TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256
A cipher suite is a set of cyptographic methods.
A comma separated list of all cipher suites to be offered for communication.
The server chooses the first cipher suite of its list which is also offered by the client.
By default TLSv1.3 is enabled using a list of default ciphers (see the default above). By default the following cipher suites are enabled:
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
- TLS_AES_128_GCM_SHA256
- ECDHE-RSA-AES256-GCM-SHA384
- ECDHE-RSA-AES128-GCM-SHA256
When listing the cipher suites, the values are separated by comma. Therefore, the default value of the config entry is:
cipherSuiteList = "TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256"
The syntax is:
cipherSuiteList = "<cipherSuite0>, <cipherSuite1>,...,<cipherSuiteN>"
To disable either TLSv1.2 or TLSv1.3, change this cipherSuiteList config entry to only contain the specific ciphers, e.g. if no TLSv1.3 cipher is in the list, v1.3 will be disabled, and vice versa.
Use the debug flag "-dbg BCM" to display which ciphers will be used.
The allowed v1.3 ciphers are described on the openSSL web page.
Example
cipherSuiteList = "TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_GCM_SHA256,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256"
The supported cipher suites can be found in the Security Guidelines on winccoa.com.
[all sections] connectDelay
- Type
- int
- Default
- 20
- Range
- >0
[all sections] connectRetries
- Type
- int
- Default
- 30
- Range
- >0
[all sections] coverageReportFile
- Type
- string
[all sections] ctrlBreakFunctionCall
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections] data
- Type
- string
- Default
- local host name, port 4897
data = "host1[:port1]"
Or (in case of redundancy):
data = "host1[:port1]$host2[:port2]"
For further information on the redundancy feature see chapter Redundancy, basics.
Or (in case of redundant network connections):
data = "host1-1[:port1],host1-2[:port1]"
For further information on redundant network connections in WinCC OA see chapter
Redundant network connections.
Or generally:
data = "host1-1[:port1],host1-2[:port1]$host2-1[:port2],host2-2[:port2]"
Instead of specifying the host name you can also use IP addresses, e.g. data = "192.168.154.26".
The use of IP addresses can possibly bring undesirable effects (resolution of IP
- host name when using in scripts). If there are problems with the functionality
when using IP addresses, you have to use the host names!
Note:
This entry replaces the config entries "dataHost" resp. "dataPort" (known from former
versions) which remain for compatibility reasons.
[all sections] dataHost
- Type
- string
- Default
- local host name
Redundancy:
The primary and secundary host are separated through '$'. This format of dataHost/eventHost
switches on the redundancy.
Caution:
This entry should not be used anymore. For defining the host names use the "data"
entry.
[all sections] dataPort
- Type
- integer
- Default
- 4897
- Range
- 1024 .. 65535 (see RFC 1340 | /etc/services)
Caution:
This entry should not be used anymore. For defining the port numbers use the "data" entry.
[all sections] dbg
- Type
- string
[all sections] dbgOffset
- Type
- integer
- Default
- 1
- Range
- >0
[all sections] DHParamFile
- Type
- string
- Default
- 2048-bit MODP group 14
[all sections] discreteImpulseAlertWithoutWent
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections] distributed
- Type
- bool
- Default
- 0
- Range
- 0|1
[ctrl_1]
distributed = 0
In this case the Control Manager with the number 1 cannot access DPs of other systems
(DP identification is not transmitted to this manager).
[all sections] ECDHCurve
- Type
- string
- Default
- prime256v1
[all sections] event
- Type
- string
- Default
- lokaler Hostname, Port 4998
Caution:
This entry replaces the config entries "eventHost" resp. "eventPort" (known from
former versions) which remain for compatibility reasons.
[all sections] eventHost
- Type
- string
- Default
- lokaler Hostname
Redundancy:
Primary and secondary host are separated through '$'. This format of dataHost/eventHost
switches on the redundancy.
Caution:
This entry should not be used anymore. For defining the host names use the entry
"event".
[all sections] eventPort
- Type
- int
- Default
- 4998
- Range
- 1024 .. 65535 (siehe RFC 1340 | /etc/services)
Caution:
This entry should not be used anymore. For defining the port numbers use the entry "event".
[all sections] exitDelay
- Type
- uint
- Default
- 0
- Range
- >=0
[all sections] ignoreManager
- Type
- string int
[all sections] ip_allow, ip_deny
- Type
- string
[all sections] kerberosSecurity
- Type
- string
- Default
- none
- Range
- none,auth,int,enc
- "none" is the default and specifies that Kerberos is not used.
- "authenticate" specifies that clients and servers must authenticate themselves. Messages are neither signed nor encrypted.
- "integrity" specifies that clients and servers must authenticate themselves and sign all messages thereafter. If one of the partners fails to verify the signature of a message from the other partner, the connection is aborted.
- "encryption" specifies that clients and servers must authenticate themselves and encrypt all messages thereafter.
[all sections] localAddress
- Type
- string
[all sections] logFile
- Type
- bool
- Default
- 1
- Range
- 0|1
[all sections] logStdErr
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections] maxDpNamesCount
- Type
- unsigned integer
- Default
- 1.000.000
- Range
- >=0
NOTE: If the result list of a function is bigger than the value of the config entry "maxDpNamesCount", the query is stopped. This applies, e.g. to the following functions:
- dpGetAllAliases()
- dpTypes()
- dpAliases()
- dpNames()
- All Query functions that use a pattern such as FROM '*.**' to filter by in the FROM part of a query.
[all sections] maxLogFileSize
- Type
- unsigned integer
- Default
- 10
- Range
- 1-65535
- Unit
- MegaByte
Specifies the maximum size of the file <proj_path>/log/PVSS_II.log in MB (0 = unlimited). All managers evaluate this entry (for their own log files). You can also use the entry in the [general] section. In this case this entry applies to all managers.
Note: If the entry is used both in the general and a manager-specific section, the last entry in the file is used when looking down from the beginning of the file.
If the file exceeds this size, it is renamed to PVSS_II.log.bak and a new file is created. An existing PVSS_II.log.bak file will be overwritten. Under Windows the script postLogFileHandler.cmd resp and under Linux the script postLogFileHandler.sh are called.
The size of the log file is checked every 30 seconds (the size of the file might be, however, higher depending on the system load and the speed the data is written to the log file).
[all sections] messageCompression
- Type
- string
- Default
- none
- Range
- none, zlib, bzip2, zlib-bzip2
- "none" - no compression
- "zlib" - compression using zlib (gzip, zip); see http://www.zlib.org
- "bzip2" - compression by using the bzip2 algorithm (bzip2 is a freely available, high-quality data compressor; see http://www.bzip.org). "bzip2" compresses better than "zlib" at the cost of higher CPU utilization.
- "zlib-bzip2" - compresses short messages using zlib and bigger messages like Identification using bzip2.
[all sections] messageCompressionThreshold
- Type
- int
- Default
- 0
- Range
- 0 - MAX_INT
[all sections] mxProxy
- Type
- string
- Default
- derived from various settings
- Range
- n.a.
Syntax:
mxProxy = "<serverHost> <proxyHost[:proxyPort]> <securityMode>" | "none"
e.g.
mxProxy = "system36 etmFW:5678 cert"
mxProxy = "system314 system314 cert"
mxProxy = "system310 system310 none"
mxProxy = "none"
This entry can occur multiple times, once for each connection.
- serverHost - Name of the host running the server (e.g. WCCILdata) to be communicated with.
- proxyHost - Name of the host running the WCCILproxy.
- proxyPort - Port that is used by the WCCILproxy (default port: 5678).
- securityMode - Please see the description for securityMode.
If no proxy configuration is available, the client will directly connect to the host specified by the data config file entry, assuming that data and event managers as well as the proxy manager run on this host.
If you use an IPv6 address for the "server" and "mxProxy" entries, the [ ] (square brackets) must be used.
[general]
mxProxy = "[::1] [::1]:5678 cert"
[proxy]
server = "[fe80::2c5c:5415:98f1:82f3]:1234"
If the entry mxProxy="none" is used the WCCILproxy will be disabled.
[all sections] noReverseLookup
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections] optimisedRefresh
- Type
- Bool
- Default
- 1
- Range
- 0|1
[all sections] osErrorMode
- Type
- int
- Default
- 1
- Range
- 0,1,4,2,32768
- Option 0 - Use the system default, which is to display all error dialog boxes. Option 1 (SEM_FAILCRITICALERRORS) - The system does not display the critical-error-handler message box. Instead, the system sends the error to the calling process. Option 4 (SEM_NOALIGNMENTFAULTEXCEPT) - The system automatically fixes memory alignment faults and makes them invisible to the application. Option 2 (SEM_NOGPFAULTERRORBOX) - The system does not display the Windows Error Reporting dialog. Option 32768 (SEM_NOOPENFILEERRORBOX) - The system does not display a message box when it fails to find a file. Instead, the error is returned to the calling process.
[all sections] outstandingMsgTimeout
- Type
- int
- Default
- -1
[all sections] refreshDelay
- Type
- int
- Default
- 0
- Range
- >=0
[all sections] reportFile
- Type
- string
[all sections] securityMode
- Type
- string
- Default
- cert
- Range
- plain | cert | winCert | none
- cert - SSL/TLS with PEM format certificate files are used for Multiplexing Proxy and the SSL communication between the managers and for the HTTP server between the client and server
- winCert - SSL/TLS with certificates stored in Windows Certificate Store are used for Multiplexing Proxy and the SSL communication between the managers and for the HTTP server between the client and server.
- none - The communication does not take place via WCCILproxy but directly with the server. This is introduced to support distributed system with different WinCC OA versions where the old versions do not have SSL capabilities.
[all sections] singleSourceConnect
- Type
- integer
- Default
- 0
- Range
- 0|1
[all sections] ssaCertCheck
- Type
- String
- Range
- chainPrefix=%chainPrefix%
With this entry you can set the ChainPrefix. This is required when Windows Cert Store certificates are used.
ssaChertCheck = "chainPrefix=rootCA;sub-CA1;sub-CA2;HOST_CERT"
If the config file entry ssaChertCheck is set, the start of the certificate chain has to match the given string.
[all sections] ssaCertificate
- Type
- string
"[type]:[value]"
- type: can be "file" or "store" describing where the certificate is stored.
-
value: dependent on the "type", "value" is either the relative path of the certificate (type == "file") or is split into "loc:store:subject"
- loc: Location of the store.
"USER" is the current Windows Certificate Store user: CERT_SYSTEM_STORE_CURRENT_USER,
"MACHINE" is the Windows Certificate Store account of the local machine: CERT_SYSTEM_STORE_LOCAL_MACHINE
- store: is name of certificate store to be used
- subject: search criteria to find the certificate by subject/SHA1 property
[all sections] ssaChainFile
- Type
- string
ssaChainFile = "[value]"
Value is the path of the certificate chain-file (can be either relative or absolute).
[all sections] ssaCRL
- Type
- string
Value is the path of the CRL(Certificate revocation list) file. The path can be either relative or absolute.
[all sections] ssaPrivateKey
- Type
- String
"[type]:[value]"
- type: can be "file" or "store" describing where the private key is stored.
-
value: dependent on the "type", "value" is either the relative path of the key (type == "file") or is split into "loc:store:subject"
- loc: Location of the store.
"USER" is the current Windows Certificate Store user: CERT_SYSTEM_STORE_CURRENT_USER,
"MACHINE" is the Windows Certificate Store account of the local machine: CERT_SYSTEM_STORE_LOCAL_MACHINE
- store: is name of certificate store to be used
- subject: search criteria to find the key by subject/SHA1 property
[all sections] sslCertificate
- Type
- string
- Default
- [path]/host-cert.pem [path]/host-key.pem [path]/root-cert.pem
syntax:
sslCertificate = "<[path]/cert-file> <[path]/private-key> <[path]/CAFile>"
e.g.
D:/certificates/host-cert.pem
This entry is used when the security mode cert is configured.
The sslCertificate entry specifies the absolute path of the 3 files
needed for SSL/TLS encrypted communication.
All files have to be PEM encoded.
- <cert-file> X509 certificate of the host
- <private-key>Private Key of the host
- <CAFile> X509 certificate of the trusted CA (Certificate Authority) which signed the certificates of all hosts
[all sections] sslCRLfile
- Type
- string
[all sections] sslVerifyTime
- Type
- Bool
- Default
- 1
- Range
- 0 | 1
[all sections] valueChangeTimeDiff
- Type
- unsigned integer
- Default
- 30 (sec)
- Range
- >=0
Redundancy:
When a manager starts, it determines the time difference between its own computer
and the computer of the server. If the system times differ for more than "valueChangeTimeDiff/2"
seconds, the manager shows an error message.
If the system times differ for more than "valueChangeTimeDiff" seconds, the manager
closes the connection and shows an error message. If the valueChangeTimeDiff entry
is set in the [event] section in older projects, the system shows an error message.
The permitted time difference is 30 seconds.
Caution:
If a difference between the system times arises during the operation, the
system does not check the difference.
[all sections] winCert
- Type
- string
syntax:
winCert = "<location>:<store>:<cert-id>"
e.g.
winCert = "USER:MY:IOWASystem34"
winCert = "MACHINE:MY:3E 27 B3 87 52 25 70 E6 64 6B C8 FC 06 78 AD 62 CC 89 46 A2"
If security mode wincert is configured the config entry winCert determines which certificate from the Windows Certificate Store is used for SSL/TLS communication.
- <location> Possible values are USER | MACHINE. If the value USER is specified the certificate is searched in CERT_SYSTEM_STORE_CURRENT_USER. If the value MACHINE is specified the certificate is searched in CERT_SYSTEM_STORE_LOCAL_MACHINE.
- <store>The name of the store within location to be used.
- <cert-id> Search criteria to find the certificate. If not specified differently by winCertSearchBy the given string is considered certificates subject name. If subject is not unique within the given location the first certificate valid regarding time is used. If sslVerifyTime = 0 is configured, each certificate is considered valid.
[all sections] winCertSearchBy
- Type
- string
- Default
- SubjectName
- Range
- SubjectName | SHA1
e.g. SHA1 fingerprint given as string of hex digits
"3E 27 B3 87 52 25 70 E6 64 6B C8 FC 06 78 AD 62 CC 89 46 A2"
[all sections] winRootCA
- Type
- string
syntax:
winRootCA = "<location>:<store>:<cert-id>"
e.g.
winRootCA = "MACHINE:ROOT:IOWARootCA"
winRootCA = "MACHINE:ROOT:58 BA 02 2F 3A 6F 0F 42 27 3E 87 F8 43 3B EB 53 FE B9 E0 AD"
If security mode winCert is configured the config entry winRootCA determines which certificate from the
Windows Certificate Store to be used for certificate verification during SSL/TLS session negotiation.
Please see the description of the SecurityMode entry.
- <location> Possible values are USER | MACHINE. If USER is specified the certificate is searched in CERT_SYSTEM_STORE_CURRENT_USER. If MACHINE is specified the certificate is searched in CERT_SYSTEM_STORE_LOCAL_MACHINE.
- <store>The name of the store within location to be used.
- <cert-id> Search criteria to find the certificate. If not specified differently by winCertSearchBy the given string is considered the certificates subject name. Please see the description of the config entry "winCertSearchBy". If subject is not unique within the given location the first certificate valid regarding time is used. If sslVerifyTime = 0 is configured, each certificate is considered valid.
[all sections except general]
Settings for all sections except [general]
[all sections except general] alivePort
- Type
- unsigned integer
- Default
- 0
- Range
- 0..64k
[all sections except general] alivePriorityClass
- Type
- bool
- Default
- 1
- Range
- 0|1
[all sections except general] as_activeAlarmBackCol, as_activeAlarmForeCol, as_activeCurrAlarmBackCol, as_activeCurrAlarmForeCol, as_alarmBackCol, as_alarmForeColI
- Type
- string
- Range
- WinCC OA-Color
as_activeAlarmBackCol = "<{255,0,255},4,{255,255,255},4>"
as_activeAlarmForeCol = "<{255,255,255},4,{255,0,255},4>"
In the open and closed mode of the alert and event panel, the foreground and background
color (blink color) of a non-active alarm can be specified. A non-active alarm means
when an alarm (alert direction/value) changes to WENT/False.
Examples:
as_alarmBackCol = "_3DFace"
as_alarmForeCol = "blue"
[all sections except general] as_descriptionMode
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections except general] as_ShowMilliseconds
- Type
- integer
- Default
- 0
- Range
- 0|1|2
- 0: Milliseconds delimited by '.'
- 1: Milliseconds in ()
- 2: like 0
[all sections except general] as_SpecialWentText
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections except general] connectDp
- Type
- string
[all sections except general] connectToRedundantHosts
- Type
- unsigned
- Default
- 0
- Range
- 0,1
[all sections except general] distSystemIds
- Type
- string
Example:
[ctrl_3]
distSystemIds = "1-28, 46, 280-290, 320"
Either ranges or single numbers can be entered. Blanks are ignored.
If this config entry is not defined, all DP identifications are accepted.
If the value of the distributed config entry (see Configuration file for distributed
systems in the Online Help) for a manager is 0, the DP identification is not transmitted
to this manager.
With the debug level -dbg 31you can check, which identifications are accepted or ignored.
[all sections except general] requestDejaVu
- Type
- bool
- Default
- 0
- Range
- 0|1
[all sections except general] requestedCNSViews
- Type
- string
- Range
- CNS view names
Syntax: comma separated list of paths to the corresponding CNS views.
Example:requestedCNSViews = "System1.View1, .View2, System2.View3:"
Views defined in the local system can be referenced either via e.g. System1.View1, or via .View2.
In case a view name that does not exist in the CNS, is specified in the filter, all views will be filtered out. If the entry is configured for the DATA and DIST managers, the entry will be ignored.
[ascii]
Settings for the ASCII Manager
[ascii] alwaysSendCommon
- Type
- bool
- Default
- false
- Range
- 0|1
[ascii] commit
- Type
- uint
- Default
- 10
Specifies after how many sent messages the ASCII manager waits for an response from the Event manager. The default value is 10. The ASCII manager waits for the answer of the Event manager after 10 messages. The data is imported with the highest speed and the Event manager is loaded the most.
1 means that the ASCII Manager waits for a response after each message and the load on the Event manager is the lowest.
Values >1 offer a good compromise between import speed and load on the Event manager.
[ascii] forceScan
- Type
- bool
- Default
- 0
- Range
- 0|1
[ascii] multiUserMode
- Type
- bool
- Default
- 0
- Range
- 0|1
[ascii] noAlertConfigHist
- Type
- bool
- Default
- 0
- Range
- 0|1
[asx]
Settings for the ASX driver
[asx] autoGA
- Type
- string
- Default
- yes
- Range
- yes|no
[asx] k_komReceiver
- Type
- string
- Default
- keiner
[asx] k_komSender
- Type
- string
- Default
- keiner
[asx] net
- Type
- Ganzzahl
- Default
- 0
- Range
- >=0
[asx] pvssAddress
- Type
- string
- Default
- keiner
[asx] reduPostfix
- Type
- string
[asx] statCheckInterval
- Type
- Ganzzahl
- Default
- 10
- Range
- 1-200
[asx] UserBitAD
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitDS
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitNK
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitST
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitSY
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitTC
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitTO
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx] UserBitTS
- Type
- Ganzzahl
- Default
- 0
- Range
- 0-8
[asx_<k_komReceiver>]
Settings for the ASX Receiver.
[asx_<k_komReceiver>] k_komReserve1
- Type
- string
[asx_<k_komReceiver>] k_komReserve2
- Type
- string
[asx_<k_komReceiver>] k_komReserve3
- Type
- string
[attentionEffectEWO]
Settings for the AttentionEffectEWO.
[attentionEffectEWO] updateIntervalFlashLight
- Type
- int
- Default
- 40
- Range
- 40-1000
[attentionEffectEWO] updateIntervalRotatingRect
- Type
- int
- Default
- 40
- Range
- 40-1000
[attentionEffectEWO] updateIntervalSphere
- Type
- int
- Default
- 40
- Range
- 40-1000
[attentionEffectEWO] updateIntervalWaterDrop
- Type
- int
- Default
- 40
- Range
- 40-1000
[auth]
The settings for the auth section start with this keyword.
[auth] lowestUserId
- Type
- unsigned int
- Default
- 0
- Range
- 0-unsigned
Use the entry when Dist management is used with Active Directory to prevent a different user ID for the same user on different systems. Use this config entry for the master system in combination with the config entry "firstLoginEnabled" on the slave systems in a distributed system with AD scenario. See also chapter: Dist Management in Combination with Active Directory - Re-sorting/Synchronization of Users without Lost of History.
CAUTION! When you set the config entry, you must restart the CommandChannel script. commandChannel.ctl is listed in WinCCOA_path/scripts/pvss_scripts.lst. In order to restart the commandChannel.ctl script, you must restart the pvss_scripts.lst See also chapter Command Channel.[auth] passwordPolicy
- Type
- bool
- Default
- 1
- Range
- 0|1
[auth]
passwordPolicy = 0
The policy is not valid for users of the OS Auth. User Administration (Windows/Linux).[bacnet]
Settings for the BACnet driver
[bacnet] alarmExternAckFirst
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] APDURetries
- Type
- int
- Default
- 1
- Range
- 0..5
[bacnet] APDUSegmentTimeout
- Type
- int
- Default
- 2000
- Range
- 100..5000
[bacnet] APDUTimeout
- Type
- int
- Default
- 4000
- Range
- 500..10000
[bacnet] autoGQ
- Type
- uint
- Default
- 0
- Range
- 0-3
- 0 -> no automatic GQ
- 1 -> automatic GQ during connection establishment
- 2 -> automatic GQ during redundancy switchover
- 3 -> automatic GQ during connection establishment and redundancy switchover
[bacnet] bacnetBdtLocation
- Type
- string
- Default
- data
[bacnet] bbmdUdpPort
- Type
- uint
- Default
- 47808
- Range
- >0
[bacnet] certPath
- Type
- string
- Default
- cert
[bacnet] connUserBitPrio
- Type
- integer
- Default
- 15
- Range
- 0-16
Specifies the user bit, which is used by the driver to set the value or reset it to "NULL".
0 -> no user bit is used and the value is written normally.
[bacnet] COVLifeTime
- Type
- uinteger
- Default
- 7200
- Range
- >=0
[bacnet] deviceStatusPollProperty
- Type
- integer
- Default
- 112
- Range
- >0
[bacnet] deviceStatusPollTimeout
- Type
- integer
- Default
- 30
- Range
- >0
[bacnet] eventGQMode
- Type
- integer
- Default
- 0
- Range
- 0|1
[bacnet] foreignRegistrationAddress
- Type
- string
[bacnet] localDeviceId
- Type
- unsigned integer
- Default
- 10
- Range
- >0
[bacnet] localDeviceName
- Type
- string
- Default
- WinCCOA_OWS_<localDeviceId>
[bacnet] mapEventValuesToComment
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] mapOutOfServiceToInvalid
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] maxNumForReadMultiple
- Type
- integer
- Default
- 8
- Range
- >0
[bacnet] maxReadRangeCount
- Type
- integer
- Default
- 32767
- Range
- >0
[bacnet] net
- Type
net = <Network> "IP" <IPAddress> <Subnetmask> <UDPPort> <BBMDAddress> <BBMDMaxForeignDevices> <ForeignDeviceHoldingTime>
or for BACnet Secure Connect:
net = <Network> "SC" <IP-Address> <PrimaryHub> <SecondaryHub>
- Network - The unique assigned network number. Currently the BACnet driver is able to communicate with only one network.
- IP/SC - Protocol type. The current version supports IP (BACnet/IP) and SC (BACnet Secure Connect).
- IPAddress - IP address of the network card, over which the BACnet/IP net is accessible. If the entry is empty, the IP address is specified by the own host name. The latter works only then when there is only one network card attached/used in the computer.
- Subnetmask - The subnetmask defines the broadcast addresses, with which the broadcasts are sent into the BACnet net. If the subnetmask entry is empty ("") so the subnetmask of the configures network connection is used.
- UDPPort - UDP port is used for the BACnet/IP communication. In the most cases the port has to be set to 47808 (0xBAC0).
- BBMDAddress - IP address of "BACnet/IP Broadcast Management Devices". This value has to be set in the current version to 0, because foreign devices are not supported.
- BBMDMaxForeignDevices - Maximum number of foreign devices (default = 0). This entry is not relevant for the current version.
- ForeignDeviceHoldingTime - Holding time for foreign devices (default = 120 seconds).
- PrimaryHub - URL of primary BACnet Secure Hub (mandatory).
- SecondaryHub - URL of secondary BACnet Secure Hub. This must be set to an empty string if there is none.
[bacnet_1]
net = 1 "IP" "" "" 47808 "" 0 120
[bacnet_2]
net = 1 "SC" "" "wss://192.168.10.11:4443" "wss://192.168.10.12:4443"
[bacnet] onlyActivePolls
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] processIdentifier
- Type
- uint
- Default
- 1
- Range
- >0
[bacnet] reportHomelessAlarms
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] requestQueueMaxSize
- Type
- integer
- Default
- 1000
- Range
- >0
[bacnet] requestsPerCycle
- Type
- integer
- Default
- 1
- Range
- >0
[bacnet] secureCACertificate
- Type
- string
[bacnet] secureCertificate
- Type
- string
[bacnet] secureCertificateKey
- Type
- string
[bacnet] sendUnicastIam
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnet] statCheckInterval
- Type
- unsigned
- Default
- 20
- Range
- >2
[bacnet] staticRouterBinding
- Type
- string
[bacnet] useJsonFormat
- Type
- bool
- Default
- 1
- Range
- 0|1
[bacnet] userBitStatusFlagx
- Type
- integer
- Default
- 0
- Range
- 0-31
- 0 -> in alarm
- 1 -> fault
- 2 -> overwritten
- 3 -> out of service
- 4 -> not specified
- 5 -> not specified
- ...
- 31 -> not specified
[bacnet] userBitTrendLog
- Type
- uint
- Default
- 0
- Range
- 0-32
[bacnet] userByteAlarmPrio
- Type
- uint
- Default
- 0
- Range
- 0-4
[bacnet] userByteLogStatus
- Type
- uint
- Default
- 0
- Range
- 0-4
[bacnet] useWriteMultiple
- Type
- bool
- Default
- 0
- Range
- 0|1
[bacnetdefault]
Settings for the BACnet Application.
[bacnetdefault] defaultAddressDirection
- Type
- int
- Default
- 11
- Range
- 1..13
[bacnetdefault] TimeOutObjectBrowsing
- Type
- int
- Default
- 180
[calcstate]
Settings for the calculateState.ctl CTRL script.
[calcstate] useOfflineErrorstateInfo
- Type
- bool
- Default
- 0
- Range
- 0|1
If redundant nodes lose the connection in a redundant project and re-establish the connection, the node with the lower error state becomes active. The error state is specified by using the error weighting - see description of error weighting. The error weighting is a value between 0 and 999.
The data point element ReduHost(_2).offlineErrorStatus is used to specify the error state if the config entry useOfflineErrorstateInfo is set to 1:
[calcstate]
useOfflineErrorstateInfo = 1
The data point element ReduHost(_2).offlineErrorStatus contains the difference between the current error state value and the maximum error state value while the redundant servers had no connection.
[commandChannel]
Settings for the Command Channel.
[commandChannel] rsaKeyRotationInterval
- Type
- uint
- Default
- 1 day/24 hrs
- Range
- 1..max uint
The keypair(public and private keys) is changed at an interval. This is called key rotation.
Interval for the "key rotation" can be configured in the config file:
[commandChannel] rsaKeyRotationInterval = uint minutes 1 to max uintNOTE: The default interval is 1 day/24 hrs. The recommended minimum interval is 10 minutes. If you enter a shorter interval, a warning is shown in the log viewer.
[ctrl]
Settings for the Control Manager
[ctrl] ctrlDLL
- Type
- string
Note: It is recommended to load a CtrlExtention DLL directly from the Ctrl script using the #uses statement.
[ctrl] minWorkInterval
- Type
- int
- Default
- 1
- Range
- >= 0
[ctrl] queryRDBdirect
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 = Standard CTRL read functions (dpGet...()) via the WinCC OA Event Manager and the WinCC OA Data Manager.
- 1 = The standard CTRL read functions (dpGet...()) are redirected to directly contact the database server.
Note that the two required CTRL extensions must also be loaded in order to be able to use the RDB read functions.
Can be used in [ui] and [ctrl] sections.
CtrlDLL = "CtrlRDBArchive"
CtrlDLL = "CtrlRDBCompr"
CAUTION: If you use queryRDBdirect = 1 and query DPEs using the event screen, enter the DPEs or *.* for the query. Otherwise the event screen does not show the DPEs.
[data]
Settings for the Data Manager
[data] alertDpList
- Type
- bool
- Default
- 1
- Range
- 0|1
[data] archiveReqTimeout
- Type
- unsigned short
- Default
- 0
- Range
- >= 0
[data] bgOpenRetryCount
- Type
- int
- Default
- 5
- Range
- 0 - 25
[data] checkDiskSpace
- Type
- bool
- Default
- 1
- Range
- 0|1
[data] checkMemory
- Type
- bool
- Default
- 1
- Range
- 0|1
[data] checkNetworkBackupPath
- Type
- bool
- Default
- 1
- Range
- 0|1
Enabling (=1) this entry allows the data manager, using an icmp ping, to check if the configured backup path is available. This avoids a blocking data manager if the network resource is not available. The config entry is only required for Windows operating systems.
This config entry is recommended if the backup path for the data manager is located on a windows network drive or shared folder and it is likely or common that the network connection to the backup path is unstable.
[data] dataBgName
- Type
- string
- Default
- WCCILdatabg
When using only Oracle archiving the DataBG manager is not required and can be deactivated using the value "". In this case the recovery of the database can be directly started after starting your project as the data manger is already running in multi-user mode.
For projects with default archiving you must wait for the start of the DataBG manager before a recovery can be performed.[data] dbTmpDir
- Type
- string
- Default
- OS specific tmp directory
[data] DP_AlertDataSet
- Type
- string
- Default
- _AlertDataSet
[data] DP_AlertSaveRestore
- Type
- string
- Default
- _AlertSaveRestore
[data] DP_DataBgManager
- Type
- string
- Default
- _DataBgManager
- Range
- -
[data] DP_DataManager
- Type
- string
- Default
- _DataManager
[data] DP_DataSaveRestore
- Type
- string
- Default
- _DataSaveRestore
[data] DP_DataSet
- Type
- string
- Default
- _DataSet
[data] DP_DiskCheck
- Type
- string
- Default
- All DP from type _DiskSpaceCheck
- Range
- -
[data] DP_MemoryCheck
- Type
- string
- Default
- _MemoryCheck
- Range
- -
[data] DP_RaimaErr
- Type
- string
- Default
- _RaimaErr
- Range
- -
[data] DP_RDBArchive
- Type
- string
- Default
- _RDBArchive
[data] DP_RDBArchiveGroup
- Type
- string
- Default
- _RDBArchiveGroups
[data] DP_ValueArchiveMedia
- Type
- string
- Default
- _ValueArchiveMedia
[data] fileSwitchRoundOff
- Type
- unsigned integer
- Default
- 360
- Range
- Seconds
[data] flushTimeForAliasCache
- Type
- ushort
- Default
- 2
- Range
- 0..maxshort
[data] flushTimeForDpConfigCache
- Type
- ushort
- Default
- 2
- Range
- 0..maxshort
[data] ignoreCorruptDB
- Type
- bool
- Default
- 0
- Range
- 0|1
[data] keepLastTimeSmoothedValue
- Type
- bool
- Default
- 0
- Range
- 0|1
With the config entry keepLastTimeSmoothedValue = 1 it is possible to archive the current value at the end of a smoothing period if it is different than the last archived value which started the smoothing period. The value will be archived when a new value change occurs after the smoothing period and not at the end of the period. This feature only applies to time based smoothing and smoothing periods configured using the "archive" config; see _archive (Archiving). This feature is deactivated by default and no additional value is archived.
[data] lastValBgUpdateCycle
- Type
- unsigned integer
- Default
- 600
- Range
- >= 0
[data] lmcType
- Type
- string
- Default
- LMC_IP (UNIX) / LMC_INTERNAL (Windows)
- Range
- LMC_INTERNAL, LMC_IP
[data] lockVATimeout
- Type
- int
- Default
- 600
- Range
- 1..7200
CAUTION! If you change the [data] passiveRecoveryTimeout to a value smaller than lockVATimeout, it can cause a Redu project not to start.
[data] maxAlertRequestCount
- Type
- int
- Default
- 1000000
- Range
- >= 0
NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.
[data] maxLinesInQuery
- Type
- unsigned long
- Default
- 80000
- Range
- <number of dpe>.. MAX_UINT
NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.
[data] maxRequestLineCount
- Type
- int
- Default
- 0
- Range
- >= 0
[data] maxRequestMemSize
- Type
- int
- Default
- 0
- Range
- >= 0
[data] maxUpdateMsgCount
- Type
- unsigned
- Default
- 1000
- Range
- >=0
[data] maxValueRequestCount
- Type
- int
- Default
- 1000000
- Range
- >= 0
NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.
[data] multiUserMode
- Type
- bool
- Default
- 1
- Range
- 0|1
If 1, the database is opened in multiple-user mode. If 0, in multiple-user mode.
[data] numberOfAlertsToBuffer
- Type
- short
- Default
- 500
- Range
- 10..500
[data] numberOfDatapointsToCache
- Type
- int
- Default
- 10
- Range
- >= 1
[data] numberOfValuesInOneInitMessage
- Type
- int
- Default
- 10
- Range
- 1..100
[data] numberOfValuesToBuffer
- Type
- short
- Default
- 500
- Range
- 10..500
[data] passiveRecoveryTimeout
- Type
- unsigned integer
- Default
- 1800
CAUTION! If you change the passiveRecoveryTimeout to a value smaller than [data] lockVATimeout, it can cause a redu project not to start.
[data] quickStart
- Type
- bool
- Default
- 1
- Range
- 0|1
Defines whether the DataBGManager will be started at the end of the project startup (0) or at the start of Data manager (1). The first method is faster, the second more compatible with original behaviour.
When using the quickstart mode no other manager (ASCII, DataBG) can access the database until all processes before the DataBG process are started. For Linux the quickstart mode can be disabled as the RAIMA performance differences are not significant. Depending on the particular use case it might be beneficial to disabe the quickstart.
[data] repair
- Type
- string
- Default
- on
- Range
- on, off, ignore, last, lastonly, only:dbname
- on = checks and repairs the DB, if the file dbase.status' exists.
- off = if the file dbase.status' exists, then exit DM
- ignore = ignore the file 'dbase.status' and start DM
- last = repairs only the last data, if 'dbase.status' exists.
- lastonly = repairs the last changed data and exit.
- only:dbname = repairs only the specified data and exit.
[data] repairDchain
- Type
- bool
- Default
- 1
- Range
- 0|1
[data] sendAlertsToRAIMA
- Type
- bool
- Default
- 0
- Range
- 0|1
[data] sendUDAGNullValues
- Type
- bool
- Default
- 1
- Range
- 0|1
[data] smoothBit
- Type
- string
- Range
- Userbit 1.. Userbit 32, _active, _exp_default, _aut_default, _out_prange, _out_range, _exp_inv, _aut_inv, _online_bad, _default_bad, _from_GI, _from_SI, _per_active, _stime_inv, _uncertain
smoothBit = "_active"
smoothBit = "_exp_default"
smoothBit = "_aut_default"
smoothBit = "_out_prange"
smoothBit = "_out_range"
smoothBit = "_exp_inv"
smoothBit = "_aut_inv"
smoothBit = "_online_bad"
smoothBit = "_default_bad"
smoothBit = "_from_GI"
smoothBit = "_from_SI"
smoothBit = "_per_active"
smoothBit = "_stime_inv"
smoothBit = "_uncertain"
smoothBit = "Userbit 1"
smoothBit = "Userbit 2"
smoothBit = "Userbit 3"
smoothBit = "Userbit 4"
smoothBit = "Userbit 5"
...
smoothBit = "Userbit 30"
smoothBit = "Userbit 31"
smoothBit = "Userbit 32"
[data] startTimeVACorrection
- Type
- bool
- Default
- 1
- Range
- 0|1
Note: It is not recommended to disable this feature.
[data] statFctInitInterval
- Type
- unsigned integer
- Default
- 7200
- Range
- 0..7200
[data] transactionLogging
- Type
- bool
- Default
- 0
- Range
- 0|1
In order to disable transactionLogging, set the config entry to 0. TransactionLogging cannot be disabled by deleting the config entry.
[data] useAlertDpListCache
- Type
- bool
- Default
- 1
- Range
- 0|1
The entry is used by the Data and DataBG managers.
[data] useCurrentTimeForStartValue
- Type
- bool
- Default
- 0
- Range
- 0|1
[data] waitForRecoveryFlag
- Type
- int
- Default
- 1800 sec
- Range
- 0-MAXINT, negative values are not allowed
[data] waitTimeForBGStart
- Type
- unsigned integer
- Default
- 60
- Range
- >= 0
[different sections]
Settings for different sections
[different sections] dbgCount
- Type
- integer
- Default
- 100
- Range
- >1
[different sections] debugFormat
- Type
- string
- %{time} current time in std. WinCC_OA format
- %{time format} current time in defined format The format string can contain any % placeholders which can be used in the formatTime() CTRL function.
- %{time delta} time difference to the last Debug() output in this thread
- %{message} the sum of all formatted arguments, viz. the actual debug output
- %{line} current line number in the script
- %{file} script file path or output of module/panel/script
- %{location} current position e.g. script file path or module/panel/script incl. line number
- %{function} name of current function inside which Debug() is executed
- %{stack} current stack trace (see also getStackTrace())
- \n newline character. Has to be written as \\n
- \t tab character. Has to be written as \\t
[different sections] ignoreDebug
- Type
- bool
- Default
- 0
- Range
- 0|1
[different sections] independentAlertAck
- Type
- bool
- Default
- 0
- Range
- 0|1
[different sections] loadAllCtrlLibs
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0: Load only explicitly defined Ctrl libraries (see loadCtrlLibs).
- 1: Load all files from the scripts/libs directory.
[different sections] loadCtrlLibs
- Type
- string
loadCtrlLibs = "std.ctl, libCTRL.ctl, hosts.ctl, va.ctl, archiv.ctl"
A library loaded by this entry can be removed again by a subsequent UnloadCtrlLibs entry.
[different sections] priorityClass
- Type
- integer
- Default
- 0
- Range
- Linux: -20-19 Windows:-1-2
Windows:
- -1: lower than normal
- 0: Priority normal (Default)
- 1: higher than normal
- 2: Priority high
Linux:
- 1..19: increase priority (the Manager has to be a root process)
- 0: normal (Default)
- -20..-1: decrease priority
[different sections] queryFunction
- Type
- bool
- Default
- 0
- Range
- 0|1
With the config entry queryFunction = 1 a database function is used for dpGetPeriod() instead of a query. Therefore, the limitations such as the number of tables and the length of the SQL statement cease to exist.
With queryFunction = 0, a query is used as so far.
The entry can be used in ValueArchiveRDB and UI sections.
Please note that this entry is not intended for use in regular projects, but can only be used for specific, proprietary database schemas.
Use in different projects means that correct functioning can no longer be guaranteed.
[different sections] queryHLBlockedTime
- Type
- long (milliseconds)
- Default
- 0
- Range
- 0..32767
[different sections] unLoadCtrlLibs
- Type
- string
unloadCtrlLibs = "std.ctl, libCTRL.ctl, hosts.ctl, va.ctl, archiv.ctl"
[DisRec]
Settings for the Disaster Recovery System
[DisRec] switchingDriverActiveTimeout
- Type
- int
- Default
- 0
[DisRec] syncStatusBits
- Type
- bool
- Default
- 0
- Range
- 0|1
[DisRec] syncUserBits
- Type
- bool
- Default
- 0
- Range
- 0|1
[DisRec] useOfflineErrorstateInfo
- Type
- bool
- Default
- 0
- Range
- 0|1
[dist]
Settings for the Distribution Manager
[dist] connectDp
- Type
- string
- Default
- _DistConnections
[dist] distDpName
- Type
- string
- Default
- _DistManager
[dist] distPeer
- Type
- string
distPeer = "host1[:port1][$host2[:port2]]" System number [UTF8]
Specifies the hosts and the system number the distribution manager will connect to as a "client" (the other system is the "server"). If the other system is redundant both host names are separated by a dollar sign $.
Caution:
The order, in which the hosts are set in the config file, must always be the same. This means that if e.g. the hosts are set as follows in the data config entry:
data = "host1-1,host1-2$host2-1,host2-2"
The hosts in the distPeer config entry must be set in the same order:
distPeer = "host1[:port1][$host2[:port2]]" system number [UTF8]
Another order (distPeer = "host2[:port1][$host1[:port2]]" system number) causes connection failures.
As an optional third parameter the literal UTF8 can be supplied: its presence means that the remote party (server) uses UTF-8 character encoding. The absence of this parameter implies usage of ISO encoding at the other party. This parameter is only available starting with v3.16, and it is required when the server we want to connect to is a pre-3.16 using UTF-8 character encoding. As versions >=3.16 are less restrictive in terms of language configuration, this setting allows systems in a distributed configuration to use the same languages, but different character encoding. Versions prior to 3.16 are not prepared for this, therefore this information is sometimes (again, when client is >=3.16 but server is <3.16) necessary to be configured explicitly by the engineer using this optional parameter.
[dist] distPort
- Type
- int
- Default
- 4777
- Range
- > 0
[dist] enforceAccessControl
- Type
- boolean
- Default
- 1
- Range
- 0|1
Enables communication between SSA projects and older projects without SSA (<=3.15).
For the server-side authentication, see chapter Server-side Authentication for UI Managers Configuration), use the entry "enforceAccessControl=0" where an SSA project communicates with an older SSA project.
Note: Projects >3.15 always need the same plugin loaded.
[dist] maxSystemsToInitialize
- Type
- int
- Default
- 0
- Range
- >= 0
[dist] maxUpdateMsgCount
- Type
- unsigned
- Default
- 1000
- Range
- >=0
[dist] requestIdDelay
- Type
- int
- Default
- 0
- Range
- >= 0
[dist] updateStatusForHiddenSystems
- Type
- bool
- Default
- 0
- Range
- 0|1
[distsync]
Settings for Dist management.
[distsync] distSyncPopup
- Type
- int
- Default
- 1
- Range
- 0|1
On the UI a pop-up window that informs about the synchronization is shown after the synchronization process.
In order to disable the pop-up window, for example, when a user does not own the necessary rights to confirm the pop-up, set the config entry to 0.
[distsync] firstLoginEnabled
- Type
- boolean
- Default
- 1
- Range
- 0|1
Use the entry when Dist management is used togehter with Active directory to prevent that the user ID will be different for the same user on different systems. See also: Dist Management in Combination with Active Directory - Re-sorting/Synchronization of Users without inconsistent History. Set the config entry on the slave systems to 0 to prevent the first login on the slave systems.
[dnp3]
Settings for the DNP3 driver
[dnp3] authKeyChangeInterval
- Type
- uint
- Default
- 600000
- Range
- >10000
[dnp3] authMACAlgorithm
- Type
- uint
- Default
- 4
- Range
- 1-6
- 1 -> SHA1 4-OCTET
- 2 -> SHA1 10-OCTET
- 3 -> SHA256 8-OCTET
- 4 -> SHA256 16-OCTET
- 5 -> SHA1 8-OCTET
- 6 -> AESGMAC 12-OCTET
[dnp3] authMaxKeyChangeCount
- Type
- uint
- Default
- 1000
- Range
- >0
[dnp3] authReplyTimeout
- Type
- uint
- Default
- 2000
- Range
- >1000
[dnp3] autoClearRestart
- Type
- bool
- Default
- 1
- Range
- 0|1
- 0 -> the restart bit is not reset automatically
- 1 -> the restart bit is reset automatically
[dnp3] autoCmdMode
- Type
- bool
- Default
- 1
- Range
- 0|1
- 0 -> no automatic handling for select and execute
- 1 -> automatic handling of select and execute
[dnp3] autoConfirm
- Type
- bool
- Default
- 1
- Range
- 0|1
[dnp3] autoDisableUnsol
- Type
- bool
- Default
- 0
- Range
- 0|1
[dnp3] autoEventPoll
- Type
- bool
- Default
- 0
- Range
- 0|1
[dnp3] autoIntegrityLocal
- Type
- bool
- Default
- 1
- Range
- 0|1
[dnp3] autoIntegrityOverflow
- Type
- bool
- Default
- 1
- Range
- 0|1
[dnp3] autoIntegrityRestart
- Type
- bool
- Default
- 1
- Range
- 0|1
[dnp3] autoTimeSync
- Type
- bool
- Default
- 0
- Range
- 0|1
[dnp3] channelWatchdogTimeout
- Type
- uint
- Default
- 180
- Range
- >0
[dnp3] deviceSerial
- Type
- string, string, string
Syntax:
deviceSerial = <device name> <serial port> <serial parameter>
- device name - This is an arbitrary name. It is used as reference in the DNP3 panel (e.g. "dev1").
- serial port - Defines the interface (e.g. "COM1").
- serial parameter - Depending on the used port, the device specific parameters (e.g. baud rate, parity, bit number, stop bits = "9600,e,8,1") are set.
[dnp3] dnp3DummyRead
- Type
- uint
- Default
- 1
- Range
- 0-2
[dnp3] integrityPollAtStartup
- Type
- bool
- Default
- 1
- Range
- 0|1
[dnp3] linkAddress
- Type
- unsigned integer
- Default
- 3
- Range
- >=0
[dnp3] linkStatusPeriod
- Type
- unsigned integer
- Default
- 10
- Range
- >=0
[dnp3] readStationTime
- Type
- unsigned integer
- Default
- 0
- Range
- >=0
[dnp3] sesDefaultResponseTimeout
- Type
- uint
- Default
- 5
- Range
- >=0
[dnp3] tcpServerPort
- Type
- int
- Default
- 0
- Range
- gt;= 0
[dnp3] timeStampMode
- Type
- unsigned integer
- Default
- 0
- Range
- 0 | 1 | 2
- 0 -> use computer time as timestamp
- 1 -> use time of device and assume time of device is normal local time (no daylight saving)
- 2 -> use time of device and assume time of device is UTC
[dnp3] userBitEvent
- Type
- integer
- Default
- 0
- Range
- 0-32
[dnp3] userBitXX
- Type
- integer
- Default
- 0
- Range
- 0-32
- OL -> online (automatisches Mapping)
- RS -> restart
- CL -> communication lost
- RF -> remote forced
- LF -> local forced
- CF -> chatter filter
- RO -> rollover
- OR -> over range
- DC -> discontinuity
- RE -> reference error
[driver]
Config Entries for Drivers.
[driver] driverAckClassPrefix
- Type
- string
[eip]
Settings for the EIP driver
[eip] aliveInterval
- Type
- ulong
- Default
- 10
- Range
- 2-100
[eip] autoGQ
- Type
- bool
- Default
- 1
- Range
- 0|1
[eip] connectTimeout
- Type
- ulong
- Default
- 3000
[eip] gqSingles
- Type
- ushort
- Default
- 2
- Range
- 0..2
[eip] idleCloseTimeout
- Type
- uint
- Default
- 0
[eip] implicitPort
- Type
- ushort
- Default
- 2222
- Range
- 0-65535
[eip] MaxGap
- Type
- uint
- Default
- 5
[eip] maxQueueSize
- Type
- ulong
- Default
- 100
[eip] onlyActivePolls
- Type
- bool
- Default
- 0
- Range
- 0|1
[eip] serverPort
- Type
- ushort
- Default
- 44818
- Range
- 0..65535
IP port number of host system driver instance.
The Ethernet/IP specification defines that the TCP/IP port number for all devices shall be 44818.
The port number is normally not changed from this default. However, since the driver does not support incoming connections, changing this port number is permitted, for example if multiple instances of the driver are necessary for some reason. The value 0 means that no port for incoming connections is opened.
Also, running other Ethernet/IP software on the same system (such as RSLinx) will cause a port conflict, causing the driver to fail to start, unless this port number is changed from the default.
All EIP PLCs are assumed to be using port 44818. This cannot be specified.
[eip] StatCheckInterval
- Type
- uint
- Default
- 10
- Range
- max 200
[event]
Settings for the Event Manager
[event] activeRecoveryTimeout
- Type
- unsigned int (seconds)
- Default
- 1800
- Range
- >= 0
Caution: The time must be sufficient so that both Event managers are able to connect to each other. This means
that in this time Redu managers and CTRL managers are started and both Redu managers od the redundant systems
are connected to each other.
[event] alertConditionBit
- Type
- string
- Default
- no check of a status bit
- Range
- identifier of a status bit
[event] alertConditionLogic
- Type
- bool
- Default
- 1
- Range
- 0|1
[event] alertSignOrder
- Type
- string
- Default
- vVwWaA
[event] attributesFromAddValues
- Type
- int
- Default
- 1
- Range
- 0-3
- 0 -> no transfer of additional values (_alert_hdl_add_values) to alarm attributes.
- 1 -> additional value with the index 2 (_alert_hdl.._add_value_2) is written to the
alarm text (_alert_hdl.._text) if defined and shown in the alert screen. The attribute _alert_hdl.._mapped_text
can be used additionally to query the additional value.
Note: Applies only to multiinstance alarms. If _alert_hdl.._add_value_2 is mapped to the _alert_hdl.._text attribute it may only be set in the same command (dpSet() or Message) when the alarm comes or goes (_event : DPATTR_ALERTEVENT_CAME/WENT) and is locked for later changes. If _alert_hdl.._add_value_2 should be freely available, attributesFromAddValues must be set to 0.
- 2 -> additional value with the index 1 (_alert_hdl.._add_value_1) is written to the alarm value (_alert_hdl.._value) if defined.
- 3 -> additional values are written to alarm text an alarm value (combination of 1+2).
Note: The use of this entry only makes sense when the alarm value and text are written to the first both additional values by the driver/manager.
If 'attributesFromAddValue' is set, it's considered as definitely mapping to text and value. After an alarm occured, the alarm value and text mustn't be changed (reason: alarm value and text describe the value and associated text which has triggered the alarm. Therefore, the mapped add_values mustn't be changed). The mapped values are only allowed to be passed at the coming (ALERTEVENT_CAME, ALERTEVENT_CAME_IMPULSE) or going (ALERTEVENT_GONE, ALERTEVENT_GONE_IMPULSE) of an alarm in the same message after an event. During the event ALERTEVENT_GONE_INACTIVE, value and text can't be set, because normally it modifies multiple alarm instances. In this case, as well as if there are no associated values, the value and text are provided by the parameterization or the current value. The config entry only applies to multi instance alerts and is ignored in case of normal alarms.
[event] copyDp
- Type
- string string
- Range
- <Name of source DP element> <Name of target DP element>
config.redu
Changes of the original attributes of the specified source DP element are also made on the same
element of the specified target datapoint by the Event manager.The target datapoint has to be of
the same type as the source datapoint. If the element is a node this applies for all leaves under
the node. In order to duplicate different elements the entry can also be specified several times.
Some specific datapoint elements (alerts from WinCC OA, e.g. HD is full) can have in redundant systems
different values. Therefore for such elements system-specific datapoints are created. Unfortunately,
these datapoints also contain elements (commands to WinCC OA, e.g. file switch) which actually should not
be copied. As this would be only possible via a change of the datapoint type, the here described
possibility is available.
This config entry is for the redundancy, but can also be used in non-redundant systems.
[event] copyDpType
- Type
- string
- Range
- name of the source DP element
config.redu
With the entry copyDpTypes all changes of the original attributes in the specified
source datapoint element are also made to the elements of all datapoints of the specified
target datapoint type, analogous to copyDp. Syntax:
[event]
copyDpTypes = "<datapoint type>.<datapoint element>"
If two datapoints of this type have the names <DPname> and <DPname>_2, <DPname>.<element>
will be copied to <DPname>_2.<element>.
Restriction: <DPname> must not end with _2.
For example: The datapoints Iec_2 and Iec_2_2 will never match for a copyDpType configuration.[event] createUsersAllowed
- Type
- bool
- Default
- 1
- Range
- 0|1
[event] discardOldValues
- Type
- bool
- Default
- 0
- Range
- 0|1
[event] dpFctActivate
- Type
- bool
- Default
- 1
- Range
- 0|1
If this entry is set to 0, a dp_fct or stat_func config cannot be activated via a script.
[event] dpFuncOldNewCompare
- Type
- bool
- Default
- 0
- Range
- 0|1
[event] driverNegativeSourceTimeDiff
- Type
- double
- Default
- actual value of negativeSourceTimeDiff
- Range
- >= 0
[event] enableAlertPreview
- Type
- bool
- Default
- 0
- Range
- 0|1
By default the EVENT manager will not process deactivated "_alert_hdl" configurations, and, in contrast to previous versions, no alert previews are generated.
To reenable the old behavior, this config entry must be activated.
[event] eventsFileStateBit
- Type
- unsigned integer
- Default
- 1
- Range
- 0..32
[event] evStatusDP
- Type
- string
- Range
- a bool element of an arbitrary datapoint
[event] forceActiveDP
- Type
- string
- Default
- _ReduManager[_2].ForceActive
- Range
- -
[event] fwdDp
- Type
- string
- Range
- name of the datapoint element
config.redu
Changes of the original attributes of the specified datapoint element are forwarded
by the Event manager to the redundant Event manager (relates to redundancy). If the element
is a node this applies for all leaves under the node. In order to forward different elements
the entry can also be specified several times.
Forwarding is used to report changes that can occur in only one of two systems (e.g. DM HD full)
also to the other redundant system.
[event] fwdDpType
- Type
- string
- Range
- name of the datapoint element
config.redu
Analog to fwdDp, all changes at this datapoint element are forwarded
by the Event manager to the redundant Event manager. In contrast to fwdDp not the name of
a datapoint element of an existing datapoint is specified, but the element of a datapoint
type in the format 'Type.Element' (e.g. 'ExampleDP_Bit.' for the root element of the
datapoint type ExampleDP_Bit). Thus, the corresponding elements of all datapoints of this type
are forwarded, independing of whether they already exist at start of the Event manager or they not.
If the element is a node this applies for all leaves under the node. In order to forward different elements
the entry can also be specified several times.
[event] heartbeatTime
- Type
- uint
- Default
- 1
[event] link0DP
- Type
- string
[event] maxAlertConnectCount
- Type
- uint
- Default
- 1000000
[event] maxAlertRequestCount
- Type
- uint
- Default
- 1000000
NOTE: If you set higher values than the default values for this config entry, this can lead to a significant increase in memory consumption (RAM) by the WinCC OA runtime.
[event] maxInputMsgCount
- Type
- unsigned
- Default
- 100000
- Range
- >= 1000
[event] maxParseTime
- Type
- unsigned integer
- Default
- 20
- Range
- >= 0
[event] maxValueConnectCount
- Type
- uint
- Default
- 1000000
[event] maxValueRequestCount
- Type
- uint
- Default
- 1000000
[event] msgQueueHoldTime
- Type
- int
- Default
- 60
[event] msgQueueLimitTimeout
- Type
- unsigned
- Default
- 60
- Range
- >= 20
[event] negativeSourceTimeDiff
- Type
- unsigned integer
- Default
- 0
- Range
- >= 0
[event] passiveRecoveryTimeout
- Type
- unsigned integer
- Default
- 300
- Range
- >= 0
Caution: The time must be sufficient so that both Event managers are able to connect to each other. This means
that in this time Redu managers and CTRL managers are started and both Redu managers od the redundant systems
are connected to each other.
[event] redConnTryInterval
- Type
- unsigned integer
- Default
- 60
- Range
- >= 0
[event] redOldNewComp
- Type
- bool
- Default
- 1
- Range
- 0|1
[event] refuseCNS
- Type
- bool
- Default
- 1
- Range
- 0|1
Specifies if a manager shall hold CNS data of the identification in memory. CNS data is still tranferred with the identification but the manager discards this data.
[event] updateUsersAllowed
- Type
- bool
- Default
- 1
- Range
- 0|1
[event] useCRC
- Type
- bool
- Default
- 0
- Range
- 0|1
useCRC is a safety feature of the WinCC OA messaging system. It offers extended failure detection capabilities compared to the Standard messaging system. To ensure data integrity in WinCC OA Messages, these messages are divided into CRC telegrams of appropriate length each containing a 32 bit CRC. On reception of the messages the values are checked and if the values do not match, an error is detected.
The error is shown in the log viewer and the connection between the WinCC OA managers is closed.
- The entry "useCRC" can be used in the [event] or in a driver specific section of the config file. It can be used in one of these sections or in both sections.
- The entry is always manager specific. The "stronger" manager wins and decides the type of connection:
EXAMPLE: The connection between the driver and the event will use the extended data integrity check. As will all other managers that connect to the event manager.
[event]
useCRC = 1
[mod]
useCRC = 0
EXAMPLE: The connection between the driver and the event will use the extended data integrity check. All other managers that connect to the event manager will not use it (unless specified in their section).
[event]
useCRC = 0
[mod]
useCRC = 1
- The information whether a specific connection uses extended data integrity check or not is written to the connection data point of the manager. In addition a log entry will be written upon startup of the manager reporting its way of communication.
- In a redundant system the entry can be used in one or both system(s) of the redundant system.
- In a DRS system the entry can be used in one or both of the DRS system(s).
- If distributed systems are used and one of the systems is a safety system and the other system is not, use the entry only for the safety system. The distributed partner of the safety system will use CRC checks when communicating with the safety system's event. CRC checks will not be used when communicating with the non-safety system's event manager.
- In case an invalid value is entered to the config file for the keyword "useCRC", a warning will be output in the log file and the manager will use default behaviour in its communication.
- Log messages are output when CRC is used or when CRC was configured but is not used due to a localhost connection.
- A message is also output when CRC is configured and should be used but is not being used (WARNING).
For a safety project see also the "Basic and operating Conditions" document in the ETM portal.
[event] useSourceTime
- Type
- bool
- Default
- 0
- Range
- 0|1
[event] validTimeDiff
- Type
- unsigned int (minutes)
- Default
- 10
- Range
- >= 0
[general]
Global settings valid for all managers
[general] accessControlPlugin
- Type
- string
[general] activateAlertFiltering
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] alertPermissionsCompatibilityMode
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] atomicDpSet
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] authCheckPasswordExpired
- Type
- bool
- Default
- 1
When this config entry is 1 (true), the linux PAM account validation will report errors as errors and therefore fail the verifyOSUser() call.
When this config entry is 0 (false), the account validation will report any error in validation, for example an expired password only as a warning in the log, but the verifyOSUser() call will succeed.
This config entry is only used for Linux configurations. Windows based configurations will not be effected.
[general] autoRemoveOrphanedData
- Type
- bool
- Default
- 1
- Range
- 0|1
Automatically removes orphaned data from the SQLite database during the project startup. E.g.
- Deletes a data point if its type does not exist
- Deletes a config if its data point element does not exist
- Deletes a last value if its data point element does not exist
If this feature is disabled, any orphaned data found will be reported as WARNINGs, and you have to clean up the orphaned data manually.
[general] bcmBufferLimitTimeout
- Type
- unsigned
- Default
- 60
- Range
- >=20
[general] cnsUseDoubleAsterisk
- Type
- bool
- Default
- 1
This config entry influences the behaviour of the CNS functions (cnsGetNodesByName() and cnsGetIdSet()) that use pattern matching.
If the value of this config entry is "1", then the wildcard '*' cannot represent any characters and multiple characters in the CNS identification, except '.' and ':'.
The wildcard '**' cannot represent any character and several characters including '.' and ':', and is therefore suitable for pattern matching across several CNS levels.
If the config entry is "0", then '*' and '**' have the same behaviour. Both can then represent all characters, including '.' and ':'.
[general] CtrlAdoMSBoolFormat
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] CtrlAdoNumericalPrecision
- Type
- string
- Range
- double|int32|int64
Note: Drivers that don't support fetching numerical values with low precision will ignore the precision policy.
This config entry is not used under Windows.
[general] ctrlAllowedFeatures
- Type
- string
[general] ctrlMaxBlockedPendings
- Type
- integer
- Default
- 3000
- Range
- >0
[general] ctrlMaxPendings
- Type
- int
- Default
- 200
- Range
- > 0
[ui_5]
ctrlMaxPendings = 120
[general] ctrlMaxWeight
- Type
- integer
- Default
- 10000 (CTRL) bzw. 5000 (UI, Event, ASCII, etc.)
[general] defaultArchive
- Type
- uint
- Default
- 97
- Range
- >=0
[general] discreteImpulseAlertWithoutWent
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] displayName
- Type
- string
[general] dnsLookupTimeout
- Type
- 32bit unsigned integer
- Default
- 2500 milliseconds
- Range
- milliseconds
Use the config entry dnsLookupTimeout to define the maximum DNS lookup timeout. DNS resolution is now performed in an asynchronous time-limited lambda function, which can be configured to be shorter than the default DNS timeout value (30 seconds).
The default value for the DNS timeout is 2500 milliseconds and can be configured via ([general] dnsLookupTimeout). If the timeout is exceeded, DNS resolution will fail.
If the DNS resolution takes longer than 500ms, a warning is issued. This warning can be deactivated by using the config entry [general] suppressDnsLookupWarnings = 1.
NOTE: Do not use values below 100 or above 30000 if you are not familiar with the DNS lookup functionality.
[general] DpCommentSeparator
- Type
- char
- Default
- @
[general] dpFuncLoopCount
- Type
- int
- Default
- 20
- Range
- >=20
[general] dpGetDescriptionMode
- Type
- int
- Default
- 1
- Range
- -2 ... 3
[general] DP_StatisticsPrefix
- Type
- string
- Default
- _Stat
- Range
- -
[general] DP_UserForceSet
- Type
- string
- Default
- _Users.ForceSet
- Range
- -
[general] DP_UserId
- Type
- uint
- Default
- _Users.UserId
- Range
- -
[general] DP_UserName
- Type
- string
- Default
- _Users.UserName
- Range
- -
[general] DP_UserPassword
- Type
- string
- Default
- _Users.Password
- Range
- -
[general] DP_UserPermissions
- Type
- string
- Default
- _Users.Permissions
- Range
- -
[general] DP_UserPermSet
- Type
- string
- Default
- _Users.PermissionSet
- Range
- -
[general] externErrHdl
- Type
- string
WinCC OA uses an internal error handler that is also used to write logs for each manager.
By using this config entry an external error handler plugin can be defined that should be loaded in addition to the internal WinCC OA error handler.
For this config entry the name of the plugin library must be stated, which needs to be located within the bin/ folder of the WinCC OA installation directory.
How to write an external error handler is described in the API chapter.
[general] keepAckColorOnMultipleAck
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] kerberosRootGroup
- Type
- string
- Range
- PVSSRoot or any valid domain group, Default: PVSSRoot
[general] lang
- Type
- string
- Default
- first 'langs' entry
- Range
- one of project languages
- You can also use the option "auto" to set the WinCC OA user interface automatically to the users display language.
- Users display language on Windows: Control panel -> Region and Language -> Display language
- Note that the language that is set via the "lang" entry must be a project language. You cannot set a language for the UI if the language was not selected as a project language when creating a project.
[general] langs
- Type
- string
- Range
- project languages
Example:
langs = "de_AT.utf8"
langs = "en_US.utf8"
langs = "hu_HU.utf8"
[general] limitCryptVersion
- Type
- int
- Default
- 0
- Range
- 0|3|4
- 0 means, that there is no limitation, all versions, including v4 are allowed.
- 3 limits to version 3 (as in 3.19 and older versions).
- 4 allows version 4 as well.
The crypt() function will automatically downgrade to the maximum permitted version. So if limitCryptVersion=3, then crypt("pwd", 4) generates the same hash format as crypt("pwd", 3).
[general] lowestAutoManNum
- Type
- unsigned integer
- Default
- 1 | 7
- Range
- 1-255
[general] lowestAutoManNumUI
- Type
- unsigned
- Default
- 1 | 7
- Range
- 1-255
[general] maxBcmBufferSize
- Type
- unsigned integer
- Default
- 10000
- Range
- >1000
[general] maxConnectMessageSize
- Type
- unsigned integer
- Default
- 100
- Range
- >=0
[general] messageDiagSec
- Type
- unsigned integer
- Default
- 30
- Range
- 0 - MAX_UINT
[general] parallelCtrlADO
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] paramLang
- Type
- string
- Default
- first 'langs' entry
- Range
- one of project languages
[general] password
- Type
- string
[general] pmonPort
- Type
- integer
- Default
- 4999
- Range
- 1024-65535
[general] proj_path
- Type
- string
[general] proj_version
- Type
- string
[general] pvss_path
- Type
- string
[general] refuseCNS
- Type
- bool
- Default
- 0
- Range
- 0|1
Specifies if a manager shall hold CNS data of the identification in memory. CNS data is still tranferred with the identification but the manager discards this data if the config entry is activated.
Please note, that this setting uses a different default value for the sections [event] and [valarch]
[general] saveLastValueBit
- Type
- unsigned
- Default
- 0
- Range
- 1-32, 0 = off
[general] serverSideAuthentication
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] statFctActivate
- Type
- bool
- Default
- 1
- Range
- 0|1
If this entry is set to 0, a dp_fct or stat_func config cannot be activated via a script.
[general] statFctInheritCorrValues
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] statFctLimitForMarkAsCorrected
- Type
- integer
- Default
- 0
- Range
- 0 - 1000
[general] statFctMaxIntervalsInPast
- Type
- unsigned integer
- Default
- 3
- Range
- 0 - MAX_UINT
[general] statFuncMinInitTimeRange
- Type
- int
- Default
- 0
- Range
- minimum 0
For historical initialization of statistical functions a dpGetPeriod with bonus 1 is needed. This dpGetPeriod with bonus 1 may cause performance issues in large projects using the NGA.
When setting this config entry to a value other than 0, instead of executing a query by using bonus 1, the time period of the dpGetPeriod is extended into the past and into the future by the period used to calculate the statistical function. In the event that no bonus value can be determined with this procedure, a query is run again with bonus 1 to ensure correct functionality. The calculation period for a statistical function is configured in the PARA module -> config dp_fct -> Synchronization tab -> calc.time interval.
If this period is less than statFuncMinInitTimeRange, the range is increased by statFuncMinInitTimeRange instead. With the default value 0 the standard behavior with bonus 1 is performed.
[general] suppressDnsLookupWarnings
- Type
- bool
- Default
- 0
- Range
- 0|1
If the DNS resolution takes longer than 500ms, a warning is issued. For DNS resolution, see the config entry [general] dnsLookupTimeout. This warning can be deactivated by setting the config entry [general] suppressDnsLookupWarnings = 1.
[general] tlsHandshakeTimeout
- Type
- uint
- Default
- 5000 msecs
- Range
- 250-5000 msecs
This config entry defines the timeout duration for the TLS handshake negotiation on a secure socket.
We recommend a minimum of 250 msecs, but bear in mind that this may vary depending on network performance.
Higher values (tens of seconds) basically disable DoS mitigation.
[general] translateConfig
- Type
- string
- Default
- '' '|'
Syntax:
translateConfig = <filename> <delimiter>
[general] translationFile
- Type
- string
- Default
- [automatic]
[general] translationSourceLang
- Type
- string
- Default
- [automatic]
- Range
- any known language
[general] useCMContainerSerialNumber
- Type
- string
- Default
- 0-0
- Range
- Serial number
Example:
[general]useCMContainerSerialNumber = "3-4736110"
[general] useCMLicense
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] useCommonCryptography
- Type
- bool
- Default
- 0
- Range
- 0|1
The config entry for activating or deactivating the modern Common Cryptography Library (CCL). By default, the status is set to FALSE, which means that the legacy cryptography functionality is used. If the status is set to TRUE, the CCL is used.
NOTE: In a distributed system, you must set the config entry on all systems on which you want to use encryption.
[general] useDbAsIso
- Type
- bool
- Default
- 0
- Range
- 0|1
This new regulation influences the upgrade procedure of existing projects.
The following projects can be converted automatically:
- Monolingual projects and
- Multilingual projects if all project languages belong to the same ISO character set (e.g. iso8859-1).
The config entry useDbAsIso is being used when converting an ISO project to an utf8 project. The config entry useDbAsIso = 1 is set in the config file.
[general] useNGA
- Type
- bool
- Default
- 0
- Range
- 0|1
NOTE: Converting an existing project to NGA is currently not recommended.
[general] useNGADirectRead
- Type
- bool
- Default
- 0
- Range
- 0|1
[general] useRDBArchive
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 = RDB Archive Manager not functional.
- 1 = RDB Archive Manager activated (RDB write/read).
[general] useRDBGroups
- Type
- bool
- Default
- 1 if RDB is configured
- Range
- 0|1
[general] userName
- Type
- string
[general] useSQLite
- Type
- bool
- Default
- 1
- Range
- Not applicable (value depends on project type)
To use an SQLite project, use the configuration entry "useSQLite = 1". This config entry is created automatically when the SQLite® project is selected during project creation.
Use the config entry otherwise only if you are migrating manually from RAIMA to SQLite® (Manual Migration of RAIMA → SQLite®).
[general] useValueArchive
- Type
- bool
- Default
- 1
- Range
- 0|1
[general] useWindowsNTLM
- Type
- bool
- Default
- 1
- Range
- 0|1
Specifies if the Windows NTLM functionality should be used.
The default is "1" for the NTLM support in Windows. As long as NTLM is not completely disabled in the Domain Controller, it is usable for authentication. As such, the use can be activated and deactivated with this config entry.
[httpServer]
Defines options for the httpServer running inside a CTRL manager
[httpServer] accessLog
- Type
- bool
- Default
- 0
- Range
- 0|1
[httpServer] allowPanelParam
- Type
- bool
- Default
- 0
- Range
- 0|1
[httpServer] autoEncryption
- Type
- bool
- Default
- 1
- Range
- 0|1
[httpServer] compatIgnoreForwardedFor
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0: the original IP address of the browser in which the ULC UX client is running will be read from the HTTP header X-Forwarded-For and used for myDisplayName() and UI settings.
- 1: the IP address of the reverse proxy is used for myDisplayName() and UI settings (compatible to versions below 3.19 P009).
[httpServer] compressionCacheEnabled
- Type
- bool
- Default
- 1
- Range
- 0|1
[httpServer] externalAuthHeader
- Type
- string
[httpServer] externalAuthParam
- Type
- string
[httpServer] favIcon
- Type
- string
- Default
- /pictures/StandardIcons/Console_20.png
[httpServer] httpHeader
- Type
- string
- Default
- See Description
httpHeader = "X-XSS-Protection: 1; mode=block"
httpHeader = "X-Content-Type-Options: nosniff"
httpHeader = "Cache-Control: private"
httpHeader = "Cache-Control: must-revalidate"
To remove all entrys of the HTTP header (including the default values) following entry can be used:
httpHeader = "-empty list-"
Note: Mandatory header entries will not be removed.
[httpServer] indexPage
- Type
- string
- Default
- /data/index.html
[httpServer] loadBalance
- Type
- string
- Range
- hostname [max=5]
Example: loadBalance = "win10-140 max=10 exts=extern.etm.at:445 ext=extern.etm.at:82" loadBalance = "win10-141 max=10 exts=extern.etm.at:446 ext=extern.etm.at:83"
exts= is used when the connection is encrypted, i.e. when working via https://.
ext= is sent to the client (the ULC JavaScript part) if the connection is not encrypted, i.e. if http:// is used.
Note: In a redundant system, when this config entry is not given, the HTTP server uses both redu-servers as load balancer hosts (when the HTTP server is running on either of the servers). In this case it is required to run the HTTP Server CTRL Manager with -connectToRedundantHosts, otherwise the other host does not know that a CTRL manager is running as the Event manager only writes onto its local connections dp[httpServer] pngCompression
- Type
- int
- Default
- 100
- Range
- 0..100
[httpServer] strictTransportSecurityMaxAge
- Type
- uint
- Default
- 31536000 (= ~1 year)
[httpServer] uiArguments
- Type
- string
- Default
- -p vision/login.pnl -centered -iconBar -menuBar
- -lang XXXX ... active language, uses the preferred language received from the Web-Browser
- -server XXXXX ... When the HTTP server does not run on the same host as the Event Manager, we assume that the UI manager can not read the project files (panels, CTRL-lib, etc.) from the local disc. Therefore with this option the UI will request the files via HTTP requests from the main server. This feature requires a running HTTP server on the machine on which the Event Manager runs (in case of a redundant project, there must be an HTTP server running on each of the redu hosts) You can disable this behavior with the config entry 'uiUsesMainServerAsFileServer = 0'
[httpServer] uiStartPermissionBit
- Type
- int
- Default
- -1
[httpServer] uiUsesMainServerAsFileServer
- Type
- bool
- Default
- 1
- Range
- 0|1
[httpServer] ulcAliveTimeout
- Type
- uint
- Default
- 60
- If 0, no timeout is checked
- If the value is part of the interval [1..10], 10 seconds is used as the timeout value
- The default value if not specified is 60 seconds
[httpServer] ulcUseClientTimeZone
- Type
- bool
- Default
- 0 on Windows, 1 on all other platforms
- Range
- 0|1
- incomplete historical information about time zones
- inaccurate or missing dates for transitions between standard and daylight saving time (DST)
- no DST support for the Southern hemisphere
[httpServer] XFrameOptions
- Type
- string
- Default
- SAMEORIGIN
- Range
- none
A security measurement prevents to load content from a different website. This is called "clickjacking" protection.
To nevertheless load the content of the foreign server inside your own website the HTML Header parameter X-Frame-Options can be used to configure the expected behavior.
This parameter must be set on the remote server and contain the URL of your server to display the foreign content on your server.
There are 4 different options available for the XFrameOptions config entry:
- "none": is used to completely deactivate this option
- "DENY": Foreign content is not loaded.
- "SAMEORIGIN": Only content from your own server is loaded.
- "ALLOW-FROM": Only the content is loaded for which the X-Frame-Options HTML Header parameter is set correctly. Must be configured on the foreign server!
Example:
First server: www.myFirstServer.com
Second server: www.mySecondServer.com
To display the content from the second server within the first server (e.g. using an iframe) the second server must state the parameter "XFrameOptions: ALLOW-FROM http://www.myFirstServer.com" within the HTML header. This can be configured by setting following config entry within the config of the second webserver.
[httpServer]
XFrameOptions = "ALLOW-FROM http://www.myFirstServer.com"
[iec]
Settings for the IEC driver
[iec] asymmInit_101
- Type
- unsigned
- Default
- 0
- Range
- 0-1
For IEC 101 only.
When the entry is set to 1, the link is always built after the peer.
[iec] autoAnswerReadComm
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
This config entry defines whether the driver should answer read telegrams (Type 102)
automatically.
This makes only sense, if the driver is operated in 'Controlled Station' mode and
not as usual in 'Controlling Station' mode.
[iec] autoGQ
- Type
- int
- Default
- 3
- Range
- 0-3
For IEC 101 and 104.
General query after connection establishment (autoGQ <mode>).
<mode>
- 0 ... no automatic GQ
- 1 ... automatic GQ after connection establishment
- 2 ... automatic GQ at redundancy change-over
- 3 ... as well as
[iec] autoNegativeConf
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
Automatic negative confirmation of commands.
Command confirmation in IEC 60870 is done by a mirror of the command telegram.
In controlled station mode, this must be done in WinCC OA using a CTRL script, which
presumes that corresponding addresses are parameterized. This means if a positive
confirmation should be sent, a script has to be created.
Using the config entry autoNegativeConf = "Yes" you can specify that the IEC driver
automatically sends a negative response to a command, if it cannot be mapped to an input
address. The default value of the config entry is "No". This only applies to command telegram
types in the range of C_SC_NA_1..C_BO_TA_1.
[iec] balanced_101
- Type
- string
- Default
- No
- Range
- Yes, No
For IEC 101 only.
Driver mode: "Yes" Balanced", "No" Unbalanced".
[iec] certPath
- Type
- string
Relative path of the certificate store under <project>/data/IEC61850/. The directory is defined by the config entry, e.g.:
[iec]certPath="myCertificates"
Creates the directory <projectpath>\data\IEC61850\myCertificates.
[iec] checkDSR_101
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 only.
Specifies whether the DSR line should be checked before sending a telegram. If the
line is active, the telegram is sent, otherwise an error message is shown and the
telegram discarded.
[iec] compareTransType
- Type
- string
- Default
- Yes
- Range
- Yes|No
For IEC 104 only.
If the config entry discardBlocked = "Yes" is set, all data of "Blocked" Information
Objects are discarded in the driver. For further information to the quality information
"Blocked" see Quality identification.
[iec] connection
- Type
- string string int int
For IEC 104 only.
Defines what connection the driver is to support:
<name> <host> <port> <timeout>
- name - (logical) name of this connection. For each connection there must be one datapoint "_<name>" of the "_IecConnection" type. These DPs are automatically created on the panel for connections. For redundant drivers the second connection name is created automatically ("*_2"), whereby the connection name on both servers is the same and has not to be specified for each host separately (since WinCC OA release 3.9).
- host - Name (or IP address) of the host the driver is supposed to connect to and from which it accepts a connection.
- port - Port number if the driver is a TCP client and attempts to connect on its own, or 0 if the driver is a TCP server. In the latter case, the "tcpServerPort" entry must exist.
- timeout: - Interval at which the driver attempts to connect on the TCP level if it is a TCP client.
[iec] connection_101
- Type
- string string string
For IEC 101 only.
Defines an IEC 101 connection on a device defined above.
<name> <devname> <101 link address>
- <name> - (logical) name of this connection analogous to an Iec104 connection (datapoint name from connection panel)
- <devname> - name of a device_101
- <101 link address> - logical address of the IEC101 partner in unbalanced mode
[iec] connUserByteCOT
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
This entry allows to specify the cause of transmission, which is sent by the driver,
in a user byte. The value specifies the number of the user byte. If the value 0
is set, no user byte mapping is done.
[iec] connUserByteOrigin
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
This entry allows to specify the origin address, which is sent by the driver,
in a user byte. The value specifies the number of the user byte. If the value 0
is set, no user byte mapping is done.
[iec] connUserByteQ
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
This entry allows to specify quality information, which is sent by the driver,
in a user byte. The value specifies the number of the user byte. If the value 0
is set, no user byte mapping is done.
[iec] defaultImpulseTime
- Type
- int
- Default
- 8
- Range
- 0..255
For IEC 101 and 104.
A time period can be set for pulse commands sent from the driver to the SAT devices
(see Quality identification). A default value can be specified with this entry, so
that the time period does not need to be set for every command datapoint. This time
must be specified as a byte as required by the SAT format (see below). If this entry
does not appear in the configuration file, then 8 (=00001000) is assumed as the default
setting, corresponding to a switching time of 100 ms (= 2x50 ms - see below). The
following data is contained in this byte:
Time (bits 0 and 1) 0 for 50 ms, 1 for 500 ms, 10 for 1 sec, 11 for 10 sec.
Factor (bits 2-6) 1..31: switching time = time - factor
OW (Bit 7) 1... overwrites command already running 0... no overwrite allowed
Example:
Sets the default value for the pulse commands switching period to 50 ms.
defaultImpulseTime = 4
Sets the default value for the pulse commands switching period to one second with
overwrite bit set.
defaultImpulseTime = 134
[iec] defaultLinkAddress_101
- Type
- int
- Default
- 0
For IEC 101 only.
This is an address field in 101 frames.
[iec] device_101
- Type
- string string string
For IEC 101 only.
Defines which devices to use for an IEC101 protocol.
<devname> <type> <specific device data>
- <devname> - Symbolic name of the device to get a connection to a Connection_101.
- <type> - "V24" or "V24s" for a serial connection. "V24s" means that in a redundant system the device is only open on the active system.
- <specific device data> - Used for device-specific data depending on type. Device data is a string with this format: "port;baud,parity,databits,stopbits". For "V24", for example, "com;9600,e,8,1".
"Device" "V24" "com1;9600,e,8,1"
In order to trigger the line with RTS when sending, you have to specify the RTS mode
in the "device_101". Possible modes are:
- 0 = RTS Disabled
- 1 = RTS Enabled
- 2 = RTS Handshake
- 3 = RTS Toggle
"Device" "V24" "com1;9600,e,8,1:3"
Delay times (Pre and Post delay times) in the RTS mode, can be set with the config
entries "preDelayRTS" and "postDelayRTS" (a description of these entries you can
also find in this table).
[iec] discardBlocked
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
If the config entry discardBlocked = "Yes" is set, all data of "Blocked" Information
Objects are discarded in the driver. For further information to the quality information
"Blocked" see Quality identification.
[iec] extendedCOT
- Type
- string
- Default
- Yes
- Range
- Yes|No
For IEC 101 and 104.
The config entry extendedCOT = "Yes" specifies that the connection index is entered
into the 16-31 bits (this means into the upper 16 bit) when the IEC "Cause of Transmission"
is mapped on the datapoint. This index is only meaningful in case of redundant connections.
On the input side then index can be used to detect the connection that was used to
receive the telegram. On the output side the index can be used to send a telegram
via a specific connection. The config entry also means that upper 16 bits have to
be masked out if you only want to use the IEC COT.
[iec] ftInSubDir
- Type
- string
- Default
- iecIn
For IEC 101 and 104.
Subdirectory for incoming files. This subdirectory will not be created automatically
in the "data" directory of the current project. You have to create the directory
manually.
[iec] ftMaxQueuedReq
- Type
- unsigned
- Default
- 4
- Range
- 1..100
For IEC 101 and 104.
With this option it could be selected up to what level file requests are put into
the output queue. So it is possible to restrict bandwidth usage by file transfer.
If the selected value is a high one, the file is transferred faster, but maybe other
telegrams must wait for a longer time in the output queue, what normally is not wanted
for commands.
[iec] ftMaxSectionGap
- Type
- int
- Default
- 0
- Range
- 0,1
For IEC 101 and 104.
The config entry specifies that a file transfer is not interrupted although certain
sections (queried sections) do not exist. The default 0 means that the driver does
not interrupt when a section is missing. The value 1 specifies that the driver skips
the missing sections.
[iec] ftOutSubDir
- Type
- string
- Default
- iecOut
For IEC 101 and 104.
Subdirectory for outgoing files. This subdirectory will not be created automatically
in the "data" directory of the current project. You have to create the directory
manually.
[iec] ftRootDir
- Type
- string
- Default
- 'data' project directory
For IEC 101 and 104.
Root directory for the incoming and outgoing files.
[iec] ftSegmentsPerLoop
- Type
- unsigned
- Default
- 1
- Range
- 1..10
For IEC 101 and 104.
Defines the number of segments send in one main loop pass (default: 10ms).
[iec] ftTimeout
- Type
- unsigned
- Default
- 10
- Range
- 1..1000
For IEC 101 and 104.
Defines the time limit in seconds for a response to a file transfer telegram.
[iec] GQResponseWithoutTimestamp
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
To answer a general query in controlled station mode a CTRL script must set the
corresponding output data points. In order to force the sending of the telegrams
without timestamp, the [iec] section config file entry GQResponseWithoutTimestamp
= "Yes" must be set. Default value ist "No". This means that a dpSet on an output
address with a type including a timestamp (e.g. type 30) will send a telegram without
timestamp (e.g. type 1), if the COT is in the GQ range of 20 .. 36.
This is only applicable for the timestamp version of the telegram types M_SP_NA_1,
M_DP_NA_1, M_ST_NA_1, M_BO_NA_1, M_ME_NA_1, M_ME_NB_1, M_ME_NC_1, M_IT_NA_1.
[iec] iecDpName
- Type
- string
- Default
- _Iec_num
For IEC 101 and 104.
Obsolete since version 3.9.
Name of the internal datapoint of type "_Iec". For redundant drivers the name of
both replicas must differ as follows, e.g. "_Iec_1" and "_Iec_2".
[iec] iecTlsCert
- Type
- string
- Default
- iec.crt
For IEC 104 only.
Name of certificate file for TLS encryption. The file must be located in the "certs" folder of the
PKI directory.
[iec] iecTlsCertCA
- Type
- string
- Default
- iecRoot.crt
For IEC 104 only.
Name of the file containing the trusted root certificates, which are used to sign the peer
certificates. The file can contain more than one certificate.
It must be located in the "certs" subdirectory of the IEC driver certificate store PKI
directory.
[iec] iecTlsCertKey
- Type
- string
- Default
- iec.key
For IEC 104 only.
Name of certificate file for TLS encryption. The file must be located in the "private" folder of the
PKI directory.
[iec] iecTlsCertStore
- Type
- string
- Default
- <WinCC OA Project>/data/iec104
For IEC 104 only.
Path to the directory in which the Public Key Infrastructure directory is located.
[iec] iecTlsCipherSuite
- Type
- string
- Default
- AES256-SHA256,AES256-SHA
For IEC 104 only.
A comma separated list of ciphers, which can be used for communication.
The server selects the first cipher algorithm, which is also in the client cipher suite.
[iec] iecTlsCrl
- Type
- string
For IEC 104 only.
Optional name of the file containing the certificate revocation list. This file must be in the "crl"
subdirectory of the IEC driver certificate store PKI directory.
[iec] master_101
- Type
- string
- Default
- Yes
- Range
- Yes|No
For IEC 101 only.
Master or slave in unbalanced mode (not used in balanced mode):
"Yes" Master (default) , "No" Slave.
[iec] maxOSI7Len_101
- Type
- unsigned
- Default
- 247
- Range
- > 64
For IEC 101 only.
This entry specifies the maximum size in bytes of sent IEC telegrams. The config
entry determines the maximum length of the OSI7 data area. It is possible to make
the telegram length small than it is designed in the norm.
[iec] maxOutputQueue_101
- Type
- unsigned
- Default
- 128
- Range
- >= 0
For IEC 101 only.
This entry specifies the maximum size of the output queue (max. number of telegrams).
If the output queue is full, the telegrams are discarded and an error message displayed.
[iec] max_k
- Type
- int
- Default
- 12
- Range
- 1-32767 (2^15-1)
For IEC 104 only.
Defines how many outstanding telegrams without acknowledgement the driver is allowed
to have. If this number is reached, the driver sends no further telegrams to the
partner until the outstanding acknowledgements are sent by the driver.
[iec] max_w
- Type
- int
- Default
- 8
- Range
- 1-32767 (2^15-1)
For IEC 104 only.
Defines how many telegrams have to be sent before the driver has to sent acknowledgements
to the partner. To set this value to 2/3 of max_k is recommended.
[iec] negativeBitToInvalid
- Type
- string
- Default
- No
- Range
- Yes|No
[iec] originatorAddress
- Type
- unsigned
- Default
- 0
- Range
- 0..255
For IEC 101 and 104.
This entry specifies the default value of the originator address,
which the driver is inserting into the second byte of the cause of transmission if a telegram is sent.
[iec] postDelayRTS
- Type
- unsigned
- Default
- 0
- Range
- 0..1000
For IEC 101 only.
Defines, how many milliseconds after sending a telegram the RTS line should remain
active. Only supported for Windows and only if the mode of the serial interface is
not RTS_TOGGLE, i.e. no ":3" is set in the configuration string for the serial interface
(see also "device_101" entry above).
[iec] preDelayRTS
- Type
- unsigned
- Default
- 0
- Range
- 0..1000
For IEC 101 only.
Defines, how many milliseconds before sending a telegram the RTS line should be opened.
Only supported for Windows and only if the mode of the serial interface is not RTS_TOGGLE,
i.e. no ":3" is set in the configuration string for the serial interface (see also
"device_101" entry above).
[iec] priorityClass
- Type
- int
- Default
- 0
- Range
- Linux: -20-19; Windows:-1-2
For IEC 101 and 104.
Controls the priority of the IEC driver manager under Windows and Linux (see entries
for different sections).
[iec] reduStartDTtimeout
- Type
- uint
- Default
- 0
- Range
- >=0
For IEC 104 only.
Waiting time in seconds before the driver starts a new connection after a redundancy
switch. Requires sendStartDTwhenPassive = 0
[iec] reqInactTime_101
- Type
- unsigned
- Default
- 0
- Range
- 0-300
For IEC 101 only.
This config entry guarantees a minimum time (in milliseconds) between the sending
of two IEC telegrams.
[iec] retry_101
- Type
- int
- Default
- 0
For IEC 101 only.
Number of attempts to send a frame. Default: 0, i.e. by default the driver makes
no repetition of sending the frame, if the destination station does not respond to
a query (within timeout_t1). If the frame cannot be sent after the defined number
of retries, the driver begins with the establishment of the connection after expiry
of timeout t3 (timeout_t3), i.e. if the driver looses a station, it tries the next
connection establishment after 20s.
[iec] sendStartDTwhenPassive
- Type
- int
- Default
- 1
- Range
- 0|1
For IEC 104 only.
If 1 then the driver sends a StartDT signal after establishing the connection even
if it is connected to the passive system.
If 0 then a StartDT is not send after establishing the connection if the driver is
connected to the passive system.
[iec] singleAck_101
- Type
- string
- Default
- No
- Range
- Yes, No
For IEC 101 only.
Specifies whether the driver should send acknowledgements as single byte telegrams
in the 101 mode. Mode for sending ack: "Yes" use single ack, "No" use complete ack.
[iec] sizeof_COA
- Type
- int
- Default
- 2
- Range
- 1-2
For IEC 101 and 104.
Defines the number of bytes the 'Common Object Address' in the IEC telegram consists
of. For IEC 104 connections this value must be 2.
[iec] sizeof_COT
- Type
- int
- Default
- 2
- Range
- 1-2
For IEC 101 and 104.
Defines the number of bytes the 'Cause of Transmission' in the IEC telegram consists
of. For IEC 104 connections this value must be 2.
[iec] sizeof_IOA
- Type
- int
- Default
- 3
- Range
- 1-3
For IEC 101 and 104.
Defines the number of bytes the 'Information Object Address' in the IEC telegram consists
of. For IEC 104 connections this value must be 3.
[iec] sizeof_LA_101
- Type
- int
- Default
- 0
- Range
- 0-2
For IEC 101 only.
Number of bytes for the Link Address. In Unbalanced Mode this config entry must exist
and must have a value unequal 0!
[iec] station_101
- Type
- int
- Default
- 0
- Range
- 0, 1
For IEC 101 only.
Number of the station in balanced mode.
[iec] swapModuleValue
- Type
- string
- Default
- No
- Range
- No, Yes
For IEC 101 and 104.
Defines whether the byte order of "Module" and "Value" (the first bytes of the Information
Object Address) should be swapped. This is necessary for AK1703, for example, when
the HB and MB values have to be swapped before being sent.
[iec] tcpServerPort
- Type
- int
- Default
- 0
- Range
- gt;= 0
For IEC 104 only.
Indicates the port on which the driver should wait for incoming connections. The
driver can be either TCP client, in this case the entry must not exist, or TCP server,
then the entry must exist. A TCP server is automatically also an IEC slave, i.e.
the other side must also initialize the connection.
[iec] tgFilterTimeout
- Type
- unsigned
- Default
- 0
- Range
- >= 0
For IEC 104 only.
Timeout in milliseconds for filtering telegrams in case of redundant connections.
If this entry is set to > 0, telegrams received via redundant connections are compared and
filtered out if they are identical. The timeout defines how long a telegram will
be stored in the driver for comparison. This entry only functions for IEC 104 (use
the option "-dbg filter" for debugging purposes).
[iec] timeoutAfterIsolation
- Type
- uint
- Range
- gt;= 0
For IEC 104 only.
Time in seconds the driver waits before reestablishing his connections after he changed back from isolated state to connected to the network.
[iec] timeout_t1
- Type
- int
- Default
- 1 sec
- Range
- >0
For IEC 101 only.
The entry timeout_t1 defines the time within which the destination station has to
respond to a request. If the station does not respond within this time the request
is repeated (retry_101).
[iec] timeout_t1(IEC 104)
- Type
- int
- Default
- 15
- Range
- 1..255
- Unit
- sec
For IEC 104 only.
Time-out for receiving the response to a send or test APDUs.
[iec] timeout_t2
- Type
- int
- Default
- 1500 msec
- Range
- >0
For IEC 101 only.
The entry timeout_t2 is only relevant for the unbalanced mode and defines the polling
interval within which the data is queried. If the time is e.g. 1 second the driver
queries each substation in 1 second interval.
[iec] timeout_t2(IEC 104)
- Type
- int
- Default
- 10
- Range
- 1..255
- Unit
- sec
For IEC 104 only.
Timeout for acknowledgement in case of no data messages.
[iec] timeout_t3
- Type
- int
- Default
- 20 sec
- Range
- >0
For IEC 101 only.
The entry specifies the interval within which the link status should be checked.
If a station falls out, the driver tries to reconnect after the end of this timeout
(before the driver makes "retry_101" attempts to reconnect).
[iec] timeout_t3(IEC 104)
- Type
- int
- Default
- 20
- Range
- 1..255
- Unit
- sec
For IEC 104 only.
Timeout for sending test frames in case of a long idle state.
[iec] timeSync
- Type
- string
- Default
- N
- Range
- Y/N
For IEC 101 and 104.
Activates the use of a time synchronization message (type 103,C_CS_NA_1). In this
case the PLC always sends a synchronization message with the absolute time CP56Time2a.
The hourly value of this message is used as a basis for the following CP24Time2a
time stamp (this time stamp contains only the time within an hour with millisecond
resolution). If the hour changes a new synchronization message is sent. The driver
notes internally per Common Object Address the time of the last time synchronization
message and uses this as basis for the following CP24Time2a time stamp.
[iec] tlsServerPort
- Type
- int
- Default
- 0
- Range
- gt;= 0
For IEC 104 only.
Indicates the port on which the driver should wait for incoming connections using
transport layer security encryption.
[iec] useCOTGQ
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
Defines whether COT 20 resp. 37 should be used with frames due to a IGQ. For more
details on the cause of transmission see chapter IEC driver details.
[iec] useIECFlatAddress
- Type
- string
- Default
- No
- Range
- Yes|No
For IEC 101 and 104.
Defines the Endianity of address fields on the transmission line.
- "Yes" = Big Endian (high byte transmitted first)
- "No" = Little Endian (high byte transmitted last) that is also in the standard.
- Common Address (LB = low byte)
- Common Address (HB = high byte)
- Information Object Address (LB)
- Information Object Address (MB)
- Information Object Address (HB)
- Common Address (HB = high byte)
- Common Address (LB = low byte)
- Information Object Address (HB)
- Information Object Address (MB)
- Information Object Address (LB)
[iec] UserBitDST
- Type
- int
- Default
- 0
- Range
- 1-32
For IEC 101 and 104.
Maps the summer time bit from the time stamps, if the config entry timeSync is set.
[iec] UserBitEI
- Type
- int
- Default
- 0
- Range
- 1-32
[iec] UserBitIVT
- Type
- int
- Default
- 0
- Range
- 1-32
For IEC 101 and 104.
When messages arrive and no time synchronization took place before, a time stamp
of an input value is composed of the CP24Time2a time stamp and the WinCC OA time. The
time stamp is marked as invalid. The invalidity of the time stamp can be mapped on
a WinCC OA userbit via this entry. The defined user bit is set in the following messages
until the next time synchronization command (with a valid time stamp).
The invalidity of the time stamp of a message (CP24Time2a) is also mapped on the
defined userbit.
[iec] UserBitXX
- Type
- int
- Default
- 0
- Range
- 1-32
For IEC 101 and 104.
Maps the quality bits on the WinCC OA user bits (see also chapter Quality information).
This mapping only applies in alert direction.
The both least characters (here "XX") of the entry define the type of the quality
information:
- IV: Invalid Bit
- NT: Not topical
- SB: Substituted
- CA: Counter adjusted
- CY: Carry
- BL: Blocked
- OV: Overflow
- EI: Elapsed time invalid
- IVT: Invalid time stamp
- DST: daylight saving time bit set
[iec] userByteCOT
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
Input-sided mapping of cause of transmission to a user byte. The value specifies
the number of the user byte, which shall be used for the COT. If the value 0
is set, no user byte mapping is done.
[iec] userByteOrigin
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
Input-sided mapping of origin address to a user byte. The value specifies
the number of the user byte, which shall be used for the origin address. If the value 0
is set, no user byte mapping is done.
[iec] userByteQ
- Type
- int
- Default
- 0
- Range
- 0-4
For IEC 101 and 104.
Input-sided mapping of the command mirror of the QU bits.
This config entry provides input-sided mapping of the quality / Command Qualifier
on an user byte.
Thereby the userBitXX config entries are not required anymore, but they are still
valid. An exception of the rule are the configs userbitDST and userbitIVT, because
these bits are mapping information from the timestamp. Note that the usage of this
config entry does not allow overlapping/overwriting with other config entries,
e.g. with userbitDST or userbitIVT.
[iec] utcTimestamps
- Type
- bool
- Default
- 0
- Range
- 0|1
For IEC 101 and 104.
Allows to enable or disable the usage of UTC timestamps for the IEC driver.
[iec61850]
Settings for the IEC 61850 client.
[iec61850] abortOnMismatch
- Type
- bool
- Default
- 0
- Range
- 0|1
[iec61850] aliveInterval
- Type
- uint
- Default
- 20
- Range
- 0 - 600 (in sec)
[iec61850] aliveTimeout61850
- Type
- uint
- Default
- 10
- Range
- 1 - 600 (in sec)
Determines the time after which the client recognizes a loss of connection to the peripheral device.
The alive timeout is only triggered if a TCP connection is still available but the device does not respond.
If the TCP connection fails on the hardware level (power-outage, etc) the time-out of the underlying stack is triggered (approx. 10 seconds).
The time-out is OS dependent and cannot be changed.
Under Linux the maximum time until a connection loss is recognized is aliveTimeout61850 + aliveInterval.
[iec61850] autoGQ
- Type
- uint
- Default
- 3
- Range
- 0 - 3
[iec61850] certPath
- Type
- string
Relative path of the certificate store under <project>/data/IEC61850/. The directory is defined by the config entry, e.g.:
[iec61850]certPath="myCertificates"
Creates the directory <projectpath>\data\IEC61850\myCertificates.
[iec61850] clientIedName
- Type
- string
- Default
- <WinCC OA Client Name>
The config entry assigns a spearate (Client) IED name to an IEC 61850 driver instance in WinCC OA. The entry must be set in a instance specific section [iec61850_<manager number>]. The RCB management panel only displays unassigned RCBs as well as RCBs that are directly assigned to the Client instance if the config entry is set.
A corresponding entry to the SCL configuration file must be made according to the norm:
e.g. <ClientLN ... IedName="WinCC OA Client Name">
The <ClientLN> entry must be placed inside of the <ReportControl> node.
An example can be found within the "Report Control Blocks" chapter of the IEC61850 Engineering documentation.
[iec61850] connRetryInterval
- Type
- uint
- Default
- 30
- Range
- 1 - 600 (in sec)
[iec61850] debugMsgQueueLimit
- Type
- uint
- Default
- 10000
- Range
- 1 - 50000
[iec61850] fileTransferTimeout61850
- Type
- uint
- Default
- 15
- Range
- 1 - 60
- Unit
- Seconds
The timeout defines how long a file transfer operation, e.g. downlowding a file from the server, is allowed to take.
[iec61850] maxReadRequests
- Type
- uint
- Default
- 20
- Range
- 1 - 1000
[iec61850] maxWriteRequests
- Type
- uint
- Default
- 40
- Range
- 1 - 1000
[iec61850] originatorCategory
- Type
- uint
- Default
- 2
- Range
- 1 - 3
[iec61850] originatorIdentifier
- Type
- string
- Default
- <hostname>_<project name>_<driver number>
- Range
- 30 (characters)
[iec61850] rcbReleaseTimeout
- Type
- uint
- Default
- 10
- Range
- 0 - 120
- Unit
- seconds
In a redundant WinCC OA system, on a redundancy switch, the driver becoming passive releases all server connections where "Passive host connects to device" has been activated.
This timeout determines the interval in seconds after which the client re-establishes these connections.
[iec61850] readRequestQueueLimit
- Type
- uint
- Default
- 50000
- Range
- 1 - 1000000
[iec61850] readResponseQueueLimit
- Type
- uint
- Default
- 50000
- Range
- 1 - 1000000
[iec61850] reportEnaMaxRetry
- Type
- uint
- Default
- 10
- Range
- 0 - 50000
[iec61850] reportEnaRetryInterval
- Type
- uint
- Default
- 6
- Range
- 1 - 600 (in sec)
[iec61850] sequentialConnSetup
- Type
- bool
- Default
- n
- Range
- y|n
[iec61850] setInvalidForConnLoss
- Type
- uint
- Default
- 2
- Range
- 0 - 2
[iec61850] userBitReduSourceDevice
- Type
- uint
- Default
- 6
- Range
- 1 - 32
[iec61850] userByteCommandMode
- Type
- uint
- Default
- 1
- Range
- 1 - 4
[iec61850] userByteQualityDetail
- Type
- uint
- Default
- 0
- Range
- 0 - 4
[iec61850] userByteQualityMode
- Type
- uint
- Default
- 0
- Range
- 0 - 4
[iec61850] userByteTimeQuality
- Type
- uint
- Default
- 0
- Range
- 0 - 4
[iec61850] writeIntDpQueueLimit
- Type
- uint
- Default
- 10000
- Range
- 1 - 50000
[iec61850] writeRequestQueueLimit
- Type
- uint
- Default
- 50000
- Range
- 1 - 1000000
[mod]
Settings for the Modbus driver
[mod] addUnicosMarker
- Type
- int
- Default
- -1
- Range
- -1..65535
[mod] aliveInterval
- Type
- unsigned
- Default
- 10 [s]
- Range
- >= 0
[mod] aliveTimeoutMsg
- Type
- unsigned unsigned
- Default
- 3 1
[mod] autoGQ
- Type
- bool
- Default
- 1
- Range
- 0|1
[mod] idleCloseTimeout
- Type
- unsigned
- Default
- 0 [s]
- Range
- >= 0
[mod] littleEndianRegister
- Type
- int
- Default
- -1
- Range
- -1|0|1
Defines the order of registers (16bit words) within 32bit or 64bit process data.
Possible values:
- -1 - No preferred value is defined. (Default).
- 0 - bigEndianRegister is preferred.
- 1 - littleEndianRegister is preferred.
[mod] maxConnRetryNumber
- Type
- unsigned
- Default
- 0
- Range
- >= 0
[mod] maxGap
- Type
- uint
- Default
- 16
- Range
- 0..100
[mod] maxPendingRequests
- Type
- unsigned
- Default
- 1
- Range
- 1..8
[mod] maxQueueSize
- Type
- int
- Default
- 256
[mod] maxRequestRetryNumber
- Type
- unsigned
- Default
- 0
- Range
- >= 0
[mod] onlyActivePolls
- Type
- bool
- Default
- 0
- Range
- 0|1
[mod] plc
- Type
- string
[mod] pollOptForBlob
- Type
- bool
- Default
- 1
- Range
- 0|1
[mod] requestDelay
- Type
- uint
- Default
- 0
- Range
- >= 0
[mod] simUnicosEvents
- Type
- unsigned
- Default
- 24
- Range
- 1..24
[mod] simUnicosPlc
- Type
- bool
- Default
- 0
- Range
- 0|1
Used only for TEST PURPOSES.
The function code is used to inform the driver to generate a UNICOS frame. The code
is not sent outside.
[mod] statCheckInterval
- Type
- uint
- Default
- 20 [s]
- Range
- 5-100
[mod] suspendTimeFactor
- Type
- int
- Default
- 10
- Range
- 1-100
[mod] tcpConnectTimeout
- Type
- unsigned
- Default
- 2000 [ms]
- Range
- >=1000
[mod] tcpReceiveBufferSize
- Type
- unsigned
- Default
- 0
- Range
- >=300
[mod] tcpServerPort
- Type
- unsigned
- Default
- 0
- Range
- 0..65535
[mod] unicosMarker
- Type
- int
- Default
- 65535(0xFFFF)
- Range
- -1..65535
[modsrv]
Settings for the Modbus/TCP server
[modsrv] tcpServerHost
- Type
- string
[modsrv] tcpServerPort
- Type
- int
- Default
- 502
- Range
- >=0
[modsrv] useUTC
- Type
- bool
- Range
- 0|1
[mqtt]
Settings for the MQTT driver.
[mqtt] certPath
- Type
- string
- Default
- cert
[mqtt] delta
- Type
- ushort
- Default
- 5
- Unit
- milliseconds
[mqtt] jsonProfileStatus
- Type
- ushort
- Default
- 0 (not used)
- Range
- 0..1
[mqtt] jsonTimeFormat
- Type
- ushort
- Default
- 0
- Range
- 0..1
[mqtt] onlyActiveSubscribes
- Type
- bool
- Default
- 0
- Range
- 0|1
[mqtt] reduClientIdPostfix
- Type
- string
- Default
- _2
[mqtt] statisticsRefreshTime
- Type
- ushort
- Default
- 60
- Unit
- seconds
[mqtt] userBitQoS1
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[mqtt] userBitQoS2
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[mqtt] userBitRetain
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[mqttpub]
Settings for the MQTT Publisher.
[mqttpub] certPath
- Type
- string
- Default
- cert
[mqttpub] connDp
- Type
- string
- Default
- MqttPublisher
[mqttpub] mqttPubGroup
- Type
- string
- Default
- MQTTPub
[mqttpub] publishSystemName
- Type
- bool
- Default
- 1
- Range
- 0|1
Defines if the System name should be part of the topic.
- If set to TRUE, the SystemName is part of the topic when publishing data, e.g. "System1/View1/Node1".
- If set to FALSE, the SystemName is not part of the topic, e.g. "View1/Node1".
The setting applies to both CNS (Plantmodel) and dpGroups.
[mqttpub] statisticsRefreshTime
- Type
- ushort
- Default
- 60
- Unit
- seconds
[mqttpub] useAlias
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 -> DP name
- 1 -> DP alias
[mqttpub] useCnsDisplayPath
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 -> CNS identifier
- 1 -> Display name path
[mqttpub] userBitQoS1
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[mqttpub] userBitQoS2
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[mqttpub] userBitRetain
- Type
- ushort
- Default
- 0 (not used)
- Range
- 1..16
[NextGenArch]
Settings for the NextGenArchive (NGA)
[NextGenArch] backendRestartDelay
- Type
- uint
- Default
- 20
[NextGenArch] importSourceDbAsIso
- Type
- boolean
- Default
- 0
- Range
- 0|1
In the case of importing a non-project-specific, historical WinCC OA database, which is ISO-coded, you must manually add this configuration entry to the configuration file of the new project by setting it to [NextGenArch] importSourceDbAsIso = 1.
[NextGenArch] maxSecondsToWaitForInitialQueriesBeforeConnectingToEvent
- Type
- uint
- Default
- 60
- Range
- Seconds
- Unit
- Seconds
In general changing this entry is only required for larger projects where the start of the EVENT Manager may take some time. Directly connecting to the EVENT Manager without this delay would cause the log to be filled with "cannot connect to event manager" messages.
NOTE: The EVENT Manager connection can still be configured as before by using the config entries connectDelay and connectRetries.
[NextGenArch] triggeredArchiving
- Type
- int
- Default
- 0
Allows to define the behavior for triggered archiving. A triggered archiving is performed, if the _archive config is set active. In this case all DPEs of this archive configuration are handled as if they received a hotlink with the current value.
Note: Can only be used for DPEs that have a _archive config.
Possible settings are:
- 0 - default; Triggered archiving is not performed.
- 1 - When the value is sent to the backends, the latest timestamp of the DPE is used.
- 2 - When the value is sent to the backends, the timestamp of the dpSet() operation is used.
[NextGenArch] useOriginalValue
- Type
- int
- Default
- 0
- Range
- 0|1
The config entry can be used for large data point structures that contain many sub elements since NGA connects to all _online configs and the EVENT manager becomes slower.
[oaTest]
Settings for the WinCC OA Unit Dynamic Link Library.
[oaTest] testCaseIdPrefix
- Type
- string
[oaTest] testCaseIdSuffix
- Type
- string
[oledb]
Settings for the OLE DB provider.
[oledb] maxOleDbArchiveConnectTime
- Type
- int
- Default
- 5
- Range
- >0
[oledb] maxOleDbIdleTime
- Type
- int
- Default
- 0
- Range
- >=0 (max. 2147483648)
[oledb] maxOleDbWaitAnswerTime
- Type
- int
- Default
- 60
- Range
- >=0 (max. 2147483648)
[oledb] num
- Type
- int
- Default
- 1
[oledb] oleDbServerPort
- Type
- int
- Default
- 4444
- Range
- >0
[oledb] usePvssWildCards
- Type
- bool
- Default
- 1
- Range
- 0|1
SQL:
% = any characters
_ = any single character
WinCC OA:
* = any characters
? = any single character
[onlineBackup]
Settings for the online backup
[onlineBackup] autoOnlineBackup
- Type
- bool
- Default
- 1
- Range
- 0|1
[opc]
Settings for the OPC client
[opc] enableGeneralQuery
- Type
- string
- Default
- Yes
- Range
- Yes|No
[opc] ioReadBack
- Type
- string
- Default
- Yes
- Range
- Yes|No
[opc] mapInvalidAdressToDrvInvalidBit
- Type
- string
- Default
- yes
- Range
- yes|no
[opc]
mapInvalidAdressToDrvInvalidBit = "yes"
is set in the config file, the invalid bit of the driver is set if the address (OPC
item) cannot be found in the server. The bit is reset as soon as the address exists
in the server and the system tried to use the address using_OPCGRoup.retryCorruptItem.
If this is successful, the address is available in the server and the server sends
an update. Thus, a value from the driver is sent to WinCC OA and DRV_INVALID is reset.
Thus, the DP is not invalid anymore. Note that the same OPC group must not be used
for two different OPC drivers.
[opc] priorityClass
- Type
- int
- Default
- 0
- Range
- Linux: -20-19 Win:-1-2
[opc] server
- Type
- string string
Example:
server = "server1" "www.foo.com/ETM.OPC.Simulation.1"
If a OPC client establishes a connection to several servers, a datapoint has to exist
for each sever (for each server config entry). You can create the datapoint via the
OPC parameterization panel. See chapter Panel OPC server.
Assigns the ProgID ETM.OPC.Simulation.1 to the symbolic name server1. The path is
optional. If a path is given, it must be separated by a "/" from the ProgID. When
a path is given, the server is automatically started as a remote server on the specified
computer. All UNC names ("//server" or "server") and all DNS names ("server.com",
"www.foo.com", or "135.5.33.19") can be given as path names.
At least one server must be specified, and a maximum of 20 servers can be started
at the same time.
The symbolic names of these servers must differ. This is necessary because for each
server there has to be a datapoint of type _OPCServer, whose name includes the symbolic
name (see chapter _OPCServer (OPC Client)).
[opc] timeStampFromServer
- Type
- string
- Default
- Yes
- Range
- Yes|No
[opcae]
Settings for the OPC A&E Client
[opcae] addTimeToComment
- Type
- int
- Default
- 1
- Range
- 0 - 2
[opcae] alertClassPrefix
- Type
- char
alertClassPrefix_AE_<Priority>
Priority is a number from 1 to 1000.
[opcae] alwaysWriteComment
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcae] browseOnStart
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcae] correctFutureTimes
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcae] refreshDelay
- Type
- int
- Default
- -1
- Range
- >=-1
[opcae] refreshMessage
- Type
- string
- Range
- -
[opcae] server
- Type
- string
[opcae] sourceSeparator
- Type
- char
- Default
- .
[opcae] startDelay
- Type
- int
- Default
- 0
[opcae] timeFormatComment
- Type
- string
- Default
- []{original time: %Y.%m.%d %H:%M:%S.%z}
- Range
- -
[opcae] useJsonForSimpleEvents
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcaesrv]
Settings for the WinCC OA OPC A&E server.
[opcaesrv] rootItem
- Type
- string
- Default
- DP
- Range
- "DP" | "DPT"
[opcaesrv] server
- Type
- string
[opcae_<servername>]
Server-specific settings for the OPC A&E client
[opcae_<servername>] conditionEventDp
- Type
- string
[opcae_<servername>] prefix
- Type
- string
- Default
- AE_
[opcae_<servername>] simpleEventDp
- Type
- string
- Default
- DP prefix+SimpleEventNotifications
Example:
[opcae_ABB1]
simpleEventDp = "GU_SimpleEvents."
The string that is written by the AE client, is composed as follows:
EventSource + "|" + EventMessage + " (severity " + EventSeverity + ")"
Thereby the italic written values are the values sent by the OPC server in it's message
and put together to the string (shown below) by the client.
Example:
"123.124.23.17_ConERR | No Alive Signal (severity 250)"
[opcae_<servername>] twoStateConditionsOnly
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcae_<servername>] watchdog
- Type
- string string int
- Range
- <wdMsg> <wdTargetDp> <wsTimeout>
- The OPC AE server sends a SimpleEvent of a special format (watchdog event) to the client periodically.
- The arrival of a watchdog event at the client resets a timer.
- If the timer expires before a new watchdog event is risen by the server a binary DPE is set (1). This signal can then be used for further processing (redundancy switch, raising an alarm, archiving).
- The target DP must exist twice (for "targetDP" there must be "targetDP_2"). The AE client will automatically set the correct DP.
- To set the data points also on the passive system, there is an entry necessary in the config.redu file. The watchdog DPs must be declared as "forward DPs" (see fwdDp and fwdDpType).
[opchda]
Settings for the OPC HDA client
[opchda] serverStateTimer
- Type
- uint
- Default
- 30
- Range
- >0
[opchdasrv]
Settings for the OPC HDA Server
[opchdasrv] archiveResponseTimeout
- Type
- uint
- Default
- 5
- Range
- >0
[opchdasrv] cnsShowSystemNameForLocalViews
- Type
- bool
- Default
- 0
- Range
- 0|1
[opchdasrv] cnsShowViewInPI
- Type
- bool
- Default
- 1
- Range
- 0|1
[opchdasrv] maxHdaReturnValues
- Type
- uint
- Default
- 100000
- Range
- >0
[opchdasrv] rootNode
- Type
- string
- Default
- WinCC_OA
[opchdasrv] vendorName
- Type
- string
- Default
- ETM professional control GmbH
[OPCSERVER]
Settings for the OPC server
[OPCSERVER] DEFAULTTRACEFILE
- Type
- string
Example:
[OPCSERVER]
STOPWITHLASTCLIENT = 0
DEFAULTTRACEFILE = "C:/TEMP/MeinLOG.log"
TRACEFILE = 1
TRACELEVEL = 8
[OPCSERVER] IgnoreTimestampChange
- Type
- bool
- Default
- 1
- Range
- 0|1
[OPCSERVER] OVERWRITELOGFILE
- Type
- bool
- Default
- 1
- Range
- 0|1
[OPCSERVER] STOPWITHLASTCLIENT
- Type
- int
- Default
- 1
- Range
- 0|1
[OPCSERVER] SubscribeOnUse
- Type
- bool
- Default
- 0
- Range
- 0|1
[OPCSERVER] TRACEFILE
- Type
- int
- Default
- 0
- Range
- 0|1
[OPCSERVER] TRACELEVEL
- Type
- int
- Default
- 0
- Range
- 0..31
- 1: Saves successful calls in the log file
- 2: Saves information messages in the log file
- 4: Saves warnings in the log file
- 8: Saves errors in the log file
- 16: Saves other messages in the log file
Example:
TRACELEVEL = 8 //saves just error messages
TRACELEVEL = 12 //saves errors and warnings (4+8)
TRACELEVEL = 31 //saves all messages (1+2+4+8+16)
Note:
If the keywords or values are written wrongly in the config file (e.g. missing "
at the beginning of the path with DEFAULTTRACEFILE) an error message takes place
in the Log Viewer and the OPC server does not start.
[OPCSERVER] Vendor
- Type
- string
- Default
- ETM professional control GmbH
[opcsrv]
General settings for the OPC DA server.
[opcsrv] cnsShowSystemNameForLocalViews
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcsrv] cnsShowViewInPI
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcsrv] CompareOldNew
- Type
- int
- Default
- 0
- Range
- 0|1
[opcsrv] itemIdType
- Type
- int
- Default
- 0
- Range
- 0-2
- 0 -> use data point names
- 1 -> use alias and ignore DPE if no alias is defined
- 2 -> use alis and fall back to data point name if no alias exists
[opcsrv] rootNode
- Type
- string
- Default
- WinCC_OA
- Range
- -
[opcsrv] server
- Type
- string
- Default
- OPCDAPvssServer
[opcsrv] showDPTs
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcua]
Settings for the OPC UA client
[opcua] alarmFallbackAddress
- Type
- string
- Default
- ns=0;i=0
[opcua] alertCounterAddValue
- Type
- uint
- Default
- 0
- Range
- 0..32
[opcua] applicationUri
- Type
- string
- Default
- urn:host:ETMpc:WinCC_OA_Client
- Range
- Uri
[opcua] autoGQ
- Type
- uint
- Default
- 0
- Range
- 0-3
- 0 -> no automatic GQ
- 1 -> automatic GQ during connection establishment
- 2 -> automatic GQ during redundancy switchover
- 3 -> automatic GQ during connection establishment and redundancy switchover
Note:
If the config entry driverNegativeSourceTimeDiff (see chapter Event Manager) is used, and
Subscriptions are used with a time stamp from the server or from the source, its
not allowed to perform a redundancy switchover during the GQ, otherwise the time
stamps are taken from different servers / sources. Thus autoGQ must be 0 or 1.
[opcua] certificateStore
- Type
- string
[opcua] checkCertificateHost
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcua] connUserBitWriteFeedback
- Type
- int
- Default
- 0
- Range
- 0..15
[opcua] eventFallbackAddress
- Type
- string
- Default
- ns=0;i=0
- Range
- node ID of the fallback address
This entry allows to specify a fallback address for the reception of events.
The default of this entry is ns=0;i=0. If the namespace index is 0, no fallback handling is done. If the namespace is not zero, the following fallback handling is executed:
- If there is no sourceNode available or configured, the driver tries to map the event to an address which consists of the namespace index and the sourceName of the event (e.g. "ns=20;s=myEventSourceName").
- If the fallback nodeId identifier is not zero and no matching source node or source name is configured, the event is mapped to eventFallbackAddress (namespace and identifier).
Therefore, you can use the sourceName as an alternative to the sourceNode.
Example:
[opcua]
eventFallbackAddress = "ns=10;s=all_other_events"
If you configure the address "ns=10;s=all_other_events", you will receive all events, which cannot be mapped to sourceNode address or "ns=10;s=sourcename" address.
[opcua] historyReadMode
- Type
- uint
- Default
- 0
- Range
- 0|1
[opcua] maxItemsInRequest
- Type
- uint
- Default
- 1000
[opcua] maxPendingMethodCalls
- Type
- uint
- Default
- 100
- Range
- 1..10000
[opcua] maxRequestQueueSize
- Type
- uint
- Default
- 10000
[opcua] nullValueToInvalid
- Type
- int
- Default
- 1
- Range
- 0-2
[opcua] productUri
- Type
- string
- Default
- urn:ETMpc:WinCC_OA_Client
- Range
- Uri
[opcua] server
- Type
- string
[opcua] serverStateTimer
- Type
- uint
- Default
- 5000
- Range
- >0
[opcua] sessionTimeout
- Type
- uint
- Default
- 1200000
- Range
- >5000
[opcua] setInvalidForConnLoss
- Type
- uint
- Default
- 0
- Range
- 0 - 2
- 0 => Invalid bit will not be set
- 1 => Invalid bit will be set (and the timestamp will be changed)
- 2 => Invalid bit will be set (without changing the timestamp)
[opcua] timestampDefaultForRead
- Type
- int
- Default
- 3
- 0 => use timestamp from source
- 1 => use timestamp from server
- 2 => not used (both timestamps)
- 3 => use reception timestamp
[opcua] timestampWriteMode
- Type
- int
- Default
- 0
- Range
- 0..3
- 0..the driver does not send the source/server timestamp to the server when issuing a write request (default)
- 1..the driver sends the _stime of the value as source timestamp when issuing a write request, server timestamp is not sent
- 2..the driver sends the _stime of the value as server timestamp when issuing a write request, source timestamp is not sent
- 3..the driver sends the _stime of the value as server and source timestamp when issuing a write request
[opcua] uaCallTimeout
- Type
- int
- Default
- 10000
[opcua] uaLocalIds
- Type
- string
- Default
- en
[opcua] userBitHistoryRead
- Type
- int
- Default
- 0
- Range
- 0..32
[opcua] userBitWriteFeedback
- Type
- int
- Default
- 0
- Range
- 0..32
[opcuasrv]
Settings for the OPC UA server
[opcuasrv] certificateStore
- Type
- string
[opcuasrv] checkApplicationUri
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] checkCertificateIssuerRevocation
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] checkCertificateRevocation
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] checkCertificateUsage
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] cnsShowSystemNameForLocalViews
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] cnsShowViewInPI
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] conditionSuffix
- Type
- string
- Default
- _@condition
[opcuasrv] disableSecurity
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] discoveryServer
- Type
- string
[opcuasrv] enableAnonymous
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] externalAckPrefix
- Type
- string uint
- Default
- -
- Range
- <alertclass prefix> <driver number>
[opcuasrv] historyNumValuesPerNode
- Type
- uint
- Default
- 10000
- Range
- >= 0
[opcuasrv] maxSessionTimeout
- Type
- int
- Default
- 60000
- Range
- >= 0
[opcuasrv] maxVcMessageSize
- Type
- unsigned integer
- Default
- 200
- Range
- >= 0
[opcuasrv] nodeIdType
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 -> DP name
- 1 -> DP alias
[opcuasrv] notifierSuffix
- Type
- string
- Default
- _@notifier
[opcuasrv] numberOfClients
- Type
- uint
- Default
- 0
- Range
- >=0
[opcuasrv] opcuaAlarmGroup
- Type
- string
- Default
- OPCUAAlarm
- Range
- <Alarm DP Group Alias>
[opcuasrv] opcuaHAReadGroup
- Type
- string
- Default
- OPCUAHARead
- Range
- <Historical Access DPGroup Alias>
[opcuasrv] opcuaReadGroup
- Type
- string
- Default
- OPCUARead
- Range
- <Read DP Group Alias>
[opcuasrv] opcuaWriteGroup
- Type
- string
- Default
- OPCUAWrite
- Range
- <Write DP Group Alias>
[opcuasrv] pvRangeCheck
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] reduServerDiscoveryUrl
- Type
- string
[opcuasrv] reduServerInstanceName
- Type
- string
[opcuasrv] reduServerInstanceUri
- Type
- string
[opcuasrv] sendCertificateChain
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] server
- Type
- string
- Default
- OPCUAPvssServer
[opcuasrv] serverBuildDate
- Type
- string
- Default
- <AutoGeneratedBuildDate>
[opcuasrv] serverBuildNumber
- Type
- string
- Default
- <AutoGeneratedBuildNumber>
[opcuasrv] serverCertificate
- Type
- string
- Default
- PVSS_UA_server.der bzw. ab Version 3.11: WinCC_OA_UA_Server.der
[opcuasrv] serverInstanceName
- Type
- string
[opcuasrv] serverInstancePrefix
- Type
- string
- Default
- WinCC_OA
[opcuasrv] serverInstanceURI
- Type
- string
[opcuasrv] serverManufacturerName
- Type
- string
- Default
- ETM professional control GmbH - a Siemens company
[opcuasrv] serverProductName
- Type
- string
- Default
- WinCC OA OPC UA Server
[opcuasrv] serverProductUri
- Type
- string
- Default
- http://www.etm.at/WinCC_OA
[opcuasrv] serverSoftwareVersion
- Type
- string
- Default
- <WinCC OA version>
[opcuasrv] showDescriptions
- Type
- int
- Default
- 1
- Range
- 0..2
- 0 - the server does not set any descriptions
- 1 - the server sets the descriptions for DPE leaf elements (Variables) (default)
- 2 - the server sets the descriptions for DPE leaf elements (Variables) as well as for DPE structure nodes (Folders)
[opcuasrv] showDPTs
- Type
- bool
- Default
- 1
- Range
- 0|1
[opcuasrv] sourceSuffix
- Type
- string
- Default
- _@source
[opcuasrv] tcpServerPort
- Type
- uint
- Default
- 4840
- Range
- >=0
[opcuasrv] timestampWriteMode
- Type
- int
- Default
- 0
- Range
- 0..2
- 0 - the server uses its local time for writing values received from the client (default)
- 1 - the server uses the "source timestamp" received from the client
- 2 - the server uses the "server timestamp" received from the client
- If mode 1 or 2 is selected, the server will accept write requests with set source timestamp and/or server timestamp.
- If mode 1 or 2 is selected and the wanted timestamp is not received, the local time is used (behavior like option 0).
[opcuasrv] trustAllClientCertificates
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] uaBadAttributes
- Type
- string
- Default
- _out_prange,_out_range,_exp_inv,_aut_inv,_stime_inv
- Range
- <attribute1>,<attribute2>,...,<attributeX>
[opcuasrv] uaFloatingPointType
- Type
- bool
- Default
- 0
- Range
- 0|1
- 0 - Double (64bit Double Precision) - Default
- 1 - Float (32bit Single Precision)
- The OPC UA data type for "float" DPEs can only be defined globally and NOT individually for each single "float" DPE.
- When converting comma spearated values stored on DPEs as 64bit (double precisoon) format to the OPC UA data type "Float" a loss of precsison might occur.
- If the stored value of a 64bit floating point number on the "float" DPE exceeds the maximum or minimum value range of the OPC UA data type "Float" (+/- 3.4*1038), the value within the address space is set to "+/- Infinite".
[opcuasrv] uaMaxDataQueueSize
- Type
- int
- Default
- 100
- Range
- >= 1
[opcuasrv] uaMaxRetransmissionQueueSize
- Type
- int
- Default
- 20
- Range
- >= 1
[opcuasrv] uaSecurityMode
- Type
- int
- Range
- 1|2
[opcuasrv] uaSecurityPolicy
- Type
- int
- Default
- 3
- Range
- 0..5
[opcuasrv] uaUncertainAttributes
- Type
- string
- Range
- <attribute1>,<attribute2>,...,<attributeX>
[opcuasrv] useClientUser
- Type
- bool
- Default
- 0
- Range
- 0|1
[opcuasrv] useOnlineValueForConnect
- Type
- bool
- Default
- 1
- Range
- 0|1
[opc_<symbolic_servername>]
Server-specific settings for the OPC client
[opc_<symbolic_servername>] addItemsSingle
- Type
- string
- Default
- no
- Range
- yes|no
[opc_server1]
addItemsSingle = "yes"
Adds the items in single mode to the group. With "No" (default) all items are added
at once to the group. If all items are added at once, the client start more quickly,
otherwise some server have problems. Without an entry in the config-file, are added
at once. The debug info -dbg 2 issues the mode in the Log Viewer.
[opc_<symbolic_servername>] browseOnStart
- Type
- string
- Default
- yes
- Range
- yes|no
[opc_<symbolic_servername>] enableAddrBrowsing
- Type
- string
- Default
- yes
- Range
- yes|no
[opc_<symbolic_servername>] enableCALLR
- Type
- string
- Default
- no
- Range
- yes|no
[opc_<symbolic_servername>] gaBitOnStart
- Type
- string
- Default
- yes
- Range
- yes|no
[opc_<symbolic_servername>] hierarchySeparator
- Type
- string
- Default
- .
[opc_server1]
hierarchySeparator = "/"
in the config file. Default: "."; This entry defines a separator. If this character
is contained in the item name, the item is divided into an additional sub level at
hierarchical browsing., e.g. for Tag22/test results:
Tag22
test
Since dots are contained in the item names of some OPC servers, the config entry
has to be provided with a sign which is not contained in the item name. This has
to be done to present the display of the items correctly.
[opc_<symbolic_servername>] invertPrefix
- Type
- string
- Default
- no
- Range
- yes|no
Example:
[opc_ABB]
nonpermanentKey = "PERMANENT"
invertPrefix = "yes"
[opc_<symbolic_servername>] ioTimeout
- Type
- unsigned
- Default
- 2000 [msec]
- Range
- > 0
[opc_<symbolic_servername>] nonpermanentKey
- Type
- string
[opc_ABB]
nonpermanentKey = "PERMANENT"
invertPrefix = "yes"
[opc_<symbolic_servername>] reconnectOnFailedState
- Type
- bool
- Default
- 1
- Range
- 0|1
[opc_<symbolic_servername>] sendNoValueForQuality
- Type
- string
- Range
- 8 digits
- 1 means: the entry at this point must be 1.
- 0 means: the entry at this point must be 0.
[opc_<symbolic_servername>] setInvalidForConnLoss
- Type
- uint
- Default
- 0
- Range
- 0..2
Caution:
The invalid bits are not set if the OPC client is terminated.
This feature can be activated individually for each server by setting the config
entry
setInvalidForConnLoss = 1
in the config file section of the concerned OPC Server (e.g. [opc_ServerX]).
Default of the config entry is 0, which means that the invalid bit will not be set.
[opc_<symbolic_servername>] vtEmptyArrayRead
- Type
- bool
- Default
- 0
- Range
- 1|0
[opc_<symbolic_servername>] watchdogGroup
- Type
- string int int
- Range
- <watchdog group> <mult: >= 1> <validToReset6gt;
[PMAgent]
Settings for the PM-Add-On.
[PMAgent] defaultLang
- Type
- langString
- Default
- en_US
- Range
- WinCC OA languages
- Unit
- language string
Specifies the language for the PM-Add-On. The default language is "en_US". A fallback mechanism selects another language if the set language is not available e.g. de_CH --> de_AT.
[PMAgent] httpsPort
- Type
- int
- Default
- 3060
- Range
- 3060
[PMAgent] maxBufferSize
- Type
- int
- Default
- 3000
- Range
- 100-6000
Specifies the data transfer between the PM-AGENT and the PM-SERVER.
Generally the size depends on the system used, meaning how many value changes are there, which settings are used (the smoothing, the buffer size of the query and the query interval).
In general the fewer value changes are transferred to PM-SERVER, the less important is the buffer size.
[pmon]
Settings for the Process Monitor (Pmon)
[pmon] aliveSeconds
- Type
- int
- Default
- 30
- Range
- > 0
[pmon] allowSNMP
- Type
- string
- Default
- no
- Range
- yes, no
[pmon] allowSNMPCommands
- Type
- string
- Default
- no
- Range
- yes/no
[pmon] delayStartSeconds
- Type
- int
- Default
- 0
- Range
- >= 0
[pmon] LAProxyPortNr
- Type
- unsigned int
- Default
- 4701
- Range
- 1024 .. 65535 (see RFC 1340, or /etc/services)
[pmon] lmcMaxNumDBLocks
- Type
- int
- Default
- 600
- Range
- Number of DB Files
Specifies the maximum number of RAIMA database files. The entry is only required under Linux if problems with database file switches occur. Set the entry in this case to 1500.
NOTE
Under Linux the lm_ip (Unix Domain Socket lock manager of RaimaDB) can be started with the operating system. The PMON starts the lm_ip with a hardcoded value of maximum 600 DB files. Also Raima tools WCCOAtoolNametoId, WCCOAtoolConvertDb, WCCOAtoolDoCreate, WCCOAtoolSyncTypes and WCCOAtoolBuildIdList will start the lm_ip under Linux.
Change the value of the lmcMaxNumDBLocks entry manually.
Please note that changing this config entry requires not only a restart of your project and the Raima tools, but also a manually stopped lm_ip process on Linux. The process lm_ip can only be stopped when the project and Raima tools are not running. However, this does not apply to SQLite projects and tools, as they are not affected by lm_ip.
[pmon] restartDelaySeconds
- Type
- int
- Default
- 0
- Range
- >= 0
[pmon] restartProjVA
- Type
- string
- Default
- no
- Range
- yes/no
[pmon] sendManagerStateChange
- Type
- string
- Default
- No
- Range
- Yes|No
[pmon] SNMPPortNr
- Type
- unsigned int
- Default
- 4700
- Range
- 1024 .. 65535 (see RFC 1340, or /etc/services)
[pmon] startupTimeoutSeconds
- Type
- int
- Default
- 0
- Range
- >= 0
[pmon] v1ReadCommunity
- Type
- string
- Default
- public
[pmon] v1TrapTarget
- Type
- string
e.g. v1TrapTarget = "192.168.150.29/162"
This entry can be set any times (an own entry for each TrapTarget). All targets that
are specified here receive the traps.
[pmon] v1WriteCommunity
- Type
- string
[pmonWatchdog]
The settings for the pmonWatchdog section start with this keyword.
[pmonWatchdog] monitoredManager
- Type
- string
- Default
- <manager name[,manager number]>
- Range
- manager name[,manager number]
manager number: The second parameter is the manager number. If no number is specified, all managers of the same type (manager name)are monitored.
Monitoring a specific manager including the manager number is only possible if the manager number is specified as a start parameter. This is the number that was used to start the manager in the console. If there are no monitoredManager entries defined, the function is deactivated, even if the timeout is > 0.
Example:
[pmonWatchdog]
waitUntilKill = 300
monitoredManager = "WCCOAvalarch" # Monitor all Archive managers
monitoredManager = "WCCOActrl,5" # Only monitor CTRL manager with number 5.
See the Online help chapter Pmon Watchdog.
[pmonWatchdog] waitUntilKill
- Type
- int
- Default
- 180
- Range
- seconds
[profisafe]
Settings for the PROFIsafe driver.
[profisafe] deviceWatchdog
- Type
- ulong
- Default
- 1000
- Unit
- milliseconds
[profisafe] runSleepTime
- Type
- ulong
- Default
- 10
- Unit
- milliseconds
[profisafe] statisticsRefreshTime
- Type
- ulong
- Default
- 60
- Unit
- seconds
[proxy]
Settings for the WCCILproxy
[proxy] proxyPort
- Type
- int
- Default
- 5678
- Range
- > 0
[proxy] server
- Type
- string
- Default
- derived from various settings
Syntax:
server = "host:port"
e.g.
server = "atpcb2rd:4897" #Data-Manager running on atpcb2rd
server = "atpcb2rd:4998" #Event-Manager running on atpcb2rd
Firewall Feature.
Specifies the servers the WCCILproxy is allowed to establish a connection if requested by the client.
The WCCILproxy closes the connection to the client, if the server requested by the client is not in this list.
This entry can occur multiple times, once for each host/port pair.
[proxy] socketConnectionLimit
- Type
- int
- Default
- 1024
- Range
- 0-8176
This setting limits the maximum number of socket connections as a defensive security measure against high memory usage during potential attacks.
The socket connection limit is only applied if the value is greater than 0.
If the value is 0 or negative, the maximum value of the operating system is used for Linux, and a hardcoded limit of 8176 is used for Windows. The maximum value on Linux is defined by the user limit (ulimit), minus 16 connections. If more than 8208 connections are available to the user, the number is still limited to 8192.
Each manager requires 2 connections (Legacy Project), 8 connections (Standard Project), or 16 connections (Redundant Standard Project).
[redu]
Settings for the Redundancy Manager
[redu] activeChangeInterval
- Type
- int (seconds)
- Default
- 3
- Range
- >= 0
[redu] aliveCheckInterval
- Type
- int (seconds)
- Default
- 10
[redu] aliveInterval
- Type
- int (seconds)
- Default
- 1
[redu] delayChange
- Type
- int
- Default
- 0
- Range
- 0|1
activeChangeInterval > 0, firstActiveChangeInterval = 0, and delayChange = 0
means that the switch takes place immediately but the next switch will never be carried out sooner
than after activeChangeInterval seconds.
activeChangeInterval > 0, firstActiveChangeInterval > 0, and delayChange = 0
means that the switch takes place after firstActiveChangeInterval but the next switch will never be carried out sooner
than after activeChangeInterval seconds.
activeChangeInterval > 0 and delayChange = 1
means that after a change of the error state the Redu manager determines whether the change is really necessary.
If the error state is still worse after activeChangeInterval seconds, the switch takes place. A possible
next switch will take place after this interval again.
This timer does not work for the "manual" switch (.Command.*) - the commands are executed immediately (and
possibly the timer is restarted).
[redu] firstActiveChangeInterval
- Type
- int (seconds)
- Default
- 0
- Range
- >=0
[redu] initPeerTimeout
- Type
- unsigned int (seconds)
- Default
- 60
[redu] linkUpDelayTime
- Type
- int (Sekunden)
- Default
- 0
- Range
- 0 .. maxInt
[redu] managerDP, peerManagerDP
- Type
- string
- Range
- Datapoint of the type _ReduManager
[redu] portNr
- Type
- int
- Default
- 4776
- Range
- 1024 .. 65535 (TCP/IP Ports)
[redu] reduPort
- Type
- uint
- Default
- 4776
- Range
- 1024 .. 65535 (TCP/IP Ports)
[redu] reportAliveTime
- Type
- int
- Default
- 0
- Range
- 0|1
[reporting]
Settings for the Reporting Manager.
[reporting] httpAuth
- Type
- bool
- Default
- 1
- Range
- 0|1
[reporting] httpPort
- Type
- int
[reporting] httpsPort
- Type
- int
- Default
- 443
[reporting] IncNofConnections
- Type
- int
- Range
- NofConnections (see resp. config entry)
[reporting] maxRequestLineCount
- Type
- int
- Default
- 100000
- Range
- 0-1000000
[reporting] MinNofConnections
- Type
- int
[reporting] NofConnections
- Type
- int
- Default
- 5
[reporting] NofThreads
- Type
- int
- Default
- Number of CPU cores x2
- Range
- Number of threads
[reporting] queryRDBdirect
- Type
- bool
- Range
- 0|1
Specifies the mode of the database write queries.
- 0 = queries are performed by messages
- 1 = queries are transmitted directly to the oracle database
In case of rdb projects queryRDBdirect = 1 is used by default.
[reporting] sslCertificate
- Type
- string
- Range
- <server-cert><server-key><CAFile>
- server-cert: Relative path starting from the project directory
- server-key: Relative path of the private key (starting from the project directory)
- CAFile: Relative path of the private key of the server (starting from the project directory)
[reporting] wsdlPath
- Type
- string
- Range
- <path>,<path>/<file name>.wsdl
[rk512]
Settings for the RK512 driver
[rk512] 3964R
- Type
- int
- Default
- 1
- Range
- 0|1
Example:
Protocol 3964 will be used.
3964R = 0
[rk512] baudrate
- Type
- int
- Default
- 9600
- Range
- 2400..9600 (19200)
Example:
Sets the baud rate to 9600 baud.
baudrate = 9600
[rk512] connRetries
- Type
- int
- Default
- 6
- Range
- >= 0
Example:
Sets the number of retries to 8.
connRetries = 8
[rk512] device
- Type
- string string
device = "COM1" "9600,e,8,1" # No handshaking
device = "COM1" "9600,e,8,1,p" # Hardware handshaking
Settings for 9600 baud, even parity, 8 bits, 1 stop bit; p enables handshaking.
[rk512] deviceName
- Type
- string
Example
Assigns the interface with the name /dev/tty00 to the driver.
devicename = "/dev/tty00"
[rk512] drvGQ
- Type
- string
Example:
Every write to _Driver_1.GQ:_original.._value initiates a general query.
drvGQ = "_Driver_1.GQ"
[rk512] drvPollMode
- Type
- string
Example:
If the datapoint is set to 0, the driver no longer polls any datapoints.
drvPollMode = "_Driver_1.PM"
[rk512] drvSQ
- Type
- string
Example:
If a datapoint name is passed in _Driver_1.SQ:_original.._value, the driver performs
a single query for this datapoint.
drvSQ = "_Driver_1.SQ"
[rk512] floatIsIEEE
- Type
- string
- Default
- No
- Range
- Yes|No
[rk512]
floatIsIEEE = "Yes"
[rk512] parity
- Type
- string
- Default
- even
- Range
- even, odd, none
Example:
Sets the parity to odd.
parity = "odd"
[rk512] pollMode
- Type
- bool
- Default
- 1
- Range
- 0|1
Example:
Disables datapoint polling.
pollMode = 0
[rk512] priority
- Type
- string
- Default
- low
- Range
- high|low
Example:
Sets a high priority.
priority = "high"
[rk512] QVZ
- Type
- float
- Default
- 2.0 [sec]
- Range
- > 2.0
Example:
Sets the acknowledgement delay time to 0.55 seconds.
QVZ = 0.55
[rk512] restartFetchOnError
- Type
- string
- Default
- No
- Range
- Yes|No
[rk512]
restartFetchOnError = "yes"
[rk512] restartSendOnError
- Type
- string
- Default
- No
- Range
- Yes|No
[rk512]
restartSendOnError = "yes"
[rk512] rk512DpName
- Type
- string
- Default
- _RK512_<num>
[rk512]
(host1) rk512DpName = "_RK512_<num>"
(host2) rk512DpName = "_RK512_2_<num>"
[rk512] sendRetries
- Type
- int
- Default
- 6
- Range
- 6gt;= 0
Example:
Sets the number of retries to 8.
sendRetries = 8
[rk512] talas
- Type
- string
- Default
- No
- Range
- Yes|No
[rk512] TVZ
- Type
- float
- Default
- 5.0 [sec]
- Range
- > 5.0
Example:
[rk512]
TVZ = 6.5
[rk512] ZVZ
- Type
- float
- Default
- 0.220 [sec]
- Range
- > 0.220
Example:
Sets the character delay time to 0.30 seconds
ZVZ = 0.30
[s7]
Settings for the S7 driver
[s7] AliveInterval
- Type
- unsigned
- Default
- 30
- Range
- 0..65535
[s7] AutoGQ
- Type
- string
- Default
- Y
- Range
- Y/N
[s7] AutoTimeSyncFactor
- Type
- unsigned
- Default
- 0
- Range
- 0..x
[s7] CheckPollReqPending
- Type
- bool
- Default
- 1
- Range
- 0|1
[s7] diagnosticsRefreshTime
- Type
- unsigned
- Default
- 60 [sec]
[s7] HighPrioBlock
- Type
- int
- Default
- -1
- Range
- >-1
[s7] LimitedTSPPAliveCheck
- Type
- string
- Default
- N
- Range
- Y|N
[s7] MaxAGLinkQueueSize
- Type
- int
- Default
- 1
- Range
- 1..32
[s7] MaxGap
- Type
- unsigned
- Default
- 10
- Range
- 1..50
[s7] maxPollBlockSize
- Type
- uint
- Default
- 65535
- Range
- 32..65535
[s7] MaxReadRequestSize
- Type
- int
- Default
- 0
- Range
- 0,1, >50
[s7] MaxRequestQueueSize
- Type
- int
- Default
- 200
- Range
- 0..1000
Note:
The new values are written to DPE in the interval defined by "StatCheckInterval"
config entry.
[s7] MaxTsppAnswerListSize
- Type
- int
- Default
- 200
[s7] MaxTsppRequestQueue
- Type
- unsigned
- Default
- 4
- Range
- 1..64
[s7] MaxTsppVcPerLoop
- Type
- int
- Default
- 1000
[s7] MaxWriteBlockLen
- Type
- int
- Default
- 0
- Range
- 0..240
DB10.DBW0
DB10.DBB3
DB10.DBX4.0
DB10.DBX4.1
DB10.DBX4.2
DB10.DBX4.3
DB10.DBX4.4
DB10.DBX4.5
DB10.DBX4.6
DB10.DBX4.7
are sent as a block, because the addresses are in consecutive order (there is no
hole). If e.g. the last bit is missing only the first 2 addresses are sent as block
and the bits are sent individually, because the last byte is not full. The maximumWriteBlockLen
depends on the used PLC type. If the value is below 240 bytes, you can be sure that
the generated request is not split by the used S7 communication library.
[s7] MaxWriteGroupSize
- Type
- int
- Default
- 16
- Range
- 1..64
[s7] mpiDevice
- Type
- {serial interface} {pc address} {Baudrate}
mpiDevice = <serial interface> <pc address> <baud rate>
The config entry defines the parameters for one serial interface/adapter. To communicate
with a PLC, define the MPI device in the config file as follows:
mpiDevice = "COM1" 15 38400
In this case a Siemens adapter is connected to COM1 and 15 should be used as an MPI
address for the adapter. The entry of the COM port in the parameterization panel
must match the device defined in the config file.
Note:
The MPI address and the PLC address must not equal! Set the MPI address of the adapter.
For example, if the MPI address of the PLC is "5" then it is not allowed to set the
address of the adapter also to "5". So the following config entry is for this example
not allowed:
mpiDevice = "COM1" 5 38400
[s7] onlyActivePolls
- Type
- string
- Default
- N
- Range
- Y/N
[s7] plcCodePage
- Type
- string
- Default
- <langgt;.iso88591
If strings in the PLC are encoded with a specific language encoding, this config entry can be used to define the base encoding for the conversion to UTF-8.
All valid encoding values for this config entry can be found in the file <Install Directory>/nls/lang.dir.
Example
[s7]
plcCodePage = "el_GR.iso88597"
[s7] ReadOpState
- Type
- uint
- Default
- 15
- Range
- >=0
The different states are:
- 0 STOP
- 1 START-UP
- 2 RUN
- 3 UNDEFINED
- 8 RUN SOLO (one PLC is running)
- 9 RUN REDU (both PLCs are running)
- 10 HALT
- 11 CONNECTING
- 12 UPDATING
[s7] ReadPLCTime
- Type
- string
- Default
- N
- Range
- Y/N
[s7] reduModeTSPP
- Type
- bool
- Default
- 0
- Range
- 0|1
[s7] refreshPollBlocksOnUse
- Type
- string
- Default
- N
- Range
- Y|N
[s7] setInvalidForConnLoss
- Type
- uint
- Default
- 1
- Range
- 0 - 2
[s7] StatCheckInterval
- Type
- unsigned
- Default
- 20 [sec]
- Range
- 5..100
[s7] TimeSyncUTC
- Type
- string
- Default
- N
- Range
- Y/N
[s7] UseConnections
- Type
- int
- Default
- 2
- Range
- 1,2,3
[s7] useStringLengthInfo
- Type
- string
- Range
- Y|N
[s7plus]
Settings for the S7Plus driver
[s7plus] certPath
- Type
- string
- Default
- cert
[s7plus] diagnosticsRefreshTime
- Type
- uint
- Default
- 60
[s7plus] maxAlarmQueueSize
- Type
- uint
- Default
- 1024
[s7plus] maxAsyncQueueSize
- Type
- uint
- Default
- 1024
[s7plus] maxBrowseQueueSize
- Type
- uint
- Default
- 10
[s7plus] maxRequestQueueSize
- Type
- uint
- Default
- 1024
[s7plus] maxResponseQueueSize
- Type
- uint
- Default
- 1024
[s7plus] maxSpontQueueSize
- Type
- uint
- Default
- 1024
[s7plus] onlyActivePolls
- Type
- bool
- Default
- 1
- Range
- 0|1
[s7plus] reloadSymbolicOnDemand
- Type
- bool
- Default
- 0
- Range
- 0|1
The config entry defines whether the symbolic addresses are constantly kept in the memory (=0) or only (re-)loaded in case they are actively used (=1). This allows to reduce the used memory of your machine by pruning the unused information of potentially large TIA project export files or online PLC programs. This is especially recommended for low-powered devices with restricted amount of memory.
Following information must be considered when using the config entry: - Configuration changes in address-configs might lead to automatically reloading the complete symbolic information. - Changes on internal DPEs Redu.SwitchTag and Tspp.BufferAddress will not lead to the same reloading but must be triggered via Config.StationName if required.[s7plus] statisticsRefreshTime
- Type
- uint
- Default
- 60
[s7plus] tsppVersion
- Type
- int
- Default
- 1
- Range
- 1,2
[sbus]
Settings for the S-Bus driver
[sbus] AliveInterval
- Type
- uint
- Default
- 30
[sbus] LocalSBusPort
- Type
- uint
- Default
- 3002
[sbus] MaxGap
- Type
- uint
- Default
- 1
[sbus] MaxNumOfNakTelegrans
- Type
- uint
- Default
- 150
[sbus] MaxTelegramQueueSize
- Type
- ulong
- Default
- 500000
[sbus] PlcRecvBufferSize
- Type
- int
- Default
- 3
[sbus] StableRead
- Type
- uint
- Default
- 0
- Range
- 0|1
[sbus] StableWrite
- Type
- uint
- Default
- 1
- Range
- 0|1
[secs]
Settings for the SECS driver.
[secs] alarmFallbackAddress
- Type
- string
- Default
- ALID_A.0
[secs] maxStringLength
- Type
- uint
- Default
- 1000
[secs] sendAutoAck
- Type
- bool
- Default
- 1
- Range
- 0|1
[sinaut]
Settings for the SINAUT driver
[sinaut] aliveInterval
- Type
- uint
- Default
- 30
- Range
- 10-32664
[sinaut] aliveReconnectInterval
- Type
- uint
- Default
- 10
- Range
- 10-32664
[sinaut] aliveRequestBeforeTimeout
- Type
- uint
- Default
- 10
- Range
- 0-(aliveInterval-1)
[sinaut] doGQafterReduSwitch
- Type
- bool
- Default
- 0
- Range
- 0|1
[sinaut] maxAGLinkQueueSize
- Type
- int
- Default
- 80
- Range
- MAX_INT
[sinaut] maxBReceiveAnswerListSize
- Type
- int
- Default
- 200
- Range
- MAX_INT
[sinaut] maxBReceiveRequestQueue
- Type
- uint
- Default
- 40
- Range
- 1-64
[sinaut] maxBReceiveVcPerLoop
- Type
- int
- Default
- 1000
- Range
- MAX_INT
[sinaut] maxRequestQueueSize
- Type
- int
- Default
- 40
- Range
- MAX_INT
[sinaut] onlyActiveIsConnected
- Type
- bool
- Default
- 1
- Range
- 0|1
[sinaut] sendTimeOnWrite
- Type
- bool
- Default
- 1
- Range
- 0|1
[sinaut] setInvalidOnConnLoss
- Type
- uint
- Default
- 0
- Range
- 0 - 1
[sinaut] timeSyncInterval
- Type
- uint
- Default
- 300
- Range
- 0-32664
[sinaut] timeSyncMode
- Type
- uint
- Default
- 0
- Range
- 0-2
- 0 - manually
- 1 - on request via ORG 282
- 2 - automatically every timeSyncInterval-seconds
[sinaut] userbitHasTime
- Type
- uint
- Default
- 0
- Range
- 0-32
[sinaut] userbitTimeInvalid
- Type
- uint
- Default
- 0
- Range
- 0-32
[sinaut] useTimeStampOnRead
- Type
- bool
- Default
- 1
- Range
- 0|1
[snmpa]
Settings for the SNMP Live Agent
[snmpa] enableUserTraps
- Type
- string
- Default
- Yes
- Range
- Yes/No
[snmpa] PmonPortNr
- Type
- int
- Default
- 4700
- Range
- 1 .. 65535
[snmpa] SNMPPortNr
- Type
- int
- Default
- 4701
- Range
- 1 .. 65535
[snmpa] v1ReadCommunity
- Type
- string
- Default
- public
[snmpa] v1WriteCommunity
- Type
- string
- Default
- admin
[snmpdrv]
Settings for the SNMP manager
[snmpdrv] agentAliveTimeout
- Type
- unsigned int
- Default
- 40 [sec]
[snmpdrv] agentConnectOID
- Type
- string
- Default
- 1.3.6.1.2.1.1.1.0 (system.sysDescr)
[snmpdrv] agentConnectTimeout
- Type
- int
- Default
- 60
[snmpdrv] agentDPName
- Type
- string
- Default
- SNMPAgent
[snmpdrv] agentDPTemplate
- Type
- string
- Default
- _SNMPAgent
[snmpdrv] allowAgentPort162
- Type
- bool
- Default
- 0
- Range
- 0|1
[snmpdrv] arrayQueryErrorHandlingMode
- Type
- bool
- Default
- 0
[snmpdrv] arrayQueryErrorValueInteger32
- Type
- int
- Default
- 2147483647
[snmpdrv] arrayQueryErrorValueIPadress
- Type
- string
- Default
- 255.255.255.255
[snmpdrv] arrayQueryErrorValueMACadress
- Type
- string
- Default
- FF:FF:FF:FF:FF:FF
[snmpdrv] arrayQueryErrorValueOctet
- Type
- string
- Default
- FFFFFFFF
[snmpdrv] arrayQueryErrorValueOID
- Type
- string
- Default
- 1.0.4294967295
[snmpdrv] arrayQueryErrorValueUnsigned32
- Type
- uint
- Default
- 4294967295
[snmpdrv] arrayQueryErrorValueUnsigned64
- Type
- uint64
- Default
- 18446744073709551615
[snmpdrv] arrayQueryErrorValueVisibleString
- Type
- string
- Default
- <<ERROR>>
[snmpdrv] commandUserByte
- Type
- uint
- Default
- 0
- Range
- 0, 1-4
[snmpdrv] ctrlDPName
- Type
- string
- Default
- SNMPManager
[snmpdrv] delayBetweenAgents
- Type
- int
- Default
- 0
- Range
- >=0
[snmpdrv] doGQOnStart
- Type
- string
- Default
- Yes
- Range
- Yes|No
[snmpdrv] enableTraps
- Type
- string
- Default
- Yes
- Range
- Yes|No
[snmpdrv] enableTrapsFromStandbyAgent
- Type
- bool
- Default
- 0
- Range
- 0|1
[snmpdrv] getBulkMaxRepetitions
- Type
- uint
- Default
- 10
- Range
- >=0
[snmpdrv] ignoreGQTrapErrors
- Type
- string
- Default
- No
- Range
- Yes|No
[snmpdrv] mapInvalidData
- Type
- string
- Default
- Yes
- Range
- Yes|No
[snmpdrv] maxNumOfVbsInBulkQuery
- Type
- uint
- Default
- 1000
- Range
- >=0
[snmpdrv] maxTrapsBufferSize
- Type
- uint
- Default
- 30000
- Range
- >=0
[snmpdrv] maxTrapsPerSecond
- Type
- uint
- Default
- 50
- Range
- >= 0
[snmpdrv] numberOfAgentsWithDelay
- Type
- uint
- Default
- 1
- Range
- 0 - 500
[snmpdrv] onlyActivePolls
- Type
- string
- Default
- No
- Range
- Yes|No
[snmpdrv] reportHomelessTraps
- Type
- int
- Default
- 0
- Range
- 0..2
[snmpdrv] setTimeoutOnV3USMerrors
- Type
- string
- Default
- no
[snmpdrv] snmpDir
- Type
- string
- Default
- /<Projektverzeichnis>/data
[snmpdrv] trapPayloadOctetStringHex
- Type
- bool
- Default
- 0
- Range
- 0|1
[snmpdrv] trapReceptionPort
- Type
- int
- Default
- 162
[snmpdrv] useReduPostfix
- Type
- bool
- Default
- 0
This config entry resets the behaviour of the SNMP driver in a redundant system to the behaviour before 3.20, meaning that no "_2" datapoints are created.
It should be used only if it is really necessary, because in that case the fwdDpType config.redu entries related to the above DPTs must be removed to reach exactly the old behavior.
[snmpdrv] v1TrapUseSourceAddress
- Type
- string
- Default
- no
- Range
- yes|no
This option controls how the source IP address is determined for received SNMPv1 traps.
- When set to "yes", the IP address is derived from the configured connection agent.
- When set to "no", the IP address is taken directly from the SNMPv1 trap PDU.
[snmpdrv] v3agentDPTemplate
- Type
- string
- Default
- _SNMPV3Entity
[snmpdrv] v3entityDPName
- Type
- string
- Default
- SNMPV3Entity
[snmpdrv] writeToStandbyAgent
- Type
- bool
- Default
- 0
- Range
- 0|1
[split]
Settings for the split mode manager
[split] connectDpGroup
- Type
- string
- Default
- SplitConnect / SplitConnect_2
[split] copyDpGroup
- Type
- string
- Default
- 'SplitGet'|'SplitGet_2'
[split] splitPort
- Type
- unsigned int
- Default
- 4778
- Range
- 1024..65535
[ssi]
Settings for the SSI driver
[ssi] aliveInstrNr
- Type
- unsigned
- Default
- 0
- Range
- >=0
Example:
(0) aliveInstrNr = 0
(1) aliveInstrNr = 1
The command numbers of the alive messages equal the replica numbers in this case.
[ssi] aliveName
- Type
- string
- Default
- _SSI_Alive_
[ssi] connection
- Type
- string int int
Syntax:
connection = <hostname> <portnumber> <time>
- <hostname> - The host name of the communication partner (this must include the domain name).
- <portnumber> - The port number for the connection which must be set to 0 if the driver is operating as a server (in this case the tcpServerPort statement must appear in the configuration file).
- <time> - The time which specifies for client connections, how much time should elapse (in seconds) before attempting to reconnect after a connection has failed.
Example:
connection = "mymachine.co.at" 2073 6
This driver communicates with the pre-stored component having the internet address
"mymachine.co.at". The driver is acting here as a client. Six seconds after detecting
a connection failure, it tries to reconnect to the pre-stored component.
Example:
tcpServerPort = 2073
connection = "othermachine.co.at" 0 10
In this case the driver is acting as a server. There must be a tcpServerPort entry
in the configuration file (see above) specifying the port number from which the driver
provides its services. The last parameter (the reconnect time) has no meaning in
this case.
[ssi] dadfName
- Type
- string
- Default
- _SSI_DaDf_Table
[ssi] defaultImpulseTime
- Type
- int
- Default
- 8
- Range
- 0 - 255
- Time (Bit 0 and 1) 0 for 50 ms, 1 for 500 ms, 10 for 1 s, 11 for 10 s
- Factor (bits 2-6) 1 to 31: switching time = time x factor
- OW (Bit 7) 1... overwrites command already running
Example:
defaultImpulseTime = 4
Sets the default value for the pulse commands switching period to 50 ms.
Example:
defaultImpulseTime = 134
Sets the default value for the pulse commands switching period to one second with
overwrite bit set.
[ssi] drvSmoothMode
- Type
- int
- Range
- 0,1,2
- 0 - Filtering (smoothing ) is always carried out.
- 1 - Only spontaneous value changes are filtered (smoothed).
- 2 - Filtering (smoothing) is never carried out.
[ssi] hostId
- Type
- int int
[ssi] impztName
- Type
- string
- Default
- _SSI_Impulse_Times
[ssi] keet
- Type
- int int
[ssi] keetConnection
- Type
- int int string int int
- Region number for the connection
- Component number for the connection
- IIP name of the partner
- Port number (0 if the driver is acting as a server), normally 2073
- Timeout for a reconnect
Example:
[ssi]
keetConnections = 1 101 "SSIHost" 1723 10
[ssi] mapComponent
- Type
- unsigned unsigned
- Range
- 0..255, 0..255
Example:
mapComponent = 2 22
If the driver receives a message with the component 2, then at first it is searching
for a peripheral address for this component. If the search was not successful, it
is searching one for the component 22.
[ssi] mapRegion
- Type
- unsigned unsigned
- Range
- 0..255, 0..255
[ssi] mapUserBit
- Type
- int string
- Range
- 1 - 8; TestMode, Spontan, NotSorted, NEZ, Available, Ersatzwert, HighPriority, AbschaltungManuell
- 'TestMode'
- 'Spontaneous'
- 'NotSorted'
- 'NEZ'
- 'Available'
- 'Replacement value'
- 'HighPriority'
- 'Manual disable'
[ssi] reachableComponent
- Type
- int int
[ssi] redundancyConnection
- Type
- string int int
Example:
connection = "firstmachine.co.at" 2073 10
redundancyConnection = "secondmachine.co.at" 2074 10
The driver should establish two connections (both as clients). All items of data
coming from the two redundant KE/ET devices are processed by the driver (and forwarded
to the Event Manager unless filtered). Normally, however, only the active device
of the two KE/ET components actually sends useful data (alive messages are the exception,
which are only used for monitoring the connection).
[ssi] redundancyKeet
- Type
- int int
[ssi] selectTime
- Type
- int int
- Range
- >=0; >=0
[ssi] ssiMaxLength
- Type
- int
- Default
- 1024
- Range
- >0
[ssi] subAdrInUse
- Type
- string
- Default
- No
- Range
- Yes|No
[ssi] sysAllName
- Type
- string
- Default
- _SSI_ALL_
[ssi] sysMsgName
- Type
- string
- Default
- _SSI_SYS_
[ssi] tcpServerPort
- Type
- int
- Range
- >0
[stdlib]
Settings for the Standard Object Library (Stdlib).
[stdlib] directInputIntoTextFields
- Type
- bool
- Default
- 0
- Range
- 0|1
[stdlib] faceplateModal
- Type
- bool
- Default
- 0
- Range
- 0|1
[stdlib] infoAreaMax
- Type
- int
- Default
- 6
- Range
- >=0
[stdlib] useNotes
- Type
- bool
- Default
- 1
- Range
- 0|1
[TLSGateway]
Settings for the TLS gateway. The TLS standard is only used in the German-speaking part of Europe. Therefore the full documentation is only available in German. Please contact an ETM key account manager for further information.
[TLSGateway] EAKDataPath
- Type
- string
[TLSGateway] FG1TypeName
- Type
- string
- Default
- _TLS_FG1
[TLSGateway] FG254TypeName
- Type
- string
- Default
- _TLS_FG254
[TLSGateway] FG3TypeName
- Type
- string
- Default
- _TLS_FG3
[TLSGateway] FG4TypeName
- Type
- string
- Default
- _TLS_FG4
[TLSGateway] FG6TypeName
- Type
- string
- Default
- _TLS_FG6
[TLSGateway] TLSConfigFileName
- Type
- string
- Default
- tlsconfig.txt
[TLSGateway] tlsgwCertificate
- Type
- string
[TLSGateway] tlsgwCipherSuiteList
- Type
- string
- Default
- <[all sections] cipherSuiteList>>
[TLSGateway] tlsgwPrivateKey
- Type
- string
[TLSGateway] tlsgwRootCACertificate
- Type
- string
[TLSGateway] tlsgwSecurityMode
- Type
- bool
- Default
- 1
- Range
- 0|1
The entry defines, whether secure communication is used for the TLS-Gateway. If not all required encryption parameters are definied within the config file, the TLS Gateway will stop. To disable the secure communication, this entry must explicitly set to 0.
[TLSGateway] tlsgwVerifyTime
- Type
- bool
- Default
- 1
- Range
- 0|1
[TLSGateway] TLSLogFileName
- Type
- string
- Default
- TLSLogFile.log
[TLSGateway] TLSLoggerFlags
- Type
- unsigned
- Default
- 10
- Range
- 0..3600 (s)
[TLSGateway] tslgwCRLfile
- Type
- string
[ui]
Settings for the User Interface
[ui] acknowledgeFunction
- Type
- string
- Range
- >functionName<
void functionName(dyn_string datapts, int type, int &returnValue);
The third parameter defines whether the acknowledge script will be executed (1- acknowledge, 0 do not acknowledge). It is used as a replacement for a return value, thus allowing a dpSetWait().
[ui] activateCursor
- Type
- string
- Default
- (PointingHandCursor)
Note the following restriction:
Valid cursor sizes depend on the display hardware (or the underlying window system). We recommend using 32x32 cursors, because this size is supported on all platforms. Some platforms also support 16x16, 48x48 and 64x64 cursors.[ui] activeColorScheme
- Type
- string
[ui] activeIconTheme
- Type
- string
Defines the active icon theme for the started UI manager, e.g. "themes/dark"
During runtime this can be changed with the CTRL function setActiveIconTheme().
When a new project is created with the old IconTheme this config entry is added as activeIconTheme = "".
When the new Icon Theme is used, this entry is not added.
A custom Icon Theme is set with e.g.: activeIconTheme = "ownTheme/...".
[ui] aesExtendedFilter
- Type
- int
- Default
- 0
- Range
- 0 | 1 | 2 |3
Enables the "Extended Filter" functionality of the alert and event panel. The extended filter allows using own filter options for the alert and event panel - see chapter Extended Filter.
The config entry can be set to the following values:
- 0 = disabled (default).
- 1 = the extended filter is used for the alert panel.
- 2 = the extended filter is used for the event screen.
- 3 = the extended filter is used for the event and the alert panel.
[ui] aesRowMultipleSelection
- Type
- bool
- Default
- 0
- Range
- 0|1
The config entry defines whether several rows can be selected within the alarm and event screen and whether the pending alarms can then be acknowledged collectively.
[ui] aesShowDistDisconnections
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] allowULCAnimation
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] animationTimerInterval
- Type
- int (ms)
- Default
- 16
[ui] applicationFont
- Type
- string
[ui] arrowFocusThreshold
- Type
- int
- Default
- 50
[ui] arrowsAsTab
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] autoDownscaleThreshold
- Type
- float
- Default
- 2.0
- Range
- >= 1
[ui] autoUpdateDir
- Type
- string
- /pictures
- /panels
- /images
- /colorDB
- /xml
- /nls
- /bin
- /data
- /scripts/libs
If other sub directories are specified, the HTTP server answers with "not found".
Example:
autoUpdateDir = "panels/myTest"
autoUpdateDir = "panels/myTest2"
[ui] bmpTransparentColor
- Type
- string
[ui]
bmpTransparentColor = "{58,110,165}"
Note that the color string has to be exactly the color of a bitmap that you want to present transparent. With the entry
bmpTransparentColor = "{58,110,165}" all bitmaps which contain the color {58,110,165} are presented transparently.
The exact color of a bitmap can be found via a the grab color of the graphics editor. Note that if you add the config
entry to the config file first after adding the bitmaps into the GEDI you have to add the bitmaps again so that the
color is presented transparent.
[ui] cacheTimeoutSecs
- Type
- int (seconds)
- Default
- 300
- Range
- >= 0
[ui] canvasBkgnd
- Type
- string (color)
- Default
- _3DFace
canvasBkgnd = "[0, 0, 100]"
[ui] checkADAuthIntervall
- Type
- int (min)
- Default
- 60
- Range
- >= 60 | 0
[ui] checkChildPanelPos
- Type
- int
- Default
- 1
- Range
- 0..3
- 0: No restriction
- 1: restriction to the (virtual) desktop size
- 2: restriction to the window of the parent rootpanel
- 3: restriction to the visible area of the parent rootpanel
[ui] checkPopupPos
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] childSystemMenu
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] childTitleBar
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] clipPrimitiveText
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] clockExClientEdge
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] compatAxArgumentsByValue
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatDisabledTextBackground
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatDisabledTextColor
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatDisableManagedByLayoutCheck
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatIgnoreTextScale
- Type
- bool
- Default
- 0
- Range
- 0|1
Limitations:
- The config entry affects the presentation at runtime.
- The use of this config entry is not supported in GEDI.
- When using initialZoomFactor, display errors occur.
[ui] compatLegacyPainting
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatPanelIdAsTitle
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] compatPanelUpscaleOnDesktop
- Type
- bool
- Default
- 1
- Range
- 0|1
The config entry "compatPanelUpscaleOnDesktop" can be used to disable panels automatic upscaling in the modules. The config entry affects only Desktop Ui and has no effect on the Mobile Ui.
If set to 0, then the panels upscaling is disabled in the modules.
[ui] confirmCursor
- Type
- string
- Default
- (UpArrowCursor)
Note the following restriction:
Valid cursor sizes depend on the display hardware (or the underlying window system). We recommend using 32x32 cursors, because this size is supported on all platforms. Some platforms also support 16x16, 48x48 and 64x64 cursors.[ui] connectedShapesColor
- Type
- string
- Default
- {255,0,0}
- Range
- RGB definition only
[ui] connectedShapesTimeOut
- Type
- int (ms)
- Default
- 2000
[ui] ctrlDLL
- Type
- string
Note: It is recommended to load a CtrlExtention DLL directly from the Ctrl script using the #uses statement.
[ui] defaultColorDbFileName
- Type
- string
- Default
- colorDB
[ui] defaultFont
- Type
- string (font)
[ui] defaultLayoutBottomMargin
- Type
- int
- Default
- from widget style
- Range
- >= 0
[ui] defaultLayoutLeftMargin
- Type
- int
- Default
- from widget style
- Range
- >= 0
[ui] defaultLayoutRightMargin
- Type
- int
- Default
- from widget style
- Range
- >= 0
[ui] defaultLayoutSpacing
- Type
- int
- Default
- from widget style
- Range
- >= 0
[ui] defaultLayoutTopMargin
- Type
- int
- Default
- from widget style
- Range
- >= 0
[ui] defaultPanelFormat
- Type
- string
- Default
- PNL
- Range
- PNL|XML
[ui] defaultResolution
- Type
- integer
- Default
- 300
[ui] desktopUiKeepAlive
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] downscaleOversizedPanel
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] editShowSelection
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] fatalDialogSeconds
- Type
- int
- Default
- 120 (sec)
- Range
- >= 0
A value of 0 disables the dialog completely. On fatal errors no dialog will be shown, and the manager terminates silently.
[ui] focusColor
- Type
- string (color)
- Default
- [60,60,60]
- Range
- RGB definition only
[ui] focusLineType
- Type
- string (lineType)
- Default
- [solid,oneColor,JointMiter,CapButt,1]
[ui] forcedSourceDPI
- Type
- int
- Default
- -1
[ui] horizontalFontHinting
- Type
- bool
- Default
- 1
- Range
- 0|1
Specifies whether horizontal hinting is used when drawing text in panels. If set to 1 (default) and the operating system supports it, spacing between single characters is adjusted to improve readability. Using this optimization, it can happen that the width of a text on a panel doesn't change proportionally with its height when zooming or using displays with different scaling. Texts which had the same width on one screen (or zoom factor) can have different widths on a different screen (or zoom factor).
If set to 0, this optimization is deactivated, if possible (not all operating systems support this). Now the proportion between text width and height is preserved as well as possible, but the width of existing texts might change.
[ui] httpProxy
- Type
- string (url)
Syntax: http://user:password@proxy.server.com:80
User and password specifications are optional.[ui] httpServer
- Type
- string (url)
Allows the definition of an HTTP Server, which is used when using the WebView EWO loadSnippet() function or the global function getConfigActiveHttpServerUrl()
Syntax: http://user:password@my.server.com:80
User, password and port specifications are optional.
This config entry can only be used once in the config file.
This config entry must be used when SSA is activated.
When a redundant server is used with SSA, it is sufficient to set this entry to one of the redundant hosts. The hostname in the URL is changed to point to the active server.
[ui] initialZoomFactor
- Type
- float
- Default
- 1
NOTE: With a definition of an "initialZoomFactor" the Vision opens the module in original size (respectively as defined in ModuleOn(..)) and zooms afterwards.
[ui] inputRecorderColor
- Type
- string (color)
- Default
- {255,0,0}
- Range
- RGB definition only
[ui] inputRecorderLineType
- Type
- string (lineType)
- Default
- [solid,oneColor,JointMiter,CapButt,4]
[ui] loginPanel
- Type
- string
- Default
- vision/login.pnl
- Range
- vision/login.pnl vision/loginUserdefined.pnl
Specifies the relative path for the login panel.
You can use the WinCC OA standard Login panel "vision/login.pnl" or the user-defined Login panel "loginUserdefined.pnl".
For more information on the user-defined login panel, see chapter user-defined login.
[ui] loginPanelLocal
- Type
- string
- Default
- login_Standard.pnl
- Range
- panel
[ui] loginPanelServer
- Type
- string
- Default
- login_Server.pnl
- Range
- panel
[ui] maxZoomFactor
- Type
- float
- Default
- 4.0
- Range
- > 0
[ui] middleMousePanning
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] minZoomFactor
- Type
- float
- Default
- 0.5
- Range
- > 0
[ui] modifyGroups
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] numPanelBakFiles
- Type
- integer
- Default
- 1
[ui] numRecentPanels
- Type
- integer
- Default
- 10
[ui] nvIconBarOn
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] nvMenuBarOn
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] panelCacheSize
- Type
- int
- Default
- -1 (unlimited)
- Range
- 0 .. x
- x (x unequal to 0)... cache all panels (except the panels for which the property "Keep in memory" was set to FALSE in the property sheet.)
- 0 ... do not cache panels (of the whole project). No cache although the property "Keep in memory" would be set to TRUE in the property sheet.
[ui] panelRefCacheOn
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] panelVersion
- Type
- integer
- Default
- -1
- Range
- 1 .. current panel version
[ui] panningCursor
- Type
- string
- Default
- (SizeAllCursor)
Note the following restriction:
Valid cursor sizes depend on the display hardware (or the underlying window system). We recommend using 32x32 cursors, because this size is supported on all platforms. Some platforms also support 16x16, 48x48 and 64x64 cursors.[ui] pickRange
- Type
- integer
- Default
- 3
- Range
- 1..1000
[ui] pixmapEditor
- Type
- string
- Default
- X11: kolourpaint, Windows: mspaint.exe
[ui] projPanelsObjectsFilter
- Type
- string (project path) string (pattern)
- Default
- *
Example: projPanelsObjectsFilter = "/home/projects/myProject" "*test*"
[ui] queryRDBdirect
- Type
- bool
- Default
- 0
- Range
- 0|1
Indicates the mode of database read queries:
- 0 = Standard CTRL read functions (dpGet...()) via the WinCC OA Event Manager and the WinCC OA Data Manager.
- 1 = The standard CTRL read functions (dpGet...()) are redirected to directly contact the database server.
Can be used in [ui] and [ctrl] sections.
CtrlDLL = "CtrlRDBArchive"
CtrlDLL = "CtrlRDBCompr"
CAUTION: If you use queryRDBdirect = 1 and query DPEs using the event screen, enter the DPEs or *.* for the query. Otherwise the event screen does not show the DPEs.
[ui] refuseCNS
- Type
- bool
- Default
- 0
- Range
- 0|1
Specifies if a manager shall hold CNS data of the identification in memory. CNS data is still tranferred with the identification but the manager discards this data.
[ui] restoreFileSelectorGeometry
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] scalePanelsDPIDeadband
- Type
- float
- Default
- 0.3
- Range
- >= 0.0
[ui] scalePanelsPerPhysicalDPI
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] scriptEditorIgnoreLibs
- Type
- string list
- Default
- "~*" "*~" ".*" "*.bak"
[ui] scriptEditorParseLibs
- Type
- string list
- Default
- *
Example: scriptEditorParseLibs = "*.ctl" "*.myOldLib"
This config entry can be given multiple times. All entries will be added to one list. The pattern matching is done according to the CTRL function patternMatch(), whereby all checked pathes are relative to the scripts/libs/ directory (e.g. "aes.ctl" or "classes/test.ctl") and the path delimiter is always the Unix "/" path delimiter.[ui] sendModuleFocusDp
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] showActiveShapes
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] showInputFocus
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] showMaximizeButton
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] silentPrintWithBorder
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] soundClick
- Type
- string
- Range
- *.wav
[ui] soundDblClick
- Type
- string
- Range
- *.wav
[ui] soundRightClick
- Type
- string
[ui] startCloseScriptsOnQuit
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] strictAddressing
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] subprojectsWritable
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] touchDetectionDistance
- Type
- int
- Default
- 8
- Range
- >0
[ui] touchDetectionTimeout
- Type
- int
- Default
- 200
- Range
- >=0
[ui] trendEnableCurveRulers
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] trendEnableToolTips
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] trendGetDataTimeout
- Type
- int
- Default
- 500
- Range
- >=0
[ui] trendHorizontalScaleText
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] trendInvalidColor
- Type
- string (color)
- Default
- magenta
[ui] trendInvalidFillType
- Type
- string (fillType)
- Default
- [hatch,[cross,10,left]]
[ui] trendInvalidLineType
- Type
- string (lineType)
- Default
- [dotted,oneColor,JointMiter,CapButt,0]
[ui] trendLegendStyle
- Type
- int
- Default
- 1
- Range
- 0|1
- 0 = show curve sample and curve name
- 1 = show no curve sample; show curve name in curve color and curve value
[ui] trendPseudoLineFillLikeCurve
- Type
- bool
- Default
- 0
[ui] trendPseudoLineStyleLikeCurve
- Type
- bool
- Default
- 0
[ui] trendRulerColor
- Type
- string (color)
- Default
- {0,0,0}
[ui] trendRulerLineType
- Type
- string (lineType)
- Default
- [solid,oneColor,JointMiter,CapButt,0]
[ui] trendStatusPattern
- Type
- string (pattern) string (color) string (lineType) string (fillType) [string (msgCatKey) [string (icon)]]
- Default
- "_invalid" "magenta" "[dotted,oneColor,JointMiter,CapButt,0]" "[hatch,[cross,10,left]]"
'attribute[=0|1][,...]'
This means you can define an arbitrary number of attributes whereby all definitions in a pattern must match that a rule can be used.
Example:
- _invalid ... The status _invalid must be true.
- _invalid=1 ... The status _invalid must be true.
- _invalid=0 ... The status _invalid must be false
- _invalid=0, _userbit1=1 ... The status _invalid must be false and the status _userbit1 must be true.
- _userbit1=0, _userbit2=1 ... The status _userbit1 must be false and the status _userbit2 must be true.
By default the trend function draws invalid values of a curve dotted and purple. This type of displaying can be deactivated by setting the following config entry:
trendStatusPattern = "_invalid=1,_invalid=0" "" "" ""
The entry 'msgCatKey' defines a key for the message catalog "quality.cat" which can be created in the project. This message catalog holds a short text for each defined key, which will be displayed in the trend ruler value window if the status of a value on a curve for the currently selected timestamp matches this 'pattern'.
The entry 'icon' defines a relative pathname to an icon file below the pictures directory, which will be displayed as marker on the trend curve when this pattern matches.
[ui] useElemNameForReadRequest
- Type
- int
- Default
- 1
- Range
- 0|1
[ui] useExtendedAlarmHandling
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] useISOTimeformat
- Type
- bool
- Default
- 1
- Range
- 0|1
It specifies whether the ISO time format (useISOTimeformat= 1) should be used when creating dpQueries.
This config entry is introduced to maintain backward compatibility with older systems in distributed environments.
[ui] useLocalIdentification
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] userDefinedCatalog
- Type
- string
- Default
- catalog path
[ui] usesTouchScreen
- Type
- bool
- Default
- 0
- Range
- 0|1
[ui] useStylesheets
- Type
- bool
- Default
- 1
- Range
- 0|1
[ui] versionControl
- Type
- string
- Range
- >VCS name<
[ui] versionControlDiff
- Type
- string
- Range
- >path</>Diff tool name<
[ui] visionResizeMode
- Type
- string
- Default
- Scale
- Range
- Zoom, Scale, None, FitSmallPanel, FitToModule
- "Scale" - You can resize the module freely. The panel scales and a scrollbar will be shown at the shorter module side.
- "Zoom" - You can resize the module freely. The panel size will not be changed. You can change the size of the panel only by using the zoom functions (CONTROL function ZoomModule(), the toolbar options such as Zoom in and out of the module VISION or the zoom navigator).
- "None" - The module will be adapted to the panel size and cannot be resized.
- "FitSmallPanel" - The size of the module will not be adapted. The panel is opened in the original size. Scrollbars are used. The panel size will not be changed when the module size is changed manually.
- "FitToModule" - You can resize the module freely. The panel scales but in a way that scrollbars will never appear. The whole panel will always be completely visible.
[ui] visionScreenMode
- Type
- string
- Default
- all
- Range
- noTitleBar, noMenu, all
- "noTitleBar" ... title bar is not shown (full-screen mode)
- "noMenu" ... title bar is shown but without Minimize, Maximize and Close buttons.
- "all" ... title bar is shown with all its standard buttons
[ui] vtMixComprAndCurrentValues
- Type
- bool
- Default
- 1
- Range
- 0|1
1 = Default. The curve shows mixed values. After the last compressed value (these are only shown in minute cycles, hour cycles, etc.) the current value is drawn.
0 = The curve shows compressed values only. Nothing is drawn between the cycles (not even the actual value).
[ui] wmfWinPainter
- Type
- bool
- Default
- 1
- Range
- 0|1
The advantage of the Windows native functions is the 100% correct rendering of all WMF and EMF images.
The advantage of the WinCC OA own implementation is the fast speed and lesser memory consumption. Although not all WMF rendering operations are fully supported or might not be rendered correctly. Also, the EMF rendering is only implemented partially.
Note: SVG as an official standardized vector format shall be used instead of the Microsoft proprietary formats WMF/EMF/EMF+
[ui] xpmTransparentColor
- Type
- string
- Default
- _3DFace
- Range
- color string
NOTE: For true transparency an image format should be used, which supports transparency, like PNG or GIF
[ulcUX]
Settings for the ULC UX client.
[ulcUX] autoReconnectOnShutdown
- Type
- int
- Default
- 0
- Range
- 0|1
In the event of a planned project or HTTP-Server shutdown, this is considered a normal scenario. The HTTP-Server will terminate gracefully, notifying ULC UX client of the shutdown. Consequently, ULC UX client will display a “disconnected” message and will not automatically reconnect to another HTTP-Server. Due to security reasons, the browser session will be terminated in such cases.
To override this behavior, set this configuration entry to 1. In the case of a normal scenario (e.g. planned HTTP-Server shutdown) the ULC UX client will also perform a reconnect to another HTTP-server, instead of terminating the session.
In the case of an unexpected HTTP-Server crash or network disconnection, ULC UX clients will always automatically reconnect to the next available HTTP-Server as per the default behavior. Therefore, the config entry has no impact on it.
[ulcUX] dashboardUiArguments
- Type
- string
- Default
- -p vision/login.pnl -centered -iconBar -menuBar
[ulcUX] reconnectCount
- Type
- int
- Default
- 2
- Range
- >= -1
[valarch]
Settings for the Value Archive
[valarch] deleteNotArchivedFileSets
- Type
- bool
- Default
- 1
- Range
- 0|1
- 0 = archive sets will not be deleted if they have not been backed up.
- 1 = archive sets will also be deleted when they have not been backed up.
[valarch] dispatchTimeout
- Type
- int
- Default
- 20
- Range
- Milliseconds
For single core computers the timeout can be changed to, for example, 500 milliseconds.
[valarch] exclusiveReadThreadsForDM
- Type
- int
- Default
- 1
- Range
- 0..3
[valarch] maxMemMappings
- Type
- short
- Default
- 30
- Range
- 15 .. 99 (wird nicht abgeprüft)
[valarch] maxNumberOfFilesToBackup
- Type
- unsigned
- Default
- 5
- Range
- 3..25
[valarch] maxNumberOfFilesToCompress
- Type
- short
- Default
- 5
- Range
- 3 .. 25
[valarch] maxNumberOfFilesToDelete
- Type
- short
- Default
- 5
- Range
- 3 .. 25
[valarch] maxNumberOfOpenFileSets
- Type
- uint
- Default
- 100
- Range
- 10..500
[valarch] maxNumberOfOpenFileSetsTolerance
- Type
- uint
- Default
- 10
- Range
- 0 .. 500
[valarch] maxNumberOfReadThreads
- Type
- int
- Default
- 3
- Range
- 1..99
[valarch] maxReadQueueSize
- Type
- uint
- Default
- 128
WCCOAvalarch (<num>), <TIMESTAMP>, SYS, SEVERE, 0, , ManagerIF, Can't insert request to queue
[valarch] maxWaitForWrites
- Type
- int
- Default
- 0
- Range
- 0
[valarch] mergeTimeList
- Type
- bool
- Default
- 0
- Range
- 0|1
[valarch] queryMaxValues
- Type
- ulong
- Default
- 100000
- Range
- >=0
[valarch] queryTimeout
- Type
- unsigned
- Default
- 0
- Range
- >=0
[valarch] readThreadsPreferringOleDb
- Type
- int
- Default
- 1
- Range
- 0..3
[valarch] refuseCNS
- Type
- bool
- Default
- 1
- Range
- 0|1
Specifies if a manager shall hold CNS data of the identification in memory. CNS data is still tranferred with the identification but the manager discards this data.
[valarch] timeoutForBackup
- Type
- int
- Default
- 0
- Range
- >=0
[valarch] useHeaderSize
- Type
- string
- Range
- Windows|Linux
[ValueArchiveRDB]
Settings for the RDB Archiving
[ValueArchiveRDB] alertUpdateDelay
- Type
- Int
- Default
- 300
- Range
- 0-600. Should not be higher than 300.
[ValueArchiveRDB]
"alertUpdateDelay = 30".
[ValueArchiveRDB] APMDbDb
- Type
- string
[ValueArchiveRDB] APMDbType
- Type
- string
- Range
- ORACLE, Access, SQL
[ValueArchiveRDB] APMDbUser
- Type
- string
- Default
- 0
- Range
- 0|1
[ValueArchiveRDB] bufferToDisk
- Type
- int
- Default
- 1
- Range
- 0-2
bufferToDisk = 0
Without BufferToDisk: in case of a disconnect to the RDB, the data blocks are buffered in RAM and accordingly they are written into the database. Note that data get lost in a case of out of memory.bufferToDisk = 1
BufferToDiskMin (Default)bufferToDisk = 2
BufferToDiskMax[ValueArchiveRDB] bufferToDiskDir
- Type
- string
- Default
- <project_path>\db\buffer
[ValueArchiveRDB] Db
- Type
- string
[ValueArchiveRDB] DbPass
- Type
- string
[ValueArchiveRDB] DbType
- Type
- string
- Default
- ORACLE
- Range
- ORACLE, Access, SQL
[ValueArchiveRDB] DbUser
- Type
- string
[ValueArchiveRDB] delayAfterDBRestart
- Type
- int
- Default
- 30 sec.
[ValueArchiveRDB] ignoreStatusBits
- Type
- int
- Range
- Bits 0-63
The bits 0-63 can be specified.
EXAMPLE:
[ValueArchiveRDB]
ignoreStatusBits = "20, 21, 30"
In this case the bits 20, 21 and 30 are set to 0 when writing. This only applies to values, NOT to alerts.[ValueArchiveRDB] initialEntriesInBlock
- Type
- int
- Default
- 50
[ValueArchiveRDB] lostConnectionReportInterval
- Type
- float
- Default
- 15 sec
- Range
- >= 0
[ValueArchiveRDB] maxRequestLineCount
- Type
- int
- Default
- 0
- Range
- 0-maxInt
[ValueArchiveRDB] maxRequestThreads
- Type
- int
- Default
- 4
- Range
- 0..4
[ValueArchiveRDB] openConnOnDemand
- Type
- bool
- Default
- 0
- Range
- 0|1
[ValueArchiveRDB] oracleClientVersion
- Type
- int
- Default
- 11
- Range
- >= 11.202
[ValueArchiveRDB] queryFunction
- Type
- bool
- Default
- 0
- Range
- 0|1
With the config entry queryFunction = 1 a database function is used for dpGetPeriod() instead of a query. Therefore, the limitations such as the number of tables and the length of the SQL statement cease to exist.
With queryFunction = 0, a query is used as so far.
The entry can be used in ValueArchiveRDB and UI sections.
Note: Please note that this entry is not intended for use in regular projects, but can only be used for specific, proprietary database schemas. Use in different projects means that correct functioning can no longer be guaranteed.
[ValueArchiveRDB] queryFunctionGetPeriod
- Type
- boolean
- Default
- 0
- Range
- 0|1
This can e.g. improve the performance of the trend.
The function dpQuery() will not use the query function.
[ValueArchiveRDB] queryOverBounds
- Type
- int
- Default
- 1
- Range
- 0|1
[ValueArchiveRDB] queryOverId
- Type
- bool
- Default
- 1
- Range
- 0|1
- 0 = datapoint name or DPE name; although this option impacts on performance, it does allow you to access the data in the Oracle database from a different WinCC OA project.
- 1 = IDs (faster)
[ValueArchiveRDB] queryTimeout
- Type
- int
- Default
- 0
- Range
- 0 - 32767
[ValueArchiveRDB] redirectArcGroup
- Type
- string
- Range
- <AR_FROM> :<AR_TO>
[ValueArchiveRDB] sendMaxTS
- Type
- bool
- Default
- 1
- Range
- 0|1
sendMaxTS = 1
The RDB manager gets the highest time stamp from the database and synchronizes the data with the Data manager. Thus, the Data manager sends all value changes that are newer than the time stamp from the database, to the RDB manager.sendMaxTS = 0
The RDB manager does not get the time stamp from the database and does not synchronize the data. This improves the performance but the last value change until the RDB start is not saved in the Oracle database.sendMaxTS = 2
The latest time stamp per system is saved in the SYSTEMS table and updated with every block insert. When the RDB manager is started, the time stamp is read from the SYSTEMS table. This is a quick read operation that allows you to query the last time stamp of your system.[ValueArchiveRDB] SQLPreFetchCount
- Type
- int
- Default
- 1000
- Range
- >=0
[ValueArchiveRDB] updateConnCloseDelay
- Type
- float
- Default
- 180 (3 minutes)
- Range
- 0-32767
[ValueArchiveRDB] writeTimeout
- Type
- int
- Default
- 15 sec
- Range
- 0-32767
[ValueArchiveRDB] writeWithBulk
- Type
- bool
- Default
- 1
- Range
- 0|1
0 = Do not use OCI.
[webClient]
Settings for the WinCC OA mobile UI application and the Desktop UI.
[webClient] advancedSecurity
- Type
- int
- Default
- 0
- Range
- 0-2
- 0: (default) No web server hardening, access rights remain unchanged.
- 1: No access to certificates. This means that the certificates must be distributed manually when connecting to the project by using the Mobile UI or the Desktop UI.
- 2: no access to certificates, scripts or panel files. Also the HTTP endpoints used e.g. by the Dashboard or PM-Agent are not available. This setting can be used for ULC UX and remote UIs only, while Desktop UI, Mobile UI and Dashboard are not supported.
[webClient] clientProjExt
- Type
- uint
- Default
- 0
- Range
- 0-2
[webClient] clientSideAuth
- Type
- bool
- Default
- 1
- Range
- 0|1
[webClient] httpAuth
- Type
- Bool
- Default
- 0
- Range
- 0|1
[webClient] httpPort
- Type
- uint
- Default
- 80(Windows, Linux - root users), 8080(Linux - non root users)
- Range
- 0-65535
[webClient] httpsPort
- Type
- uint
- Default
- 443(Windows, Linux - root users), 8079(Linux - non root users)
- Range
- 0-65535
[webClient] lowestAutoManNumMobileUI
- Type
- unsigned
- Default
- 200
- Range
- 1-255
[webClient] mobileRootPanel
- Type
- string
- Range
- <relative path>/<panelname>.pnl
[webClient] rootPanel
- Type
- string
- Range
- <relative path>/<panelname>.pnl
[wssServer]
Settings for specialized WebSocket servers (as used for e.g. Dashboard or Node-RED).
[wssServer] canEditPermissionBit
- Type
- int
- Default
- 3
- Range
- 1..32
[wssServer] canPublishPermissionBit
- Type
- int
- Default
- 4
- Range
- 1..32
[wssServer] canWritePermissionBit
- Type
- int
- Default
- 0
- Range
- 0..32
[wssServer] diskCheckDp
- Type
- string
- Default
- "_ArchivDisk"
[wssServer] diskCheckLimit
- Type
- int
[wssServer] heartbeatSeconds
- Type
- int
- Default
- 5
[wssServer] httpsPort
- Type
- int
- Default
- 8449
[wssServer] jwtWssPort
- Type
- uint
- Default
- 8449
- Range
- >0
[wssServer] resourceName
- Type
- string
- Default
- /websocket
[wssServer] tokenAutoRefresh
- Type
- bool
- Default
- 0
- Range
- 0|1
[wssServer] tokenExpire
- Type
- uint
- Default
- 600
- Range
- 5..28800
[wssServer] tokenExpireWarning
- Type
- uint
- Default
- 0
- Range
- 0, 5..600
[wssServer] wssServerAddress
- Type
- string
This entry defines external addresses where one (or more than one) WSS server(s) can be reached /e.g. behind a proxy). This entry can be used more than once. The first address will will be included in the authentification token and should correspond to the WSS server that is running on the local system. All addresses will be used by clients to find alternative WSS servers in case of a connection interruption.
If no such entry exists, the list of available WSS servers will be kept up-to-date dynamically using the local WSS server addresses.