Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Within the BMS Server we can split up complex KNX data point types to different sub fields. For example, to activate the sub fields for a 1 byte DALI object, please open the Telegram Definition, select the corresponding group address(es) and change the data type to : 238.600

 Image Removed

 

After restarting the server, you will find the group address and different subfields:

 Image Removed

 

For example, if the value 67 is received, the BMS Server is splitting up the value into the sub fields. 67 means that the DALI ballast 3 has a Lamp Failure.

If you want to send a KNX telegram, you can also use the sub fields. For example of DPT 238.600, if you want to request the status of a DALI ballast, you have to set the sub field .Address to the corresponding address, and .LF and .BF to False. Afterwards, when you set the “- SEND” item to True, the BMS server calculates the value from the different sub fields and then it sends the calculated value to the KNX bus.

Custom DPTs:

...

Code Block
languagexml
titleCustom DPT
<data_type name="Custom.001" descr="CustomeDPT" length_type="1BYTE" set_flag="T">
 <sub_type id="Scene" desc="Scene Number" start_index="0" length="6" length_type="1BYTE" input_type="EIS14" su="U" output_type="UINT8" unit="" pre_offset="0" post_offset="0" scale="1" min_max="" />
 <sub_type id="SA" desc="Scene Activation" start_index="6" length="1" length_type="1BIT" input_type="EIS1" su="" output_type="BOOL" unit="" pre_offset="0" post_offset="0" scale="1" min_max="" />
 <sub_type id="S" desc="BStorage function" start_index="7" length="1" length_type="1BIT" input_type="EIS1" su="" output_type="BOOL" unit="" pre_offset="0" post_offset="0" scale="1" min_max="" />
 </data_type>

...

data_type name:

...

The name of the custom DPT,which will be used later.

...

data_type descr

...

Data type description.

...

data_type length_type

...

Type length of DPT, 1BIT, 2BIT, 4BIT, 1BYTE, 2BYTE, etc....

...

data_type set_flag

...

Set the DPT flag .

...

Filed

...

Description

...

sub_type id

...

The ID of the Sub_Type.

...

sub_type desc

...

Sub_Type description.

...

sub_type start_index

...

The start index to read from. !Attention Reading is always from Right To Left.

...

sub_type length

...

The length of the Sub_Type.

...

sub_type length_type

...

The length type of the Sub_Type.

...

sub_type input_type

...

The input type EIS1, EIS2, EIS5, etc....

...

sub_type su

...

Signed / Unsigned

...

sub_type output_type

...

The output type.

...

sub_type unit

...

The Sub_Type unit type °C, K/h, m/s, %, etc...

...

sub_type pre_offset

...

Giving a Preoffset for the Sub_Type value.

...

sub_type post_offset

...

Giving a Postoffset for the Sub_Type value.

...

sub_type scale

...

Sub_Type Scale.

...

sub_type min_max

...

define the min and max value e.g. "0:10" min is 0 and max is 10.

...

In the Data Type line, the new Definition of the DPT should be added. Adding the DPT should follow the sequence <Data_Type Length_Type|Data_Type Name@Display Name>

And in our example the definition will like :

Image Removed

Changes need to be saved, and BMS Server reopen in order to apply the new changes. After that the new Datatype will added to Telegram definitions and ready to use. 

...

Include Page
PLATFORM:Splitting complex KNX DPTs
PLATFORM:Splitting complex KNX DPTs