Versions Compared

Key

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

...

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:

BMS Server supports a default type list of Datapoints, This list is predefined in a XML file in the installation directory e.g. <C:\Program Files (x86)\NETxAutomation\NETx.BMS.Server.2.0\nxaKNXDataTypeDefinitions.xml>, Those Datapoints have a fixed definition and any modification on them might cause problems or they will not function correctly in the BMS Server.  But BMS Server gives the possibility also to define custom types based on customers' needs . In the following example we will add a new DPT with custom SubTypes.
First DPT should be added to nxaKNXDataTypeDefinitions.xml file:


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>


FieldDescription

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.


After adding the custom DPT in the nxaKNXDataTypeDefinitions.xml file. Changes need to be saved. The new DPT needs to be defined in Telegram Definitions file of BMS Server.
 Telegram Definitions file can be found in the BMS installation folder. <C:\Program Files (x86)\NETxAutomation\NETx.BMS.Server.2.0\System\Definitions\nxaTelegramDefinitions.35.tvd>.

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 Added

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. 

Image Added