Difference between revisions of "Knxtopo.txt"
(14 intermediate revisions by 3 users not shown) | |||
Line 6: | Line 6: | ||
<pre> | <pre> | ||
− | <io_server_id>.<group_address> : dpt = {1 ... 18}; id = <id>; priority = {low|normal| urgent}; read={true|false}; description = <description_text> | + | <io_server_id>.<group_address> : dpt = {1 ... 18}; id = <id>; [priority = {low|normal| urgent};] [read={true|false};] [description = <description_text>] |
</pre> | </pre> | ||
Line 18: | Line 18: | ||
− | For virtual datapoints use the following syntax | + | For virtual datapoints use the following syntax. |
+ | For a light: | ||
<pre> | <pre> | ||
− | <io_server_id>.light.<id> : fb = <feedback_datapoint_address>; cmd = <command_datapoint_address>; on = {1|0}; description = <description_text> | + | <io_server_id>.light.<id> : [fb = <feedback_datapoint_address>;] [cmd = <command_datapoint_address>;] [on = {1|0};] [description = <description_text>] |
+ | </pre> | ||
− | <io_server_id>.dimmer.<id> : fb.level = <level_feedback_datapoint_address>; fb.onoff = <on_off_feedback_datapoint_address>; cmd.level = <level_command_datapoint_address>; cmd.onoff = <on_off_command_datapoint_address>; on = {1|0}; description = <description_text> | + | For a dimmer: |
+ | <pre> | ||
+ | <io_server_id>.dimmer.<id> : [fb.level = <level_feedback_datapoint_address>;] [fb.onoff = <on_off_feedback_datapoint_address>;] [cmd.level = <level_command_datapoint_address>;] [cmd.onoff = <on_off_command_datapoint_address>;] [cmd.step = <step_command_datapoint_address>;] [on = {1|0};] [stepval = {1|2|3|4|5|6|7};] [trip = {auto|<trip_time>};] [description = <description_text>] | ||
+ | </pre> | ||
− | <io_server_id>. | + | For a RGB: |
+ | <pre> | ||
+ | <io_server_id>.rgb.<id> : [fb.rgb = <rgb_feedback_datapoint_address>;] [fb.onoff = <on_off_feedback_datapoint_address>;] [cmd.rgb = <rgb_command_datapoint_address>;] [cmd.onoff = <on_off_command_datapoint_address>;] [on = {1|0};] [description = <description_text>] | ||
+ | </pre> | ||
− | <io_server_id>.thermo.<id> : fb.setpoint = <setpoint_feedback_datapoint_address>; fb.status = <status_feedback_datapoint_address>; fb.temp = <temperature_feedback_datapoint_address>; fb.cooling.status = <cooling_status_feedback_datapoint_address>; fb.heating.status = <heating_status_feedback_datapoint_address>; fb.mode = <mode_feedback_datapoint_address>; cmd.setpoint = <setpoint_command_datapoint_address>; cmd.setpoint.mode = <setpoint_mode_command_datapoint_address>; unit = {C|F|K}; description = <description_text> | + | For an automation: |
+ | <pre> | ||
+ | <io_server_id>.autom.<id> : [fb.position = <position_feedback_datapoint_address>;] [fb.updown = <up_down_feedback_datapoint_address>;] [fb.stopup = <stop_up_feedback_datapoint_address>;] [fb.stopdown = <stop_down_feedback_datapoint_address>;] [fb.moving = <moving_feedback_datapoint_address>;] [cmd.updown = <up_down_command_datapoint_address>;] [cmd.position = <position_command_datapoint_address>;] [cmd.stop = <stop_command_datapoint_address>;] [up = {0|1};] [closed = {255|0};] [position = {true|false};] [trip = <trip_time>;] [description = <description_text>] | ||
+ | </pre> | ||
+ | |||
+ | For a thermostat: | ||
+ | <pre> | ||
+ | <io_server_id>.thermo.<id> : [fb.setpoint = <setpoint_feedback_datapoint_address>;] [fb.status = <status_feedback_datapoint_address>;] [fb.temp = <temperature_feedback_datapoint_address>;] [fb.cooling.status = <cooling_status_feedback_datapoint_address>;] [fb.heating.status = <heating_status_feedback_datapoint_address>;] [fb.mode = <mode_feedback_datapoint_address>;] [cmd.setpoint = <setpoint_command_datapoint_address>;] [cmd.setpoint.mode = <setpoint_mode_command_datapoint_address>;] [unit = {C|F|K};] [description = <description_text>] | ||
</pre> | </pre> | ||
Line 35: | Line 50: | ||
<pre> | <pre> | ||
knx.light.1 : fb = 0/1/1; cmd = 0/1/2; on = 1; description = Light 1 | knx.light.1 : fb = 0/1/1; cmd = 0/1/2; on = 1; description = Light 1 | ||
+ | </pre> | ||
− | knx.dimmer.1 : fb.level = 0/1/ | + | <pre> |
+ | knx.dimmer.1 : fb.level = 0/1/3; fb.onoff = 0/1/4; cmd.level = 0/1/5; cmd.onoff = 0/1/6 | ||
+ | </pre> | ||
− | knx.autom.1 : fb.position = 0/1/17; fb.updown = 0/1/ | + | <pre> |
+ | knx.autom.1 : fb.position = 0/1/17; fb.updown = 0/1/13; fb.stopup = 0/1/14; fb.stopdown = 0/1/22; fb.moving = 0/1/28; cmd.updown = 0/1/20; cmd.position = 0/1/21; cmd.stop = 0/1/19; up = 0; closed = 255; position = false; trip = 60; description = Autom 1 | ||
+ | </pre> | ||
+ | <pre> | ||
knx.thermo.1 : fb.setpoint = 0/1/31; fb.status = 0/1/0; fb.temp = 0/1/33; fb.cooling.status = 0/1/32; fb.heating.status = 0/1/39; fb.mode = 0/1/38; cmd.setpoint = 0/1/37; cmd.setpoint.mode = 0/1/36; unit = C; description = Thermo 1 | knx.thermo.1 : fb.setpoint = 0/1/31; fb.status = 0/1/0; fb.temp = 0/1/33; fb.cooling.status = 0/1/32; fb.heating.status = 0/1/39; fb.mode = 0/1/38; cmd.setpoint = 0/1/37; cmd.setpoint.mode = 0/1/36; unit = C; description = Thermo 1 | ||
</pre> | </pre> | ||
− | When the knxtopo.txt configuration is complete and the KNX I/O Server is started, for each defined DPT 1 datapoint and virtual datapoint a corresponding entry is automatically added to the | + | When the knxtopo.txt configuration is complete and the KNX I/O Server is started, for each defined DPT 1 datapoint and virtual datapoint a corresponding entry is automatically added to the systemtopo.txt devices list so to be able to directly associate them to graphical objects in the Web user interface. |
This is an example of an automatically generated systemtopo.txt file: | This is an example of an automatically generated systemtopo.txt file: | ||
Line 49: | Line 70: | ||
<pre> | <pre> | ||
(devices) | (devices) | ||
− | knx.light.1 : LIGHT ; LIGHT ; Light 1 | + | knx.light.1 : LIGHT ; LIGHT ; Light 1 |
knx.dimmer.1 : LIGHT ; DIMMER ; Dimmer 1 | knx.dimmer.1 : LIGHT ; DIMMER ; Dimmer 1 | ||
knx.autom.1 : AUTOM ; VSHUT ; Autom 1 | knx.autom.1 : AUTOM ; VSHUT ; Autom 1 |
Latest revision as of 08:26, 2 October 2015
The knxtopo.txt is a configuration file for the KNX I/O Server. The KNX Utility provides a graphical interface to modify the content of this file.
The file knxtopo.txt contains the declaration of the used datapoints of all the defined KNX I/O Servers and their functional attributes.
For each KNX datapoint we have a corresponding line with the following syntax:
<io_server_id>.<group_address> : dpt = {1 ... 18}; id = <id>; [priority = {low|normal| urgent};] [read={true|false};] [description = <description_text>]
For details on the attributes see: KNX_Utility#Datapoints
For instance:
knx.0/0/1 : dpt = 1; id = dpt1; priority = low; read=true; description = Datapoint X
For virtual datapoints use the following syntax.
For a light:
<io_server_id>.light.<id> : [fb = <feedback_datapoint_address>;] [cmd = <command_datapoint_address>;] [on = {1|0};] [description = <description_text>]
For a dimmer:
<io_server_id>.dimmer.<id> : [fb.level = <level_feedback_datapoint_address>;] [fb.onoff = <on_off_feedback_datapoint_address>;] [cmd.level = <level_command_datapoint_address>;] [cmd.onoff = <on_off_command_datapoint_address>;] [cmd.step = <step_command_datapoint_address>;] [on = {1|0};] [stepval = {1|2|3|4|5|6|7};] [trip = {auto|<trip_time>};] [description = <description_text>]
For a RGB:
<io_server_id>.rgb.<id> : [fb.rgb = <rgb_feedback_datapoint_address>;] [fb.onoff = <on_off_feedback_datapoint_address>;] [cmd.rgb = <rgb_command_datapoint_address>;] [cmd.onoff = <on_off_command_datapoint_address>;] [on = {1|0};] [description = <description_text>]
For an automation:
<io_server_id>.autom.<id> : [fb.position = <position_feedback_datapoint_address>;] [fb.updown = <up_down_feedback_datapoint_address>;] [fb.stopup = <stop_up_feedback_datapoint_address>;] [fb.stopdown = <stop_down_feedback_datapoint_address>;] [fb.moving = <moving_feedback_datapoint_address>;] [cmd.updown = <up_down_command_datapoint_address>;] [cmd.position = <position_command_datapoint_address>;] [cmd.stop = <stop_command_datapoint_address>;] [up = {0|1};] [closed = {255|0};] [position = {true|false};] [trip = <trip_time>;] [description = <description_text>]
For a thermostat:
<io_server_id>.thermo.<id> : [fb.setpoint = <setpoint_feedback_datapoint_address>;] [fb.status = <status_feedback_datapoint_address>;] [fb.temp = <temperature_feedback_datapoint_address>;] [fb.cooling.status = <cooling_status_feedback_datapoint_address>;] [fb.heating.status = <heating_status_feedback_datapoint_address>;] [fb.mode = <mode_feedback_datapoint_address>;] [cmd.setpoint = <setpoint_command_datapoint_address>;] [cmd.setpoint.mode = <setpoint_mode_command_datapoint_address>;] [unit = {C|F|K};] [description = <description_text>]
For details on the attributes see: KNX_Utility#Virtual_datapoints
For instance:
knx.light.1 : fb = 0/1/1; cmd = 0/1/2; on = 1; description = Light 1
knx.dimmer.1 : fb.level = 0/1/3; fb.onoff = 0/1/4; cmd.level = 0/1/5; cmd.onoff = 0/1/6
knx.autom.1 : fb.position = 0/1/17; fb.updown = 0/1/13; fb.stopup = 0/1/14; fb.stopdown = 0/1/22; fb.moving = 0/1/28; cmd.updown = 0/1/20; cmd.position = 0/1/21; cmd.stop = 0/1/19; up = 0; closed = 255; position = false; trip = 60; description = Autom 1
knx.thermo.1 : fb.setpoint = 0/1/31; fb.status = 0/1/0; fb.temp = 0/1/33; fb.cooling.status = 0/1/32; fb.heating.status = 0/1/39; fb.mode = 0/1/38; cmd.setpoint = 0/1/37; cmd.setpoint.mode = 0/1/36; unit = C; description = Thermo 1
When the knxtopo.txt configuration is complete and the KNX I/O Server is started, for each defined DPT 1 datapoint and virtual datapoint a corresponding entry is automatically added to the systemtopo.txt devices list so to be able to directly associate them to graphical objects in the Web user interface.
This is an example of an automatically generated systemtopo.txt file:
(devices) knx.light.1 : LIGHT ; LIGHT ; Light 1 knx.dimmer.1 : LIGHT ; DIMMER ; Dimmer 1 knx.autom.1 : AUTOM ; VSHUT ; Autom 1 knx.dpt1 : LIGHT ; LIGHT ; Datapoint X
You can then add/modify graphical attributes such as the icon types or the thumbnails for any device listed in this file.