--- title: "Sonos and KNX: map commands and feedback to group addresses" description: "Control a Sonos speaker from the KNX bus with Link’nX: play, pause, volume, mute and status feedback, with the expected DPT for each group address." canonical: https://wiki.can-nx.com/en/guides/link-sonos-gateway/ language: en product: Link’nX audience: - administrateur - installateur context: "Link’nX web: KNX gateway table of a declared Sonos device" --- # Sonos and KNX: map commands and feedback to group addresses Context: Link’nX web: KNX gateway table of a declared Sonos device The Sonos gateway table in Link’nX maps the group addresses of your KNX project to the commands of a Sonos speaker (play, pause, track, volume, mute) and to its status feedback (volume, mute, current track). A KNX push button can then control the speaker directly, without going through a scenario. Intended for installers and administrators who have the KNX project. To chain several commands or group speakers, use the [Sonos scenario actions](https://wiki.can-nx.com/en/guides/link-sonos-action/) instead. ## Before you start - The speaker is [declared in Link’nX](https://wiki.can-nx.com/en/guides/link-sonos-device/). - The group addresses and their DPTs are defined in the KNX project (see the tables below). ## Open the speaker’s gateway table In **Sonos**, find the device row and click the **two opposite horizontal arrows**, **Gateway mode configuration**. The table applies to this device only. Its common behavior (filter, activation, saving) is described in the [gateway table guide](https://wiki.can-nx.com/en/guides/link-gateway-table/). ## Map the KNX commands 1. In **Actions**, choose the functions to control using the table below. 2. Fill in their **Address**, then check **Active**. 3. Save the tab with the **floppy disk** and wait for **Données sauvegardées avec succès !** (Data saved successfully!). Commands in DPT **1.001** are pulses: the bus must write the value **1**. A value **0** does not trigger the opposite command. To pause or unmute, map the corresponding row, for example **Pause** or **Unmute**, also with a pulse at 1. | Command rows | DPT | Value to send | | --- | --- | --- | | **Play**, **Pause**, **Stop**, **Next track**, **Previous track** | 1.001 | Pulse at 1 | | **Mute**, **Unmute**, **Toggle mute/unmute** | 1.001 | Pulse at 1 | | **Toggle play/pause** | 1.001 | Pulse at 1; alternates between ongoing playback and a paused track | | **Play optical** | 1.001 | Pulse at 1, on a compatible source and device | | **Leave group** | 1.001 | Pulse at 1; makes this device leave its group | | **Volume +/-** | 6.010 | Signed offset from -100 to 100 | | **Set volume** | 5.001 | Level from 0 to 100% | Both volume commands unmute the sound before applying the level. If the optical compatibility of the installation is not known, have the installer check it before using **Play optical**. The rows **Join group**, **Play favorite** and **Play from URL** require a specific configuration: contact support before activating them in this table. To group speakers, the [Sonos scenario actions guide](https://wiki.can-nx.com/en/guides/link-sonos-action/) explains how to select several devices. ## Map the status feedback 1. Open the **second tab**, marked with a speech bubble. 2. Map the desired rows to their read addresses and check **Active**. 3. Save this tab. | Feedback row | DPT | Information returned | | --- | --- | --- | | **Get volume** | 5.001 | Current volume level | | **Mute state** | 1.001 | Mute state: 1 on, 0 off | | **Status of the current track** | 16.001 | Text state of playback | | **Current track** | 16.001 | Track title | Sonos feedback answers a **KNX read request** on its active address: it provides neither a live display nor a permanent spontaneous update. Texts in DPT 16.001 are limited to 14 bytes, which is not enough to show a long title in full. For a more precise status display, another text length or a periodic refresh, have the configuration set up with support. ## Check the result **Données sauvegardées avec succès !** confirms that the mappings are saved, not their effect on the speaker. Then send each command from the bus, for example with a push button or the ETS group monitor, and watch the speaker. For feedback, send a read request on its address. ## Troubleshooting - Check the device, the **Address**, the **Active** checkbox and the DPT of the object in the KNX project. - A pulse command only reacts to the value 1. - Do not give the same address to several different Sonos mappings. For other symptoms, follow the [Sonos troubleshooting guide](https://wiki.can-nx.com/en/guides/link-sonos-help/). If the problem persists, contact support@can-nx.com.