system_objs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
system_objs [2019/11/19 10:55] – [Roles] ingridsystem_objs [2024/03/16 09:42] (current) – Added hint for multiple IP interfaces wikiadmin
Line 15: Line 15:
     * [[#RGB| RGB]]     * [[#RGB| RGB]]
     * [[#email_account| Email Account]]     * [[#email_account| Email Account]]
 +    * [[#thinknx_sensors| Thinknx Sensors]]
     * [[#web_ui| Web UI]]     * [[#web_ui| Web UI]]
     * [[#Presence_simulator| Presence Simulator]]     * [[#Presence_simulator| Presence Simulator]]
Line 39: Line 40:
     * [[#load_control| Load Control]]     * [[#load_control| Load Control]]
     * [[#Gateway_modbus| Gateway Modbus]]     * [[#Gateway_modbus| Gateway Modbus]]
 +    * [[#Gateway_modbus_slave| Gateway Modbus Slave]]
     * [[#gateway_duotecno| Gateway Duotecno]]     * [[#gateway_duotecno| Gateway Duotecno]]
     * [[#gateway_myhome| Gateway MyHome]]     * [[#gateway_myhome| Gateway MyHome]]
     * [[#z-wave_controller| Zwave Controller]]     * [[#z-wave_controller| Zwave Controller]]
 +    * [[#velux_gateway| Velux Gateway]]
     * [[#iroom_controller| iRoom Controller]]     * [[#iroom_controller| iRoom Controller]]
     * [[#universal_gateway| Universal Gateway]]     * [[#universal_gateway| Universal Gateway]]
     * [[#sms_gateway| SMS Gateway]]     * [[#sms_gateway| SMS Gateway]]
-    * [[#Lutron_project| Lutron Project]]+    * [[#Lutron| Lutron Project]]
     * [[#Gateway_tiemme| Gateway Tiemme]]     * [[#Gateway_tiemme| Gateway Tiemme]]
     * [[#serial_gateway| Serial Gateway]]     * [[#serial_gateway| Serial Gateway]]
-    * [[#ethernet_gateway| Ethernet Gateway]]+    * [[#ethernet_gateway| Ethernet Gateway]] //<color red>new!</color>//
     * [[#P1_meter_interface| P1 Meter]]     * [[#P1_meter_interface| P1 Meter]]
     * [[#generic_counter| Generic Counter]]     * [[#generic_counter| Generic Counter]]
Line 54: Line 57:
     * [[#IFTTT_account| IFTTT Account]]     * [[#IFTTT_account| IFTTT Account]]
     * [[#tester| Tester]]     * [[#tester| Tester]]
 +    * [[#openweathermap| OpenWeatherMap]] //<color red>new!</color>//
 +    * [[#mqtt_server| MQTT Server]] //<color red> new! </color>//
 +    * [[#mqtt_client| MQTT Client]] //<color red> new! </color>//
  
   * [[#Multimedia| Multimedia]]   * [[#Multimedia| Multimedia]]
Line 84: Line 90:
   * **Server client port** Number of the TCP port needed to remotely connect with the server (outside the server network). The default port is 7550.   * **Server client port** Number of the TCP port needed to remotely connect with the server (outside the server network). The default port is 7550.
   * **Local IP address** IP address (for example 192.168.X.X) needed to connect with the server from clients that operate in the server LAN.   * **Local IP address** IP address (for example 192.168.X.X) needed to connect with the server from clients that operate in the server LAN.
 +  * **KNXNet/IP interface** if enabled, the Thinknx server can be used as a KNXNet/IP interface, allowing KNX programming from the ETS software for example. More information are available on the [[knxnet_ip| KNXnet/IP]] guide.
 +  * **KNXNet/IP different IP** if enabled, permits to choose a different KNXNet/IP interface to connect and access the KNX bus.
 +  * **Clients Ph. Address Base** base physical address for the clients connections.
 +  * **Client number** number of supported client tunnel connections.
 +  * **KNXNet/IP router** If enabled, the server will also route traffic from TP to multicast IP and vice versa, allowing to connect different parts of a KNX system together over IP. More information are available on the [[knxnet_ip| KNXnet/IP]] guide.
   * **System name** Name to identify the project once it has been uploaded to the server.   * **System name** Name to identify the project once it has been uploaded to the server.
   * **Location** Name of the location where the system is installed.   * **Location** Name of the location where the system is installed.
Line 94: Line 105:
     *Time Group: KNX time group address to receive or send time information.     *Time Group: KNX time group address to receive or send time information.
     *Date group: KNX date group address to receive or send date information.     *Date group: KNX date group address to receive or send date information.
-  * **Licenses** Active licences for the current project, for more details refer to [[main_cons_ui#Licences|section 2.1.3]] . +  * **Licenses** Active licences for the current project, for more details refer to [[main_cons_ui#Licences|Thinknx Configurator - Licenses]] . 
-  * **Users and Groups** Groups and users for the customized exporting process, for more details refer to [[main_cons_ui#creating_editing_and_deleting_users|section 2.1.4]] . +  * **Users and Groups** Groups and users for the customized exporting process, for more details refer to [[main_cons_ui#users_and_groups|Thinknx Configurator - Users and Groups]] . 
-  * **Protection PINs** List of PINs used to protect interface objects, for more details refer to [[main_cons_ui#Protection_PINs|section 2.1.7]].+  * **Protection PINs** List of PINs used to protect interface objects, for more details refer to [[main_cons_ui#Protection_PINs|Thinknx Configurator - Protection PINs]].
  
 ==== Object Commands ==== ==== Object Commands ====
Line 194: Line 205:
 {{ :system_obj_-_ets.png?nolink&100 |}} {{ :system_obj_-_ets.png?nolink&100 |}}
  
-This object contains all KNX groups configured in the ETS software. It simplifies visualisation and selection of these groups within the Configurator thanks to a tree displaying. Following properties are displayed in the grid below: +This object contains all KNX groups configured in the ETS software. It simplifies visualization and selection of these groups within the Configurator thanks to a tree displaying. Following properties are displayed in the grid below: 
 +  * **Label** Object name.
   * **CSV file** This property specifies the .csv file containing the project.   * **CSV file** This property specifies the .csv file containing the project.
-  * **Label** Object name.+  * **Automatic encoding** if enabled, the system to try to recognize the used encoding for the selected file. In some cases, the encoding is not correctly detected, and it is better to force the encoding manually, bi disabling the "Automatic Encoding"
 +  * **Secondary Interfaces** If enabled, it allows the server to connect and communicate with multiple KNX IP interfaces. The server will manage the traffic from each interface using a direct 1:1 KNXnet/IP communication. The same group address can be used with multiple interfaces and can control completely different objects. It is enough to link the Thinknx switch with the group address, followed by "-X", where X = Interface number. For example, group 0/0/1-1 controls the light on Interface-1, while group 0/0/1-2 controls the light on Interface 2. For each interface added in the editor, the below parameters are available: 
 +    * **Name**: Interface label. 
 +    * **Interface Number** specified by the user. It must be an integer value between 1 and 254. 
 +    * **Interface IP Address** IP address of the secondary interface. 
 +    * **IP Port** IP port to communicate with the secondary interface. 
 +    * **ETS File** The file containing the group addresses of the secondary interface. Both .csv and .esf formats are supported.
  
 +<WRAP round center 80% tip>If the suffix "-255" is used, the telegram will be sent to all the configured interfaces.</WRAP>
 +
 +{{ :ets_project_3@3x.png?direct&800 |Secondary interfaces communication}}
 +<WRAP center 60%> <WRAP centeralign> Figure 2.4.1: Secondary interfaces communication </WRAP>  </WRAP>
 +
 +
 +  
 +{{ :ets_project.png?direct&850 |Secondary interface configuration}}
 +<WRAP center 60%> <WRAP centeralign> Figure 2.4.2: Secondary interface configuration</WRAP>  </WRAP>
 ==== Exporting .csv from ETS ==== ==== Exporting .csv from ETS ====
  
Line 204: Line 230:
  
 {{ :system_obj_-_figura1.png?direct&400 |ETS 3 export parameters}} {{ :system_obj_-_figura1.png?direct&400 |ETS 3 export parameters}}
-<WRAP center 60%> <WRAP centeralign> Figure 4.1: ETS 3 export parameters </WRAP>  </WRAP>+<WRAP center 60%> <WRAP centeralign> Figure 4.3: ETS 3 export parameters </WRAP>  </WRAP>
  
  
Line 221: Line 247:
  
 This service allows to define a list of actions to be performed by the server on user’s demand or depending on a specific setting. These actions can be specified by the installer directly in the Configurator or in the client application by the user. This service allows to define a list of actions to be performed by the server on user’s demand or depending on a specific setting. These actions can be specified by the installer directly in the Configurator or in the client application by the user.
 +
 +This object can be linked to a [[inter_objs#scene| Scene icon]] in the user interface, or used internally with the logic module, universal gateway and others. 
  
   * **KNX group** KNX group address used to recall the scene.   * **KNX group** KNX group address used to recall the scene.
Line 227: Line 255:
   * **Restartable** If enabled, the selected scene can be restarted if launched when already running; it is useful when the scenes is full of pauses and it is particularly long-lasting; when the scenery is launched from KNX, this property has to be disabled because of telegram repetitions.   * **Restartable** If enabled, the selected scene can be restarted if launched when already running; it is useful when the scenes is full of pauses and it is particularly long-lasting; when the scenery is launched from KNX, this property has to be disabled because of telegram repetitions.
   * **List of actions** By clicking on the button displayed on the right, the action editor will be displayed; the user can add the desired number of action by clicking on ”Add” button. Each action can be given a name and the related command can be selected by clicking on the button displayed on the right side of the dedicated slot.   * **List of actions** By clicking on the button displayed on the right, the action editor will be displayed; the user can add the desired number of action by clicking on ”Add” button. Each action can be given a name and the related command can be selected by clicking on the button displayed on the right side of the dedicated slot.
 +
 +<WRAP round center 80% tip> Scenes saved by the user from the ThinKnx application are not lost after a project upload to the server. </WRAP>
  
 ==== Object commands ==== ==== Object commands ====
Line 244: Line 274:
  
   * **Controller type** Selection among three possible models:   * **Controller type** Selection among three possible models:
-    * //Mitsubishi AG 150:// Device IP address has to be typed in the empty slot to use this controller+    * //**Mitsubishi AG 150:**// This controller permits to interact with **Mitsubishi G50**, **AG150** and newer controllers such as **AE-200E** or the **EW-50E** with Mitsubishi XML protocol (this protocol needs to be enabled on the Mitsubishi side)
-    * //KNX interface simple:// This controller allows to set mode and speed using standard 1 byte objects. +    * //**KNX interface simple:**// This controller allows to set mode and speed using standard 1 byte objects. 
-    * //KNX interface extended:// This controller allows to set mode and speed using 1 bit objects.\\ +    * //**KNX interface extended:**// This controller allows to set mode and speed using 1 bit objects.\\  
 +    * //**CoolMaster Net:**// This controller permits to talk with CoolAutomation devices via Ethernet. 
        
-  If Controller type is Mitsubishi AG 150” the following property will appear to define the device address:\\  +Select the Devices” property and click on the button displayed on the right to open the devices editor window; click on ”Add” button and adjust the properties in the grid. 
-      * **IP address** HVAC controller IP address.\\+    
 +==== CoolMaster Net ==== 
 + 
 +CoolAutomation devices permits to directly talk with many Air conditioning brands including Daikin and many others. It is connected directly to the AC bus and can control with a single interface all the units connected to the bus.  
 + 
 +<WRAP important center round 60%> This device requires the Automation License. </WRAP> 
 +Integration with Thinknx is directly through the network and permits to control devices under CoolMaster directly within Thinknx. It is not required that the CoolMaster has KNX port. The communication with the KNX devices will be through the server and the server itself will act as gateway to and from KNX. The control of all the split units connected with CoolMaster will be possible using standard HVAC pop-ups in Thinknx. 
 + 
 +{{ :cmn.png?direct&400 |CoolMaster Net}} 
 + 
 +On the system node the following properties will appear:\\ 
 +    * **IP address** HVAC Controller IP address. 
 +    * **Port number** TCP/IP port for Ethernet connection. For example, 10102.
   * **Devices** List of HVAC devices linked to the system.   * **Devices** List of HVAC devices linked to the system.
  
-==== Adding a HVAC device ====+These are the properties for the single device
 +    * //**Name:**// Device label 
 +    * //**Internal unit ID:**// unit identification from CoolMasterNet manual. The format should be Ln.xyz. For example, for indoor unit 3 on line 2, ID will be L2.003. To control multiple units on the line, "*" can be used. Please refer to CoolAutomation documentation for more details on the internal devices naming conventions. 
 +    * //**KNX On/Off command group**// 1-bit group to switch the device on/off from KNX 
 +    * //**KNX On/Off feedback group**// 1-bit group to receive feedback regarding on/off status of the device 
 +    * //**KNX Fan command group:**// 1-byte group to switch device fan speed from KNX. 
 +    * //**KNX Fan feedback group:**// 1-byte group to receive feedback regarding fan speed status of the device  
 +    * //**KNX Temperature setpoint command group**// 2-byte DPT9 group to set the setpoint temperature for the device from KNX 
 +    * //**KNX Temperature setpoint feedback group**// 2-byte DPT9 group to receive feedback regarding actual setpoint from the device. 
 +    * //**KNX Mode command group:**// 1-byte group to switch device modality from KNX. 
 +    * //**KNX Mode feedback group:**// 1-byte group to receive feedback regarding modality of the device. 
 +    * //**Actual temperature from internal unit KNX group**// 2-byte DPT9 group to receive actual temperature read from the device (only available if supported by the device) 
 +    * //**Value fan min:**// value for minimum fan speed. It will be sent to fan command group to set speed and, if received in fan feedback group, minimum speed will be recognized (1-byte value). 
 +    * //**value fan middle:**// value for middle fan speed. It will be sent to fan command group to set speed and, if received in fan feedback group, middle speed will be recognized (1-byte value). 
 +    * //**value fan max:**// value for maximum fan speed. It will be sent to fan command group to set speed and, if received in fan feedback group, maximum speed will be recognized (1-byte value). 
 +    * //**Value Cool Mode:**// value that corresponds to Cool Modality for mode group (1-byte). 
 +    * //**Value Heat Mode:**// value that corresponds to Heat Modality for mode group (1-byte). 
 +    * //**Value Dry Mode:**// value that corresponds to Dry Modality for mode group (1-byte). 
 +    * //**Value Fan Mode:**// value that corresponds to Fan Modality for mode group (1-byte). 
 +    * //**Enable regulator:**// if enabled, the regulator features will be active. This way, the object will act as a thermostat.
  
-Select the ”Devices” property and click on the button displayed on the right to open the devices editor window; click on ”Add” button and adjust the properties in the grid. 
  
 ==== Mitsubishi device ==== ==== Mitsubishi device ====
  
 +<WRAP important center round 60%> This device requires the Automation License. </WRAP>
 +If Controller type is ”//**Mitsubishi AG 150**//” the following property will appear to define the device address:\\ 
 +    * **IP address** HVAC controller IP address.\\
 +
 +These are the properties for the single device:
   * **Name** Device name.   * **Name** Device name.
   * **Device index** Index associated to the device inside the controller.   * **Device index** Index associated to the device inside the controller.
Line 438: Line 504:
     * RGB group: KNX group address to control RGB (3 bytes)     * RGB group: KNX group address to control RGB (3 bytes)
     * RGB fb group: KNX group address with feedback for RGB (3 bytes)     * RGB fb group: KNX group address with feedback for RGB (3 bytes)
 +When the "RGB Data Type" is set to "RGBW 1 byte per color", 8 groups are defined in order to write and read values for each color.
 +    * Red group: Red color command KNX group address (1byte).
 +    * Red fb group: Red color feedback KNX group address (1byte).
 +    * Green group: Green color command KNX group address (1byte).
 +    * Green fb group: Green color feedback KNX group address (1byte).
 +    * Blue group: Blue color command KNX group address (1byte).
 +    * Blue fb group: Blue color feedback KNX group address (1byte).
 +    * White group: White color command KNX group address (1byte).
 +    * White fb group: White color feedback KNX group address (1byte).\\
 +When the "RGB Data Type" is set to "RGBW 6 bytes", just 2 groups are defined for a single RGBW
 +    * Color group: KNX group address to control RGB (6 bytes)
 +    * Color fb group: KNX group address with feedback for RGB (6 bytes).\\ \\
 +    
 +  * **Switch feedback** if enabled, it is possible to send a 1 bit command (DPT1) to a KNX group linked to a an actuator's relay where the power supply of the RGB light has been connected. This will allow to remove power from the light.
 ==== Modbus configuration ==== ==== Modbus configuration ====
  
Line 487: Line 567:
     * Username: E-mail address used as username of the e-mail account or any other authentication string. For Gmail it must be the email address ("my_email@gmail.com")     * Username: E-mail address used as username of the e-mail account or any other authentication string. For Gmail it must be the email address ("my_email@gmail.com")
     * Password: Password of the e-mail account.     * Password: Password of the e-mail account.
-  * **Use SSL** If enabled, use SSL encription to connect with the server. Must be enabled with Gmail.+  * **Use SSL** If enabled, use encryption to connect with the server. The server will use TLS to communicate with the SMTP mail server since TLS is an upgrade of SSL. When server port is configured as 587, it also enables the STARTTLS protocol that is the default one for that port. This parameter must be enabled with Gmail.  
 + 
 +As an example when using Google to send emails from Thinknx Server, it is recommended that you enable the "2-step verification" from your Google Account at https://myaccount.google.com/security. 
 +A new option will appear to create additional passwords to allow third-party applications to sign in. By generating a new password for Thinknx, you can use this password to send emails from the server without the need to enable the "less secure apps access". It is only necessary to enable this options when the 2-step verification is also disabled. In that case, the user will need to use the main Google password to send emails. 
 +<WRAP centeralign>{{ :google_acount2.png?direct600 |Google Account Settings}}</WRAP> 
 +<WRAP center 60%> <WRAP centeralign> Google Account Settings </WRAP></WRAP> 
 +<WRAP centeralign>{{ :google_acount1.png?direct600 |Google Account Settings}}</WRAP> 
 +<WRAP center 60%> <WRAP centeralign> Google Account Settings </WRAP></WRAP> 
 + 
 +The same concept applies when trying to send emails from the iCloud address, where it is necessary to generate an "app-specific password" from the account settings on iCloud.
  
-Please note that when Gmail is used with Pop3 apps like Thinknx Server, it is required to enable "Allow less secure apps" from within your Gmail account.  
-Here's how to find this Gmail security option: 
-  * Open your web browser, e.g., Internet Explorer, Safari, Mozilla Firefox, Google Chrome, Opera, etc. 
-  * Go to https://myaccount.google.com/security. 
-  * Sign into your account. 
-  * Scroll down to the "Less secure app access" section. If you are using the 2-step verification when signing in, you will not be able to see this section. Disable the 2-step verification option in order to enable the "Less secure app access". 
-  * Turn this option "ON". 
  
 After configuring the Email Account in System, you can now send emails through a generic button or using the Report object as well. After configuring the Email Account in System, you can now send emails through a generic button or using the Report object as well.
Line 501: Line 583:
   * When using the Report object, select Report from System tab, and disable the Default SMTP in the parameters. Then select your Email Account from the dropdown list instead.   * When using the Report object, select Report from System tab, and disable the Default SMTP in the parameters. Then select your Email Account from the dropdown list instead.
  
 +If the emails are not sent using the configuration made, some possible causes could be:
  
 +  * The STARTTLS is not supported by the mail server.
 +  * The domain is not supported by the mail server.
 +  * The server cannot establish encrypted connection because of time/date issue or certificates problems.
 +  * The authentication is not valid (password/username).
  
 ==== Object commands ==== ==== Object commands ====
Line 511: Line 598:
   * **Email content** body of the email.   * **Email content** body of the email.
 ++++ ++++
 +
 +===== Thinknx Sensors =====
 +This object allows to configure Thinknx sensors (temperature, humidity, luminosity) available on other servers such as the Envision, in addition to configuring different types of Inputs/Outputs found for example on the new Compact_20, as well as the Envision_20.
 +
 +  * **Label** Text to identify the object.
 +  * **Thinknx devices** List of Thinknx devices used for reading sensors values.
 +
 +For each I/O added, the below parameters are available:
 +  * **Name** Label that identify the sensor or the device
 +  * **Serial number** Serial number of the device to retrieve sensors values.
 +  * **Input/Output Type** Select type of Input/Output to be configured.
 +    * Analog Input
 +    * Digital Input
 +    * Digital Output
 +    * Environment Ambient Sensors
 +    * Relay Output
 +    * Temperature Probe
 +  * **KNX Gateway** If enabled, permits to send the sensors values to the KNX bus, or control the I/Os.
 +
 +If **Analog Input** is selected, the below parameters are available:
 +  * **Input Number** number of the input on the server. For more information, visit [[port_numbers| this guide]].
 +  * **Conversion Factor** the raw value will be multiplied by this factor to convert it into the right measurement.
 +
 +If **Digital Input** is selected, the below parameter is available:
 +  * **Input Number** number of the input on the server. For more information, visit [[port_numbers| this guide]].
 +
 +If **Digital Output** is selected, the below parameters are available:
 +  * **Output Number** number of the output on the server. For more information, visit [[port_numbers| this guide]].
 +  * **Output Type** select the output type between monostable and bistable.
 +  * **Time Base** Time base used to calculate the total ON time for the output.
 +  * **Time Factor** Time factor that will be multiplied by the time base to calculate the total ON time of the output.
 +
 +If **Environment Ambient Sensors** is selected, the below parameters are available:
 +  * **KNX Gateway** if enabled, it will allow to assign group addresses for Temperature, Light, and Humidity sensors.
 +
 +If **Relay Output** is selected, the below parameters are available:
 +  * **Output Number** number of the output on the server. For more information, visit [[port_numbers| this guide]].
 +  * **Output Type** 
 +
 +If **Temperature Probe** is selected, the below parameters are available:
 +  * **Input Number** number of the output on the server. For more information, visit [[port_numbers| this guide]].
 +  * **Probe Type**  select between NTC, PTC, PT100 and PT1000.
 +  * **Correction Offset** value that will be added to the raw value before multiplying it with the conversion factor and obtaining the right measurement.
 +
 +==== Object commands ====
 +
 +Commands recallable from other objects:
 +++++Get the actual humidity|  This command allows read the humidity value from the selected sensor
 +++++
 +++++Get the actual luminosity|  This command allows read the luminosity value from the selected sensor
 +++++
 +++++Get the actual temperature|  This command allows read the temperature value from the selected sensor
 +++++
 +
 +
 +
 ===== Web UI ===== ===== Web UI =====
  
Line 607: Line 750:
 ===== Access Control ===== ===== Access Control =====
 The Thinknx Access Control object permits to enhance the level of automation and security of the home/building where it is applied. It can be adapted to sectors where long term expirations are required such as service and industry sectors, but also applies to the hospitality sector where credentials are usually short term, and remote management is required. The Thinknx Access Control object permits to enhance the level of automation and security of the home/building where it is applied. It can be adapted to sectors where long term expirations are required such as service and industry sectors, but also applies to the hospitality sector where credentials are usually short term, and remote management is required.
- +For more informationcheck out the Access Control page [[access_control| here]].
-The Access Control object can communicate directly with the KNX system because of the bus connector on the Thinknx servermaking the integration very easy and flexible. Any standard KNX keypad can be used as an access keypad, and the buttons as code entries. Once the code is inserted, any lock or switch connected to a KNX actuator can be operated. In addition, communication with Wiegand technology is possible through the Thinknx-Wiegand adapter, making it possible to install a suitable RFID or biometric reader. +
- +
-{{ :access_control_diagram.png?direct&800 |}} +
-<WRAP center 60%> <WRAP centeralign> Access Control Solution </WRAP>  </WRAP> +
- +
-  * **Label** Text to identify the object +
-  * **Code length** Number of digits inside the access codes. All codes should have the same number of digits. If length of codes is 6, a valid code will be 123456. +
-  * **Code numbers** Numbers contained inside the code, starting from 0. This depends on the number of buttons in keypads. If code numbers is 5, codes can contain the numbers 0,1,2,3,4. +
-  * **Confirm time (ms)** Maximum time between two consecutive keypress. Once the confirm time has been exceeded, the start of a new code will considered on keypress. This time is useful to start a new sequence if a mistake has been made when entering the code. +
-  * **Guard wrong codes** if enabled, it is possible to monitor wrong codes attempts, and generate events once a threshold has been reached. +
-    * **Number of attempts** Maximum number of attempts with wrong codes allowed before triggering the event. +
-    * **attempts interval (s)** duration in seconds used to count the number of wrong attempts before triggering the event. If the number of wrong attempts exceeds the number of attempts set previously during the attempt interval, then the event for wrong codes will be fired. +
- +
-==== Keypad prototypes ====  +
-Collection of prototypes used for the installed keypads. To add and configure a prototype, click on the small button to the right to access the prototype creator window. For each added prototype, the following properties are available: +
-  * **Name** label of the prototype used. +
-  * **Technology** technology used for the created protoype. The available options are: +
-    * Doory (Blumotix) +
-    * Generic KNX +
-    * Generic Wiegand //coming soon// +
-    * Wiegand over network //coming soon// +
-If "Generic KNX" was selected as **Technology**, the below parameters are available: +
-  * **KNX Data Type** Data type used on the KNX buttons to send the access code digits. Each button can be configured to send a 1bit object to a different KNX group, or send a certain value on a 1byte object corresponding to the digit on the same KNX group. +
-  * **Delete Key** if enabled, this option will delete the inserted sequence and start a new one before the "confirm time" exipration. +
-  * **Confirm tone** if enabled, the system will generate an event "confirm tone" in case of successful attempt. +
-  * **Keys** //only visible if **KNX Data Type** is DPT 1 (bit).// This parameter holds the keys collection used to enter a code. Clicking on the small right button will open the Keys Manager. From there, it is possible to configure every single key. Each key has a **name**, **key type** and a **group address**. +
-  * **KNX group for keys** //only visible if **KNX Data Type** is DPT 5 (Unsigned byte).// It holds the group address used on the keypad to sen the different code digits. A telegram with value 4 means that button 4 has been pressed on the keypad. +
- +
- +
-==== Keypads ==== +
-This parameter holds the collection of keypads used and installed on the plant. At least one keypad protocol must be created prior adding the keypads. Clicking on the small button to the right will open the Keypads Manager. Each added keypad will have the following parameters: +
-  * **Name** device label +
-  * **Prototype** communication prototype used for this device. A prototype must be created in **Keypads Prototype** in order to view it in the list here. +
-  * **KNX physical address** physical address of the device. +
-  * **KNX group for code enabled** KNX group used by keypad to signal that the code is enabled (1 bit data type). +
-  * **KNX group for storing/deleting codes** KNX group to store and delete codes from the keypad (10 bytes data type). +
-  * **KNX group for erase request** KNX group to erase codes from the keypad (1 bit data type). +
-  * **Command if fail** command to execute in case of failed entry attempt. +
-  * **Command if success** command to execute in case of successful entry. +
-  * **command for tone** command to execute to play tone. +
-==== Areas ==== +
-This parameter holds the collection of all the areas (rooms or part of the building) limited by one or more access control keypads. By clicking on the small button to the right, the Area Manager is accessible. Each added area will have the following parameters: +
-  * **Name** label of the area. +
-  * **Entrance doors** allows you to select the checkers that are used on site to enter this specific area. The checkers should be created first in the **Keypads** collection. +
-  * ** Dual flow** id disabled, the entrance checkers will be considered for both entrance and exit. If enabled, it means the area has differet doors/checkers for entrance and exit. It permits to distinguish entrance and exit events and eventually count the people inside the area. +
-  * **Exit doors** //only visible if **Dual flow** is enabled.// allows you to select the checkers that are used on site to exit this specific area. The checkers should be created first in the **Keypads** collection. +
-  * **Count persons** //only visible if **Dual flow** is enabled.// If enabled, the system will count the number of persons inside the area based on the entrance and exit events. +
-  * **Success enter command** Command to execute in case of successful entrance event. +
-  * **Success exit command** Command to execute in case of successful exit event. +
-  * **Nobody command** //only visit if **Count persons** is enabled.// Command to execute in case nobody is in the area. +
-  * **KNX group force closed** KNX group (1 bit DPT1) to force all doors/checkers to refuse any code. +
-  * **KNX group force open** KNX group (1 bit DPT1) to force all doors/checkers to accept any code. +
-  * **KNX group valid enter** KNX gorup (1bit DPT1) to signal a valid entrance into the area. +
-  * **KNX group valide exit** KNX group (1bit DPT1) to signal a valid exit from the area. +
- +
-==== Timing ==== +
-// information coming soon// +
-==== Roles ==== +
- +
-// information coming soon//+
  
 ====== Logic ====== ====== Logic ======
Line 748: Line 831:
     * //’On result change’:// indicates that the value is sent only when the result of the operation is different from the previous one.     * //’On result change’:// indicates that the value is sent only when the result of the operation is different from the previous one.
     * //’When a new input telegram is received’:// indicates that the value is sent whenever the server receives a telegram from on of the KNX groups specified in the inputs.     * //’When a new input telegram is received’:// indicates that the value is sent whenever the server receives a telegram from on of the KNX groups specified in the inputs.
-  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|section 4.16]] .+  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|System - Combination]] .
  
 ===== Multiplexer ===== ===== Multiplexer =====
Line 774: Line 857:
     * //’0 until first telegram’:// indicates that the control bit takes value 0 until the receiving of the first telegram.     * //’0 until first telegram’:// indicates that the control bit takes value 0 until the receiving of the first telegram.
     * //’1 until first telegram’:// indicates that the control bit takes value 1 until the receiving of the first telegram.     * //’1 until first telegram’:// indicates that the control bit takes value 1 until the receiving of the first telegram.
-  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|section 4.16]] .+  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|System - Combination]] .
  
 ===== Logic Matrix ===== ===== Logic Matrix =====
Line 791: Line 874:
   * **Update for every input control tel.** If enabled, outputs will be updated for every received telegram to the input control (selection) group. If disabled, outputs will be refreshed only when a new telegram on the selected input is received or (if enabled) when a telegram on the output control group is received.   * **Update for every input control tel.** If enabled, outputs will be updated for every received telegram to the input control (selection) group. If disabled, outputs will be refreshed only when a new telegram on the selected input is received or (if enabled) when a telegram on the output control group is received.
   * **Update for every output control tel.** If enabled, outputs will be updated for every received telegram to the output control (selection) group. If disabled, outputs will be refreshed only when a new telegram on the selected input is received or (if enabled) when a telegram on the input control group is received.   * **Update for every output control tel.** If enabled, outputs will be updated for every received telegram to the output control (selection) group. If disabled, outputs will be refreshed only when a new telegram on the selected input is received or (if enabled) when a telegram on the input control group is received.
-  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|section 4.16]] .+  * **Gate** This property enables or disables the operation. See [[system_objs#Combination|System - Combination]] .
  
 ==== Adding an input ==== ==== Adding an input ====
Line 943: Line 1026:
 {{ :system_obj_-_server.png?nolink&100 |}} {{ :system_obj_-_server.png?nolink&100 |}}
  
-This object represents a service to store data coming from the plant on a cloud database. All these data will be accessible through the Chart interface object.+This object represents a service to store data coming from the plant on a cloud database. All these data will be accessible through the [[inter_objs#chart| Chart interface object]].
  
 <WRAP center round important 60%> <WRAP center round important 60%>
Line 1162: Line 1245:
 {{ :system_obj_-_modbus.png?nolink&100 |}} {{ :system_obj_-_modbus.png?nolink&100 |}}
  
-It allows to integrate Modbus devices.+This object allows to communicate with Modbus devices when Thinknx server is used as a Modbus Master. 
 + 
 +<WRAP tip round center 80%> A Modbus Master is a device that handles the entire communication with one or more slaves, whilst the Slave is completely passive and just replies to polls/commands from the Master. A Modbus Slave cannot initiate communication, either to the Master or to other Slaves. </WRAP> 
 + 
 +<WRAP important round center 80%> Do not confuse the concept of **Master-Slave** with **Client-Server**. While Master-Slave is explained from a Modbus perspective, the Client-Server is interpreted from a network perspective when using TCP media. A Modbus Master connecting to a a Modbus Slave is considered a "client" to the slave device which is the "server"</WRAP> 
 + 
  
   * **Communication Type** Define the method and mean of communication. Serial over TCP is used when a Serial Server is used.\\ If in the property ”Communication Type” is selected the setting ”Modbus Serial”, the following properties will appear:   * **Communication Type** Define the method and mean of communication. Serial over TCP is used when a Serial Server is used.\\ If in the property ”Communication Type” is selected the setting ”Modbus Serial”, the following properties will appear:
-    * Port Number: Serial port number. It can be between 0 and 3. For USB use 10.+    * Port Number: Serial port number that changes depending on the server usedClick [[port_numbers| here]] to get the correct port number.
     * Baud Rate: Modbus Baud Rate     * Baud Rate: Modbus Baud Rate
     * Data Length: Number of bits for data     * Data Length: Number of bits for data
Line 1176: Line 1265:
   * **Datapoints** Data points collection   * **Datapoints** Data points collection
   * **Poll Interval** Pause between two consecutive polling sequences [ms]   * **Poll Interval** Pause between two consecutive polling sequences [ms]
 +
 +For each Datapoint created, the below parameters are available:
 +  * **Name** datapoint label
 +  * **Slave Address** Physical slave address of the device where the data is configured.
 +  * **Data address** Data address where the data is stored.
 +  * **Data type** type of data to read/write.
 +  * **Read Function** Modbus standard function that has to be used to read the value (consult device manual).
 +  * **Write Function** Modbus standard function that has to be used to write the value (consult device manual).
 +  * **Bit number** number of bits inside the data that represent the value.
 +  * **Conversion factor** conversion factor to multiply the read raw value.
 +  * **Reuse** If several bits need to be read from the same address X, this parameter will help improve the reading speed by avoiding polling the slave every single time to read 1 different bit from the same address. For example, if multiple datapoints have been created for the same address, each datapoint with a different bit number to read from (typically each bit is a different toggle status), then only the first datapoint will have the "Reuse" parameter set to "False", while the other datapoints will have the "Reuse" parameter set to "True". The driver will read the 2 bytes from address X only the first time and will extract all the subsequent bits from this read value to populate the other datapoints.
 +  * **Force rewrite** If enabled, permits to refresh (re-write) the last written value to the slave cyclically, based on the interval configured in "Write Refresh Interval" in the main settings.
 +  * **Gateway KNX** if enabled, allows to read/write Modbus values from KNX system.
 +  * **KNX data type** EIS data type that has to be written into the KNX group.
 +  * **KNX group from Modbus** KNX group to read feedback from Modbus. Values are read from Modbus slaves and sent to this KNX group address.
 +  * **Send if change** if enabled, sends value on KNX bus just in case Modbus value changes.
 +  * **Enable KNX to Modbus** By default, the KNX gateway will read data from Modbus and send feedback to KNX. If bidirectional communication is needed, enable this parameter.
 +  * **KNX group to Modbus** KNX group to receive value and write to Modbus. Values are received from this KNX group address and are written to Modbus.
 +
  
 ==== Object Commands ==== ==== Object Commands ====
Line 1202: Line 1310:
     * **Selected bits mask** mask value of the selected bits to be changed.     * **Selected bits mask** mask value of the selected bits to be changed.
 ++++ ++++
 +
 +===== Gateway Modbus Slave=====
 +
 +{{ :system_obj_-_modbus.png?nolink&100 |}}
 +
 +It allows to communicate with Modbus slave devices when Thinknx server is used as Slave Gateway.
 +
 +  * **Communication Type** Define the method and mean of communication. Serial over TCP is used when a Serial Server is used.\\ If in the property ”Communication Type” is selected the setting ”Modbus Serial”, the following properties will appear:
 +    * Port Number: Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
 +    * Baud Rate: Modbus Baud Rate
 +    * Data Length: Number of bits for data
 +    * Parity: Parity check modality
 +    * Stop Bits: Number of stop bits.
 +    * Custom Timing: if enabled, it allows to change the waiting times below: 
 +      * waiting time after enabling RTS before the writing begins.
 +      * waiting time after writing before disabling RTS.
 +      * waiting time after disabling RTS before the reading begins.
 +
 +  *  **Device Address** Address of the slave device (1byte) to be used on the bus for identification. 
 +  *  **Modbus Type** variant of the Modbus protocol to use for communication. Select between RTU (mostly used) and ASCII.
 +  *  **Datapoints** Datapoints collection
 +
 +For each datapoint created, the below parameters are available:
 +  * **Name** datapoint label
 +  * **Data address** Data address where the data is stored.
 +  * **Data type** type of data to read/write.
 +  * **Read Function** Modbus standard function that has to be used to read the value (consult device manual).
 +  * **Write Function** Modbus standard function that has to be used to write the value (consult device manual).
 +  * **Bit number** number of bits inside the data that represent the value.
 +  * **Conversion factor** conversion factor to multiply the read raw value.
 +  * **KNX group** KNX group to send value to.
 +  * **KNX data type** EIS data type that has to be written into the KNX group.
 +  * **Send if change** if enabled, sends value to KNX bus just in case Modbus value changes.
 +
 +{{ :modbus_slave_1.png?direct850 |Thinknx server as a Modbus gateway to other systems }}
 +<WRAP center 60%> <WRAP centeralign> Thinknx Server as a Modbus Gateway to Other Systems </WRAP>  </WRAP>
 +\\
 +{{ :modbus_slave_2.png?direct850 |Case study: Modbus gateway }}
 +<WRAP center 60%> <WRAP centeralign> Case Study: Modbus Gateway </WRAP>  </WRAP>
 +
 +
  
 ===== Gateway MyHome ===== ===== Gateway MyHome =====
Line 1207: Line 1356:
 {{ :system_obj_-_bticino.png?nolink&100 |}} {{ :system_obj_-_bticino.png?nolink&100 |}}
  
-It allows the bidirectional connection of MyHome BTicino plants to KNX plants. Through easy-to-fit tables it is possible to set matching among the messages coming from the two worlds.+It allows the bidirectional connection of MyHome BTicino plants to KNX plants. Through easy-to-fit tables it is possible to set matching among the messages coming from the two systems. In order to be able to communicate with MyHome system, a MyHome Ethernet gateway is needed, similar to [[https://catalogue.bticino.com/BTI-F454-EN| BT-F454 web server]] that supports the Open Web Net protocol.
  
   * **IP Address** IP address of the device or of the serial server   * **IP Address** IP address of the device or of the serial server
-  * **Port Number** Serial port number. It can be between 0 and 3For USB use 10 +  * **Port Number** Serial port number that changes depending on the server usedClick [[port_numbers| here]] to get the correct port number
-  * **Lights** Collection of lights +  * **Lights** Collection of lights. 
-  * **Automation** +  * **Automation** Collection of shutters.
   * **Heating** Collection of heating and cooling elements.   * **Heating** Collection of heating and cooling elements.
  
Line 1317: Line 1466:
 {{ :system_obj_-_zwave.png?nolink&100 |}} {{ :system_obj_-_zwave.png?nolink&100 |}}
  
-It allows to integrate Z-Wave devices. Without any gateway, the result is a reliable and easy-to-use system with a bidirectional connection between Z-Wave and other standards such as KNX.+It allows to integrate Z-Wave devices. Without any gateway, the result is a reliable and easy-to-use system with a bidirectional connection between Z-Wave and other standards such as KNX.  
 + 
 +<WRAP important center round 60%> For a full list of all the compatible Z-wave devices with Thinknx server, visit [[zwave_db| our database]]. </WRAP>
  
   * **Use internal controller** If enable, it will be used the server internal Z-Wave controller. If disabled it will be possible to use an external Z-Wave controller. This option is only used during configuration phase. If disabled, following properties will appear:   * **Use internal controller** If enable, it will be used the server internal Z-Wave controller. If disabled it will be possible to use an external Z-Wave controller. This option is only used during configuration phase. If disabled, following properties will appear:
Line 1335: Line 1486:
  
 <WRAP center round important 60%> <WRAP center round important 60%>
-Z-Wave Controller to work requires the ThinKnx Z-Wave transceiver (USB dongle) provided together with the Z-Wave upgrade. After plugging the transceiver to the ThinKnx server always perform a server soft-restart.+To work, Z-Wave Controller requires the ThinKnx Z-Wave transceiver (USB dongle) provided together with the Z-Wave upgrade (license). After plugging the transceiver to the ThinKnx serveralways perform a server soft-restart.
 </WRAP> </WRAP>
  
Line 1402: Line 1553:
  
 The association function “associates” two devices, enabling them to communicate directly without the need for controller. On the "Device association editor" window, you can set an association with other Z-Wave devices and define the type of association. The association function “associates” two devices, enabling them to communicate directly without the need for controller. On the "Device association editor" window, you can set an association with other Z-Wave devices and define the type of association.
- + 
 +===== Velux Gateway ===== 
 + 
 +This gateway allows to communicate with the Velux KLF200 interface to control the nodes and groups configured on it, whether directly or through the KNX bus. 
 + 
 +=== Web access === 
 +The web access credentials and SSID can be found on the back of the Velux unit as seen in the picture below: 
 + 
 +{{ :velux_1.jpg?direct500 |Velux Credentials}} 
 +<WRAP center 60%> <WRAP centeralign> Velux Credentials </WRAP>  </WRAP> 
 + 
 +From your PC, scan for available wifi networks, and connect to the Velux SSID found.  
 + 
 +Open the browser and type the following link: http://klf200.velux. Use the credentials on the device to sign in. 
 + 
 +{{ :velux_2.png?direct500 |Velux Web Access}} 
 +<WRAP center 60%> <WRAP centeralign> Velux Web Access </WRAP>  </WRAP> 
 + 
 +Open the Interface Mode to scan and add your products. 
 + 
 +{{ :velux_3.png?direct300 | Interface Mode }} 
 +<WRAP center 60%> <WRAP centeralign> Interface Mode </WRAP>  </WRAP> 
 + 
 +{{ :velux_4.png?direct500 | Product Search }} 
 +<WRAP center 60%> <WRAP centeralign> Product Search</WRAP>  </WRAP> 
 + 
 +<WRAP tip center round 80%>For more information on how to setup the Velux interface, check out this video posted by Velux Commercial https://youtu.be/kVmqGOMKqoM</WRAP> 
 + 
 +=== Network Setup === 
 +After logging into the interface, click on the gear button at the top right, and select "LAN"
 + 
 +{{ :velux_5.png?direct850 | LAN Settings }} 
 +<WRAP center 60%> <WRAP centeralign> LAN Settings </WRAP>  </WRAP> 
 + 
 +Fill in your desired IP Address, Subnet mask, Default gateway (that fits to your LAN) or click on “Use DHCP”.  
 +\\ 
 +\\ 
 +<WRAP important center round 80%> The important thing is to configure the Velux within the same LAN as the Thinknx server to ensure communication between both parties.</WRAP> 
 + 
 +=== Thinknx Configurator === 
 +Add the Velux interface in System and configure the correct IP address and port to communicate with the Velux interface.  
 + 
 +The below properties are available once the object is added: 
 +  * **IP address** IP address of Velux KLF200 interface. 
 +  * **TCP Port** TCP port of Velux KLF200 interface. Default value: 51200. 
 +  * **Password** Password of Velux KLF200 webpage (see section above). 
 +  * **Status** Indicates the status of the last connection request to the Velux interface. If connection cannot be established, review the IP address, port and password. Also take into consideration that the Velux interface can accept two connections at most. 
 +  * **Controlled Elements** Collection of Velux nodes and groups to control in Thinknx. When opened, each created element will have the following properties: 
 +    * **Element Type** type of element added (Node or Group). 
 +    * **Node/Group** link to the Node/Group in list. 
 +    * **KNX gateway** Enables KNX gateway to control element. 
 + 
 +{{ :velux_6.png?direct850 | Velux Gateway }} 
 +<WRAP center 60%> <WRAP centeralign> Velux Gateway </WRAP>  </WRAP> 
 + 
 +{{ :velux_7.png?direct850 | Testing Window }} 
 +<WRAP center 60%> <WRAP centeralign> Testing Window </WRAP>  </WRAP> 
 + 
 + 
 ===== iRoomController ===== ===== iRoomController =====
  
Line 1589: Line 1799:
 This object represents the interface between ThinKnx system and a third-party device connected through serial port. It makes possible to send commands through the serial port to the device. This object represents the interface between ThinKnx system and a third-party device connected through serial port. It makes possible to send commands through the serial port to the device.
  
-  * **Port Number** Serial port number. It can be between 0 and 3. For USB use 10.+  * **Port Number** Serial port number that changes depending on the server usedClick [[port_numbers| here]] to get the correct port number.
   * **Baud Rate** Serial port baud rate.   * **Baud Rate** Serial port baud rate.
   * **Data Length** Number of bits for data.   * **Data Length** Number of bits for data.
Line 1612: Line 1822:
 ++++ ++++
  
-==== Serial port settings for ThinKnx servers ==== 
  
-Depending on the server you are going to use, the serial port number should be set according to the following settings: 
- 
-  * Compact RS232 Port Number 0 
-  * Rack Serial A Port Number 2 
-  * Rack Serial B Port Number 3 
-  * Rack RS232 C Port Number 0 
-  * BrickBox RS232 Port Number 4 
-  * BrickBox RS485 Port Number 5 
-  * Serial over USB Port Number 10 
  
 ===== Ethernet gateway ===== ===== Ethernet gateway =====
Line 1628: Line 1828:
 {{ :system_obj_-_ethernetgateway.png?nolink&100 |}} {{ :system_obj_-_ethernetgateway.png?nolink&100 |}}
  
-This object is a server service that allows to send GET and POST requestsand strings on TCP or UDP sockets.+This object is a server service that allows to send HTTP GET/POST/PUT requests and strings on TCP or UDP sockets. The command can be linked to a [[inter_objs#generic_command| Generic Command]] for example or used inside a logic.  
 + 
 +  * **[[#virtual_inputs|Virtual Inputs:]]** Display and manage Virtual Inputs of the KNX system. Each Virtual Input is a KNX system input that receives data from an external service. 
 +  * **[[#virtual_outputs| Virtual Outputs:]]** Display and manage Virtual Outputs of the KNX system. Each Virtual Output is a KNX system output that sends data to an external service. 
 + 
 +==== Virtual Inputs ==== 
 + 
 +    * **Input Mode** Choose between HTTP request or TCP/UDP listener. 
 +    * **HTTP Request Type** Choose the HTTP method to use between GET, POST, or PUT, in case HTTP request is selected as Input Mode. 
 +    * **Refresh Rate** Specify the time interval after which the server should refresh data from the external service. 
 +    * **Base URL** Base address of the external service. All the parameters will be eventually added using the **[[#data_format_input| Data Format Input]]** option. 
 +    * **Retry times** Permits to specify the number of consecutive attempts in case of timeout or other kind of communication failure. 
 +    * **Timeout** Timeout of HTTP request in milliseconds. 
 +    * **Use credentials** Permits to use specific credentials to authenticate with the service to get the value of the input. 
 +    * **[[#data_format_input| Data Format Input]]** Opens the data format editor to customize both request and response parameters. 
 + 
 +In case the Input Mode was configured as TCP/UDP listener, the below parameters are available: 
 +    * **Listener protocol** Select the listener protocol between UDP and TCP. 
 +    * **Listener port** Select the number of the port to listen on for incoming data. 
 +    * **Separator** Select what kind of character separates data. 
 + 
 +\\ 
 + 
 +=== Data Format Input === 
 +This window permits to configure the request and response parameters to match the external service requirements.  
 + 
 +{{ :input_format_editor.png?direct&800 |Data Format Input - Overview}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Data Format Input - Overview </WRAP>  </WRAP> 
 +\\ 
 + 
 +Clicking on **Test Environment** will open a new window allowing the user to do a Local Test or Live Simulation to check the configuration in the previous window. 
 + 
 +{{ :ethgw_local_test_input.png?direct&800 |Data Format Input - Local Test}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Data Format Input - Local Test </WRAP>  </WRAP> 
 + 
 +==== Virtual Outputs ==== 
 + 
 +    * **URL** Endpoint address. Parameters are configured inside the **Data Format Input**. 
 +    * **Request Type** Choose the HTTP method to use between GET, POST, or PUT. 
 +    * **Use Specific Credentials** Specify username and password if required. 
 +    * **Timeout** Timeout of HTTP request in milliseconds. 
 +    * **Retry** In case of timeout or failure to send, specify the maximum number of consecutive attempts. 
 +    * **Refresh Rate** Specify the time interval after which the server should re-acquire data. 
 +    * **Send Trigger** Specify the kind of action that triggers the communication with the external service. 
 +    * **[[#data_format_output|Data Format Output]]** Opens the data format manager window. 
 +    * **Invoke Virtual Input**  
 +    * **Use KNX Gateway** if enabled, it will be possible to control the currently element directly from KNX. 
 +\\ 
 + 
 +=== Data Format Output === 
 + 
 +{{ :output_format_editor.jpg?direct&800 |Data Format Output- Overview }} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Data Format Input - Overview</WRAP>  </WRAP> 
 + 
 +{{ :output_format_editor2.jpg?direct&800 |Data Format Output- Simulation}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Data Format Input - Simulation</WRAP>  </WRAP> 
 + 
 +==== Example with Airscope Amplifier ==== 
 + 
 +In this example, we are using the Airscope Audio Network Amplifier and controlling it from the Thinknx UP application. The amplifier has an HTTP API that can be found on this link: http://airscope-audio.net/core2/pdf/airscope-module-http.pdf. 
 + 
 +{{ :ethernet_gateway_airscope.png?direct&800 |Communicating with Airscope over HTTP}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Communicating with Airscope over HTTP</WRAP>  </WRAP> 
 + 
 +=== Virtual Input: Get Volume from Airscope === 
 + 
 +According to section 2.3.1 of the Airscope manual (link above), the device will send the player's full status, including the current volume level, when it receives a GetPlayerStatus HTTP request as follows: 
 +\\ 
 + 
 +**<nowiki> http://[airscope_IP_address]/httpapi.asp?command=getPlayerStatus </nowiki>** 
 + 
 +\\ 
 +The response received from the Airscope device comes in a JSON format, following the example below: 
 + 
 +**{\\ 
 +“mainmode”: “0”,\\ 
 +“nodetype”: “0”,\\ 
 +“mode”: “3”,\\ 
 +“sw”: “0”,\\ 
 +“status”: “play”,\\ 
 +“curpos”: “12900”,\\ 
 +“totlen”: “229000”,\\ 
 +“Title”: “736865”,\\ 
 +“Artist”: “47726f6f766520436f766572616765”,\\ 
 +“Album”: “xxxxxxxxxx”,\\ 
 +“Year”: “2005”,\\ 
 +“Track”: “7”,\\ 
 +“Genre”: “Dance”,\\ 
 +“locallistflag”: “1”,\\ 
 +“locallistfile”: “”,\\ 
 +“plicount”: “1”,\\ 
 +“plicurr”: “1”,\\ 
 +“vol”: “90”, **//<color red> we need to read this one </color>// \\ 
 +**“mute”: “0”,\\ 
 +“iuri”: “xxxxxxxxxxxxxxxxxxxxx”,\\ 
 +“uri”: “xxxxxxxxxxxxxxxxxxxxxx”\\ 
 +}**\\ 
 + 
 +To configure the virtual input inside the Configurator, add the Ethernet Gateway, access the virtual Inputs window, and add a new Virtual Input. Follow the picture below to properly fill the fields requested. 
 + 
 +{{ :airscope_vi_volume.png?direct&800 |Volume Virtual Input}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Volume as Virtual Input</WRAP>  </WRAP> 
 + 
 +Open the Data Format editor, and make sure you configure the request and response formats as instructed in the amplifier's manual: 
 + 
 +{{ :airscope_vi_format.png?direct&600 |Volume Virtual Input Format}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Volume Virtual Input Format</WRAP>  </WRAP> 
 + 
 +To display the current volume level on the Thinknx UI, you can add an Analog Value with type "Slider" and use it to both display and change the volume level, as seen in the picture below: 
 + 
 +{{ :airscope_getVolume.png?direct&800 |Display Volume on UI}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Display Volume on UI</WRAP>  </WRAP> 
 + 
 +=== Virtual Output: Change Volume from Thinknx UI === 
 + 
 +According to section 2.3.9 of the Airscope manual (link above), it is possible to set the volume level on the amplifier by sending the following HTTP request:  
 +\\ 
 +**<nowiki> http://[airscope_IP_address]/httpapi.asp?command=setPlayerCmd:vol:value </nowiki>**  where value can be from 0 to 100.  
 +\\ 
 + 
 +To configure the virtual output inside the Configurator, access the virtual Outputs window inside the Ethernet Gateway, and add a new Virtual Output. Follow the picture below to properly fill the fields requested. 
 + 
 +{{ :airscope_vo_volume.png?direct&800 |Volume Virtual Output}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Volume as Virtual Ouput</WRAP>  </WRAP> 
 + 
 +Open the Data Format editor, and make sure you configure the request format correctly, by replacing the word "value" in "setPlayerCmd:vol:value" by %VOL, which will correspond to the value sent by the volume slider on the Thinknx UI. 
 + 
 +{{ :airscope_vo_format.png?direct&600 |Volume Virtual Output Format}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: Volume Virtual Ouput Format</WRAP>  </WRAP> 
 + 
 +To change the current volume level from the Thinknx UI, you can use the same Slider added in the section above, and link the Slider "Command" parameter to the the volume virtual output created in the Ethernet Gateway. 
 + 
 +{{ :airscope_setVolume.png?direct&800 |Change Volume from UI}} 
 +<WRAP center 60%> <WRAP centeralign> Figure: change Volume from UI</WRAP>  </WRAP>
  
 ==== Object commands ==== ==== Object commands ====
Line 1653: Line 1986:
  
 ++++Make an HTTP POST call to a specified url with username and password| This command allows the sending of an HTTP POST request to send data to a certain sever in order to execute a command. The server in this case requires a username and password. ++++Make an HTTP POST call to a specified url with username and password| This command allows the sending of an HTTP POST request to send data to a certain sever in order to execute a command. The server in this case requires a username and password.
 +  * **URL**
 +  * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.
 +  * **Username** used the authenticate to the server.
 +  * **Password** used to authenticate to the server.
 +  * **Timeout for connection** in milliseconds, default 3000 ms.
 +++++
 +
 +++++Make an HTTP PUT call to a specified url| This command allows the sending of an HTTP PUT request to send data to a certain sever in order to execute a command.
 +  * **URL**
 +  * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.
 +  * **Timeout for connection** in milliseconds, default 3000 ms.
 +++++
 +
 +++++Make an HTTP PUT call to a specified url with username and password| This command allows the sending of an HTTP PUT request to send data to a certain sever in order to execute a command. The server in this case requires a username and password.
 +  * **URL**
 +  * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.
 +  * **Username** used the authenticate to the server.
 +  * **Password** used to authenticate to the server.
 +  * **Timeout for connection** in milliseconds, default 3000 ms.
 +++++
 +
 +++++Make an HTTP DELETE call to a specified url| This command allows the sending of an HTTP DELETE request to send data to an external server.
 +  * **URL**
 +  * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.
 +  * **Timeout for connection** in milliseconds, default 3000 ms.
 +++++
 +
 +++++Make an HTTP DELETE call to a specified url with username and password| This command allows the sending of an HTTP DELETE to an external server. The server in this case requires a username and password.
   * **URL**   * **URL**
   * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.   * **Content to send into call** multiple form fields and values can be sent via the same URL. The encoding used by default is based on an early version of the general URI percent-encoding rules, with a number of modifications such as newline normalization and replacing spaces with + instead of %20. The media type of data encoded this way is application/x-www-form-urlencoded.
Line 1761: Line 2122:
 Serial interface available in the new meters in the Netherlands. Serial interface available in the new meters in the Netherlands.
  
-  * **Serial port number** Number of the serial port used to connect the meter box.+  * **Serial port number** Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
   * **KNX gateway** If enabled, the data read from the meter box will be available also on the KNX bus. If ”KNX gateway” is set to ”Enabled”, the following properties will appear:   * **KNX gateway** If enabled, the data read from the meter box will be available also on the KNX bus. If ”KNX gateway” is set to ”Enabled”, the following properties will appear:
     * KNX group delivered energy normal tariff: KNX group delivered energy normal tariff.     * KNX group delivered energy normal tariff: KNX group delivered energy normal tariff.
Line 1831: Line 2192:
 If the “Test type” is set to “Ping KNX Device” the following property will appear: If the “Test type” is set to “Ping KNX Device” the following property will appear:
   * **KNX Physical Addr.** KNX physical address of the test target   * **KNX Physical Addr.** KNX physical address of the test target
 +
 +===== OpenWeatherMap =====
 +
 +{{ :weather_32x.png?nolink&50 |}}
 +
 +<WRAP important round center 80%> This object is different from the [[inter_objs#weather| Weather Plugin]] available for the UI. While The **Weather Plugin** is an Interface object that reads the weather information from www.ilmeteo.it and cannot be customized, the **OpenWeatherMap** is a System object connected to www.openweathermap.org and provides weather information that can be linked to any customized UI built by the integrator. </WRAP> 
 +This object connects to www.openweathermap.org servers to retrieve weather information. It is enough that the integrator subscribe to the website with a free account, and copy their default API key (or create a new API key).
 +
 +  * **API Key** API key taken from the user account created on www.openweathermap.org. Sign in, go to User Profile, click on My API Keys, and copy the default key. It is also possible to create as many additional key as possible.
 +{{ :openweatherapi_1.png?direct850 |How To Copy API Key from OpenWeatherMap }}
 +<WRAP center 60%> <WRAP centeralign> How To Copy API Key from OpenWeatherMap </WRAP>  </WRAP>
 +  * ** Use System Position** When enabled, the location (latitude, longitude) will be automatically acquired by the main System object properties. If disabled, enter Latitude and Longitude in parameters below.
 +  * **Latitude** Latitude of the location for which the user would like to read the weather information.
 +  * **Longitude** Longitude of the location for which the user would like to read the weather information.
 +  * **Language** Display language of retrieved data.
 +  * **Unit of Measure** Unit of measure used to display retrieved weather data such as temperatures.
 +  * **Max. Calls Every Hour** Maximum number of requests to the weather system per hour.
 +  * **Alerts** Permits to create alert events in case of predefined weather condition.
 +  * **KNX Gateway** If enabled, allows the user to assign KNX group addresses to OpenWeatherMap data, and use them in the local system.
 +
 +==== Alerts ====
 +Each weather alert created (example: If there is rain within 1 day, block irrigation program), can be configured using the following parameters:
 +  * **Measurement to consider** Choose between Rain, Temperature or Window Speed alert trigger.
 +  * **Comparison Interval** Specify the time interval that will be considered to evaluate the alert condition. The system will compare all the forecast for the selected interval with the threshold value.
 +  * **KNX Alert Group** KNX group to send alert (1 bit telegram).
 +  * **Value during alert** Value to send on the KNX bus when the weather condition meets the configured alert.
 +  * **Value not in alert** Value to send on the KNX bus when the weather condition doesn't meet the configured alert.
 +
 +==== Creating the UI ====
 +Once the weather object has been configured in the System window, a weather UI should be created using the Generic Commands, Analog Values, and/or Extended Commands. A large list of commands can be linked to these bottoms by simply accessing the Command window. The user has the choice to select the command related to a **specific** day, for example, "read today's temperature" or "get tomorrow's wind speed", or configure one **dynamic** command that can change its status depending on the selected day in the UI. 
 +
 +{{ :openweatherapi_3.png?direct800 |Normal View}}
 +<WRAP center 60%> <WRAP centeralign> Normal View </WRAP>  </WRAP>
 +
 +{{ :openweatherapi_2.png?direct850 |Dynamic View }}
 +<WRAP center 60%> <WRAP centeralign> Dynamic View </WRAP>  </WRAP>
 +
 +Click on the button below to download a project template for both options:
 +<WRAP button centeralign> \\ {{:weather_template_clients.zip|Download Template}}</WRAP>
 +
 + 
 +===== MQTT Server =====
 +
 +{{ :mqtt_32.png?nolink&50 |}}
 +
 +This object allows the Thinknx server to function as an MQTT broker. For more information, please visit our detailed [[mqtt| guide on MQTT integration]].
 +
 +===== MQTT Client =====
 +
 +{{ :mqtt_32.png?nolink&50 |}}
 +
 +This object allows the Thinknx server to act as an MQTT client to read or publish information from/to other MQTT clients. For more information, please visit our detailed [[mqtt| guide on MQTT integration]].
 ====== Multimedia ====== ====== Multimedia ======
 ===== Video Matrix ===== ===== Video Matrix =====
Line 1850: Line 2263:
      * IP address: Device IP address.      * IP address: Device IP address.
      * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:      * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:
-     * Serial port: Server serial port number.+     * Serial port: Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
  
 ==== Object commands ==== ==== Object commands ====
Line 1887: Line 2300:
     * IP address: Device IP address.     * IP address: Device IP address.
     * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:     * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:
-    * Serial port: Server serial port number.+    * Serial port: Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
   * **Mute KNX Group** KNX group for mute command.   * **Mute KNX Group** KNX group for mute command.
  
Line 1930: Line 2343:
     * //TV brand LCD//     * //TV brand LCD//
     * //TV brand NEC//     * //TV brand NEC//
-  * **Serial port** Server serial port number.+  * **Serial port** Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
  
 ==== Object Commands ==== ==== Object Commands ====
Line 1972: Line 2385:
     * IP address: Device IP address.     * IP address: Device IP address.
     * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:     * Port number: TCP/IP port number for ethernet connection.\\ If the property ”Use serial port” is set to ”Enabled”, the following property will be displayed:
-    * Serial port: Server serial port number.+    * Serial port: Serial port number that changes depending on the server used. Click [[port_numbers| here]] to get the correct port number.
  
 +<WRAP important center round 80%> When using Denon as AVR, it is necessary to disable Power Saving in the receiver's menu to be able to send/read commands. The option is available under "Manual Setup > Network Setup > Other > Power Saving" </WRAP>
  
 ==== Object commands ==== ==== Object commands ====
Line 2218: Line 2632:
  
 This object represents the complete integration of Sonos systems in ThinKnx, it allows to control and receive feedbacks from Sonos players directly through network without creating more traffic on KNX. In this way, all the commands and feedbacks can be available on KNX only if the installer really need them. This object represents the complete integration of Sonos systems in ThinKnx, it allows to control and receive feedbacks from Sonos players directly through network without creating more traffic on KNX. In this way, all the commands and feedbacks can be available on KNX only if the installer really need them.
 +
 +<WRAP important center align round 80%> This object is currently tested with Sonos S1 system. For more information on S2, contact our support team. </WRAP>
  
   * **Players** Sonos players configured in ThinKnx system.   * **Players** Sonos players configured in ThinKnx system.
Line 2371: Line 2787:
  
 === Link command to an imported list === === Link command to an imported list ===
-<WRAP important round center 80%> It is important to have the remotes files saved into the remote directory selected previously. In case of a Global Caché remote file, please remove the extension ".txt" from the file's name. </WRAP>+<WRAP important round center 80%> It is important to have the remotes files saved into the remote directory selected previously.    
 +  * In case of a Global Caché remote file, please remove the extension ".txt" from the file's name. 
 +  * In case of IR Trans remote file, make sure to place the ".rem" file containing the commands inside a folder under the selected directory. 
 + </WRAP>
   * **Remote** Select the remote file available in the directory configured under "Remotes Directory". Make sure that "Check for Update" is enabled.   * **Remote** Select the remote file available in the directory configured under "Remotes Directory". Make sure that "Check for Update" is enabled.
   * **Command** Select the IR command from the remote selected in the previous field.   * **Command** Select the IR command from the remote selected in the previous field.
  • system_objs.1574157315.txt.gz
  • Last modified: 2019/11/19 10:55
  • by ingrid