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>;] [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/23; fb.onoff = 0/1/24; cmd.level = 0/1/25; cmd.onoff = 0/1/26; on = 1
knx.autom.1 : fb.position = 0/1/17; fb.updown = 0/1/3; fb.stopup = 0/1/4; 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.