Automatizări cu standardul KNX

Download here

This module can help stopping telegram storms generated by logic plus central addresses loops. I found this happening with the module 19004 (Position display for shutters (with additional positioning input) and template 1-107 (Shutters Awnings Roof window) from Quad Client. The documentation of this template requires to have the status output as a central address for positioning input. Then after the status output changes based on positioning input a telegram storm starts repeating the same command over and over. Therefore, I needed to insert a SBC forwarder somewhere in the loop to stop this storm and let only changes to take place


At every Signal input telegram, the input value is memorized. If the input value is different than the previous value that was memorized, then it is sent by the A1 output.


Input Init Description
Input 1 0 Analog signal to be processed (float)


Output Init Description
Output 1 … (Send) 0 Same as input signal value


Recalculation during start: No  
Module is retentive: No  
Internal name: 16571  


The module is categorised in the “Expert” in the „Additional Modules“ category.

Luna aceasta a fost deschis primul centru de instruire KNX din România. Din informațiile mele primele cursuri se vor ține la prețuri promoționale. Sperăm ca centrul de instruire să se bucure de succes și să impulsioneze comunitatea și proiectele KNX din România.

Puteți consulta prezentarea centrului de instruire mai jos

[gview file=” Trainig Center KNX .pdf”]

O reclamă frumoasă despre integrarea dintre Gira HomeServer 3 și Apple.

Tags: , ,

After some more work I came up with a better solution written on C# by using Open Software’s UPnP stacks. The advantage is that the whole solution is installable and works out of the box.

Every user is only responsible to edit the UniqueDeviceNames.ini file in a proper way. We assist this step too.

What you need

  1. A KNX installation and properly defined group addresses (see [commands list] section of the ini file). Also you need a KNX/IP interface to be able to transmit selected KNX telegrams via IP network. In particular, a Gira HomeServer can perform this function.
  2. A Sonos system. We will discover all online ZonePlayers and put them in a text file for your convenience. Do not mind anymore the complicated IDs, will use only friendly names as you see them in the original Sonos Controlles.
  3. A Windows box with Microsoft .NET Framework 2.0
  4. The Sonos KNX interface Setup v1.0.0 kit from here. PLEASE DO NOT INSTALL THIS VERSION ANYMORE! CHECK BELOW FOR UPDATES!

How to install

  1. Double click on setup.exe and follow the directions on the screen. Accept all security warnings (windows and firewall). Remember the installation folder location.
  2. Go to computer management, expand Services and look for SonosHS service. Start it (only once, the service is set to automatic startup for the future)
  3. in about 30 seconds a filename UniqueDevicesNames.txt will be written in the installation folder. Check this file to make sure you use the proper Zone Players friendly names in the next step
  4. edit the file UniqueDevicesNames.ini and make sure to use proper group addresses and zone player names in sections [map_to_zone] and [map_to_command]. For a list of available zones see UniqueDevicesNames.txt and for a list of available commands see the [commands list - this section is only informative] section. Also make sure you input proper IP and port addresses for the KNX IP interface.
  5. save the ini file. there is no need to restart the service, all should work from now on

How to debug

Stay tuned, I will post a Windows form application with identical functionality soon. Just look at the form and see if you can properly receive the KNX telegrams. The source code (VS2010 solution) is available upon request.

Known issues

  1. if you add a Zone Player after the service starts, this Zone Player will not be visible to the interface until the service SonosHS is restarted (or the computer is restarted)
  2. not all commands are implemented at this moment
  3. there is no feedback implemented from Sonos to the KNX
  4. the solution requires some CPU and memory optimization


UPDATE 22/10/2010

Here are the new setup kits for version 1.0.2. See below change log for more information

  1. Windows service setup kit
  2. Windows application setup kit



As a big surprise I discovered the UPnP plugins for Gira HomeServer QuadClient from the latest buid of Expert software in conjunction with QuadClient 1.2 as a client is able to control most of the functionality of the Sonos system.


  • There is still no access to music services such as internet radio, deezer or local audio plugs at the zone player. While every zone player is visible as a media server and all these services are listed, they come empty and there is no command to refresh their content.
  • There is no linking and unlinking commands for zone players.

How to install and configure

Just add UPnP Media Server plugin in Quadrant 3 and UPnP Media Renderer plugin in Quadrant 4 so both can be visible in the QuadClient at the same time.

Configure the UPnP Media Server plugin to hide all Sonos Zone Players since there is no much benefit to use them as servers. Let all other media servers visible (such as windows computers, nas media servers, etc)

How to operate

Display both media servers and media renderers quadrants at the same time. On the media renderer pane display your preffered Sonos Zone Player or local QC player (which integrates the computer’s media player). Access your desired media server and select your music. Click play and the music becomes live.

iPod, iPhone, iPad?

Sadly, the UPnP media plugins cannot be exported yet for the iOS apps clients.

Tags: , ,

This project occupies my mind for some time and recently I got closer to a working solution. Actually I already have something working in place but at this stage the solution looks quite ugly and I would not recommend it but only for the very enthusiastic users of KNX, Sonos and Gira HomeServer. You should have a Windows based computer in your network to run the solution.

Credit: most of the code is reused from the following sources:

If you want to replicate the solution you should follow these steps:

on the Gira HomeServer

  • in Experte software create some group addresses to control your Sonos zone players. Mark Send communication object for those group addresses so values will be sent through the KO Gateway (in the IP network)
    • type 1 bit for transport commands: play(1)/stop(0), pause(1), next(1)/previous(0), mute(1)/unmute(0)
    • type 8bit-EIS6 – percent (0-100%) for volume commands
  • If you use QuadClient you can place new controls for audio commands in the rooms coresponding to zone player locations. I used the Set Value – percent control to adjust the volume. You can also assign in ETS3 any pushbuttons to change the group address value for volume control. Remember to note which group address corresponds to which zone player – you need it later to build the UniqueDeviceNames.ini file
  • do not forget to enable the Communication Gatweway in Project settings and to use the default port 7003

on your Windows machine

  • download Olser’s code from…856041&start=0 and install the wshell scripts ZonePlayerController.wsc and ZonePlayerFinder.wsc (update: now I included them in the zip archive)
  • Download and place ZPCMD.exe file in the root folder (C:\).
  • Follow Olser’s instructions to detect the zone players in your installation. You will get a file named UniqueDeviceNames.txt in your root folder. This is how this file looks like:

Portable: uuid:RINCON_000E5851565201400
Dining Room: uuid:RINCON_000E5830093201400
Patio: uuid:RINCON_000E58133EE401400
Guest Room: uuid:RINCON_000E58233A4601400
Living Room: uuid:RINCON_000E58234DF001400
Master Bedroom: uuid:RINCON_000E5821CE0001400

  • Create a file named UniqueDeviceNames.ini in the root folder by editing the UniqueDeviceNames.txt file with the following structure

  • Please note that the [HS] section states your HomeServer IP address, port and secret key in order to communicate with the Gira HomeServer. Then the other sections relate your KNX group addresses to the Sonos zone players IDs found in the UniqueDeviceNames.txt file
  • Place the SonosHS.exe (REMOVED, see newer posts) file in a place of convenience (if you want use root folder as well)
  • Make sure you have installed the .NET framework v4 and open a cmd prompt windows as an administrator
  • Run this command: C:\Windows\Microsoft.NET\Framework\v4.0.30319\installutil.exe c:\sonoshs.exe in order to install the windows service named SonosHS
  • Go and start the windows service (this is only necessary after installation, it will start automatically after any reboot)
  • Go ahead and control your zone players from your KNX devices. Please keep an eye for firewall warnings and allow SonosHS to connect and access the disk system. Save those confirmations in your firewall rules.

Please note this is a very incipient implementation and is not very well tested. There is a limitation that you need to provide audio content for your player beforehands, from this solution you can only control the volume and the transport commands of the player. You can use the project posted at the end of the article to modify it and get your own implementation.

This is my current TODO list for next versions:

  • integrate the ZonePlayerController.wsc code inside the C# project and remove the need to register a separate component
  • integrate the ZonePlayerFinder.wsc into a proper setup solution and generate automatically the UniqueDeviceNames.ini file
  • place all files in an appropriate location into the computer program files
  • integrate the watch functionality for automated feedback to the HS (now the communication is only unidirectional)

Please note that this would be a less desired solution at least for the visualisation part. The best solution would be to generate a whole new plugin for QuadClient in order to control all Sonos installation from the HomeServer itself. Gira already provides such plugins for several multiroom audio systems and may have plans to add Sonos on the list. Or not. Until then I will stick with this solution. Update: I just tested the new Expert 2.5 plus 2.5 firmware and it appears the UPnP plugins in Quad Client work just fine with the Sonos system. I will post a new article about that. Still the project presented here is useful if you want to control the Sonos zone players from the KNX devices through group addresses and integrate music in scenes and so on.

The source code

The source code can be found here (REMOVED, see newer posts). I cannot provide any support at this stage, posted information is just for community preview.


The solution as a windows form application (REMOVED, see newer posts)(using Dacom’s HSMonitor interface)

The complete setup package (REMOVED, see newer posts) for the Windows service: installs, starts, generates device names – read the comments for more info


Ca o noutate semnalăm apariția aplicației Gira HomeServer în format HD pentru Apple iPad. La fel ca și varianta anterioară nu se configurează decât profilele de utilizatori și aplicația permite controlul instalației KNX imediat ce este lansată.

Spre deosebire de varianta pentru iPhone, în această variantă se obține automat acces la toate cvadrantele rotind iPad-ul în poziția vedere (landscape) și la menu rotindu-l în poziția portret. O a doua deosebire constă în faptul ca varianta pentru iPhone are interfață în limba română, cea pentru iPad o are în limba engleză, fapt pentru care încă nu putem oferi nici o explicație.

Deosebit de utilă mi se pare funcția sonoră care se execută la apăsarea oricărui buton. Acest scurt click crează o senzație foarte plăcută de siguranță în utilizare.

Vizionați mai jos o galerie de imagini dintr-o instalație reală. Faceți click pe orice imagine pentru a lansa vizualizarea la rezoluția originală.


« Older entries