...
The KNX protocol is an open standard used in building automation. The KNX implementation uses the Falcon SDK developed by the KNX association. Since this SDK is developed in C#, the connection to the D2000 KOM process is handled by a separate module d2knx, which by default is located in the protdll directory and communicates with the D2000 KOM process via a TCP connection.
As of D2000 v23, the protdll directory contains subdirectories:
- knx5 - contains the d2knx module using Falcon SDK 5 (5.7.426)
- knx6 - contains the d2knx module using Falcon SDK 6 (6.1.6264)
For each communication line on which there are stations with KNX protocol, it is necessary to run one instance of the d2knx module, which requires a separate KNX interface. The KNX interface can be connected via the USB interface or can be accessed via a network based on its IP address.
...
Parameter | Meaning | Unit / Size | Default value | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| Configuration of starting the d2knx module by the D2000 KOM process. If this parameter is empty, the d2knx module will not be started (another starting mechanism is assumed). The parameter contains the following symbolic names:
Note: The protdll directory also contains sample startup scripts for Windows (d2knx.bat) and Linux/Raspberry PI (d2knx). | - | #PROTDIR#d2knx #HOST# #PORT# | |||||||||
| Type of KNX adapter that the d2knx module opens and with which it communicates via the KNX bus:
| - | USB interface by position | |||||||||
| Identification of the KNX adapter to be opened, which depends on the selected KNX interface type - see the description of the KNX Interface Type parameter. This can be the serial number of the USB interface, part of its name or path, or the IP address of the KNX router. | - | 0 | |||||||||
| If KNX Interface ID = "IP interface", then this parameter specifies the port number (TCP or UDP) on which the KNX router communicates. The default port number is 3671. | - | 3671 | |||||||||
| If KNX Interface ID = "IP interface", then this parameter indicates whether UDP or TCP protocol is used for communication with the KNX router:
| Automatic | Automatic | |||||||||
| If KNX Interface ID = "IP interface" and communication goes via the UDP protocol, this parameter specifies whether address translation (NAT) is to be used for communication. | YES/NO | NO | |||||||||
| KNX address that can be set on the KNX interface after opening it. If not specified, the existing KNX interface address is used. | - | - | Note: if secure communication is used (see Security Keys and Security Password parameters) and KNX Interface Type=IP interface, it is necessary to specify the KNX address. | - | - | ||||||
| The name of the security key file. If secure group communication is used Kotva | | sk | sk | Security Keys- | - | ||||||
| A password to access the security key file. | - | - | |||||||||
| This parameter activates the d2knx module debugging information. Zapnutie ladiacich informácii modulu d2knx. | YES/NO | NO | |||||||||
| This parameter activates the debugging information about the read/written values. | YES/NO | NO |
...
Note: when processing spontaneous messages with group values, the attributes Flags, Source Address, Priority, Size, and finally, Value are processed one after the other.
Value type (reading): for Attribute=Value it specifies a way of interpreting the received value:
...
after the other.
Value type (reading): for Attribute=Value it specifies a way of interpreting the received value:
- Unsigned Int - the value is interpreted as an unsigned integer (or as a True/False value)
- Signed Int - the value is interpreted as a signed integer
- Float - the value is interpreted as a real number (2, 4 or 8-byte)
- String - the value is interpreted as a string (the string in the KNX protocol has 14 characters)
- TimeOfDay (3B) - 3-byte value is interpreted as time of day (DPT_TimeOfDay) - value type must be TiR/ToR/Ai/Ao/Ci/Co
- Date (3B) - 3-byte value is interpreted as a date (DPT_Date) - value type must be TiA/ToA
- DateTime (8B) - 8-byte value is interpreted as a date and time (DPT_DateTime) - value type must be TiA/ToA
Note: for an I/O tag with a value of type TiA/ToA, it is possible to process a value of type DPT_DateTime (8-byte date and time) - it is necessary to set Value type (reading) = DateTime (8B)
...
Value subtype (writing): for Attribute=Value, how to encode the value when writing:
- for Value type = Unsigned Int:
- Bool
- TwoBit
- FourBit
- SixBit
- Unsigned Byte (1B)
- Unsigned Short (2B)
- Unsigned Int (4B)
- Unsigned Long (8B)
- for Value type = Signed Int:
- Signed Byte (1B)
- Signed Short (2B)
- Signed Int (4B)
- Signed Long (8B)
- for Value type = Float:
- Short Float (2B)
- Float (4B)
- Double (8B(8B)
- for Value type = String:
- String (14B)
- for Value type = String DateTime:
- String Date Time (14B8B)
Note: I/O tags that have the Output mode parameter set to Command in the Output control tab will not be read. In the KNX protocol, there are common objects that can be written to but not read from, so reading would end with an error that would invalidate the I/O tag value in D2000 - such I/O tag must be configured as a Command.
...
- Ver. 1.0 - May 14th, 2020 - document creation.
- Ver. 1.1 - July 11th, 2022 - support for reading of DPT_TimeOfDay, DPT_Date, DPT_DateTime.
- Ver. 1.2 - July 18th, 2023 - support for writing of DPT_DateTime.
Info | ||
---|---|---|
| ||
...