Skip to content

Control Sonos from KNX

Once a Sonos player is imported as a 1Home device, you can map its commands and status onto KNX group addresses

Table of contents

Add a Sonos mapping

Navigate to Integrations → KNX → Configure, find Bridge Devices to KNX section and click Configure. In popup click on + Add Device and select the Sonos player you want to map — the mapper shows the full list of status and command group objects listed above, ready to be assigned a group address.

Location of the KNX mapper under Settings → Integrations → KNX

For each group object you want to use, assign a KNX group address (and a gateway, if you have more than one). You do not need to assign all of them — unassigned group objects are simply inactive.

KNX mapper showing Sonos status and command group objects

What you can map

The 1Home KNX mapper exposes two kinds of group objects for each Sonos player: status objects that push Sonos state out to KNX, and command objects that take KNX writes and turn them into Sonos actions.

Status (Sonos → KNX)

These group objects send a value onto KNX whenever the corresponding state on the player changes. They can also respond to KNX read requests on their group address.

Group objectDPTNotes
Playback State1.0011 = playing, 0 = paused
Volume5.0010–100 %
Mute1.001Boolean
Shuffle1.001Boolean
Repeat1.001Boolean — repeat-all
Repeat One1.001Boolean — repeat-one
Crossfade1.001Boolean
Source Name16.001Music source (e.g. Spotify, Apple Music)
Source Service Name16.001Display name of the music service
Current Item Name16.001Current track or item name
Current Item Duration12.001Seconds
Current Item Offset12.001Current playback position in seconds
Next Item Name16.001Name of the next queued item

DPT 16 is limited to 14 characters

Source Name, Source Service Name, Current Item Name, and Next Item Name are sent as DPT 16.001 strings, which have a 14-character maximum. Longer names are truncated before being written to the bus.

Commands (KNX → Sonos)

These group objects receive a KNX write and trigger the corresponding action on the Sonos player.

Group objectDPTEffect
Play/Pause1.0011 plays, 0 pauses
Next/Previous1.0011 skips to next track, 0 returns to previous
Volume Absolute5.001Set volume to the written value (0–100 %)
Volume Relative3.007Adjust volume by the signed step (control + 3-bit step code)
Volume Increase/Decrease1.0071 steps volume up, 0 steps volume down
Mute/Unmute1.0011 mutes, 0 unmutes
Duck/Unduck1.0011 ducks for the configured duration, 0 restores immediately
Shuffle1.001Toggle shuffle
Repeat1.001Toggle repeat-all
Repeat One1.001Toggle repeat-one
Crossfade1.001Toggle crossfade

Trigger values for boolean commands

All boolean commands — the toggles (Shuffle, Repeat, Repeat One, Crossfade) and the combo controls (Play/Pause, Next/Previous, Mute/Unmute, Duck/Unduck, Volume Increase/Decrease) — can be configured on the mapping to fire on a KNX write of 1, a write of 0, or either. The default is either.

This is useful when a pushbutton sends both a press (1) and a release (0) on the same group address and you only want one edge to act — for example, "toggle shuffle on press, ignore the release", or "play on press, do nothing on release".

Volume step with KNX

The step size used by Volume Increase/Decrease is configurable per mapping, as a percentage of the 0–100 volume range. The default is 5 %.

Ducking with KNX

The duck duration is configurable per mapping, in seconds. The default is ten seconds.

Write 1 to the Duck/Unduck group address to drop the Sonos volume; the speaker holds the lowered level for the configured duration and then automatically restores the previous level. You don't need to send a separate write — that happens on its own.

If you want to cut the ducking short, write 0 to the same Duck/Unduck group address.

Extend Sonos control with Automations

A handful of Sonos capabilities are reachable from automations but not from the KNX mapper directly — there is no KNX group object for them:

  • Load Favorite / Load Playlist
  • Modify Group Members
  • Play Audio Clip / Play Custom Audio Clip
  • Seek / Seek Relative

For these, trigger an automation from KNX (for example, via a group-address trigger) and call the action from inside the automation. See Working with KNX in Automations for that pattern.