Knxtopo.txt
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 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|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.