Sonos · KNX · Home Assistant · 8 min de lecture

Sonos Audio Multiroom + Intégration KNX via Home Assistant

Sonos is the de-facto standard for multi-room audio in European KNX smart homes — not because it speaks KNX, but because it doesn't need to. Home Assistant acts as the bridge, translating KNX group address telegrams into Sonos local API calls without any cloud dependency.

Sélection de produits Sonos pour projets KNX

Le choix du bon appareil Sonos pour chaque zone détermine la qualité audio, la complexité d'installation et la méthode d'intégration. Le tableau ci-dessous couvre tous les produits Sonos actuels pertinents pour les installations KNX résidentielles et hôtelières.

ModèleMeilleure zoneCaractéristique cléRemarques
Era 300Salon / espace ouvertAudio spatial (Dolby Atmos)Meilleur enceinte autonome pour grandes pièces
Era 100Chambre / cuisineCompact, double tweeterRemplace One – zone secondaire idéale
ArcSalle TV / cinémaBarre de son Dolby AtmosHDMI eARC – s'associe au téléviseur via un relais KNX
Beam G2Zone TV compacteBarre de son, HDMI ARCPetites pièces ; bonne scène sonore
Move 2Terrasse / portableBatterie 24h, IP56, Wi-Fi + BTAucun haut-parleur passif nécessaire à l'extérieur
RoamZone jardin / piscineIP67, batterie 10h, socle de chargeVéritablement étanche – pour piscine ou jardin
AmpZones de haut-parleurs passifs2× 125W, Ethernet, entrée ligneAlimente des haut-parleurs 8Ω existants encastrés au plafond

Fonctionnement de l'API Sonos locale

Sonos exécute une pile UPnP locale sur chaque appareil. Aucun abonnement cloud n'est requis pour le contrôle LAN – l'API HTTP Sonos répond sur le port 1400 et est détectable via mDNS (Bonjour). Home Assistant trouve automatiquement tous les appareils Sonos sur le LAN lors de la configuration ; aucune adresse IP ne doit être saisie manuellement.

Points de terminaison de l'API locale

  • • HTTP sur le port 1400 (SOAP/UPnP)
  • • Type de service mDNS : _sonos._tcp
  • • Fonctionne sur un LAN isolé (pas besoin d'internet)
  • • Abonnement aux événements via le port 3400
  • • L'intégration HA Sonos utilise l'API locale par défaut
  • • Response time: <100ms typical on same LAN

Configuration de l'intégration HA Sonos

  1. Activer la découverte dans HA (Paramètres → Intégrations)
  2. Sonos devices appear automatically under "Discovered"
  3. Click "Add" — no credentials needed
  4. Chaque enceinte Sonos devient une entité media_player
  5. Configurez les noms de zones pour qu'ils correspondent aux étiquettes des pièces
  6. L'intégration KNX s'installe séparément (même instance HA)

KNX → Sonos : exemples d'automatisation

Les automatisations suivantes couvrent les cas d'utilisation les plus courants de Sonos déclenchés par KNX dans les projets résidentiels. Toutes utilisent le format d'automatisation YAML de Home Assistant et nécessitent que les intégrations KNX et Sonos soient actives dans HA.

1. KNX binaire ON → Sonos Salon jouer la playlist Spotify

automation:
  - alias: "KNX Living Room audio ON"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "1/0/0"    # KNX binary DPT 1.001
          value: true
    action:
      - service: media_player.play_media
        target:
          entity_id: media_player.living_room
        data:
          media_content_id: "spotify:playlist:37i9dQZF1DX4sWSpwq3LiO"
          media_content_type: music
      - service: media_player.volume_set
        target:
          entity_id: media_player.living_room
        data:
          volume_level: 0.35

2. 'Dinner' KNX scene → Sonos volume 30%, play Jazz radio

automation:
  - alias: "KNX Dinner scene → Jazz radio"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "4/0/2"    # KNX scene DPT 18.001, scene value 4
    action:
      - service: media_player.volume_set
        target:
          entity_id: media_player.dining_room
        data:
          volume_level: 0.30
      - service: media_player.play_media
        target:
          entity_id: media_player.dining_room
        data:
          media_content_id: "https://jazz24.org/jazz24-256k.mp3"
          media_content_type: music

3. 'Departure' KNX binary → pause all Sonos + cut TV power

automation:
  - alias: "KNX Departure → pause audio + TV off"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "4/0/9"    # Departure binary DPT 1.001
          value: true
    action:
      - service: media_player.media_pause
        target:
          entity_id: all            # pause every Sonos speaker
      - service: knx.send
        data:
          address: "2/0/5"          # KNX relay: TV power off
          payload: false

4. Déclenchement alarme Ajax → toutes les zones jouent l'alarme à 100%

automation:
  - alias: "Ajax alarm → Sonos full-volume alarm"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "3/0/0"    # Ajax alarm zone, DPT 1.001
          value: true
    action:
      - service: media_player.volume_set
        target:
          entity_id: all
        data:
          volume_level: 1.0
      - service: media_player.play_media
        target:
          entity_id: all
        data:
          media_content_id: "http://192.168.1.10/media/alarm.mp3"
          media_content_type: music

5. Sonnette invité → carillon dans la cuisine et le salon

automation:
  - alias: "Doorbell → Sonos chime"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "0/0/10"   # Doorbell binary DPT 1.001
          value: true
    action:
      - service: media_player.play_media
        target:
          entity_id:
            - media_player.kitchen
            - media_player.living_room
        data:
          media_content_id: "http://192.168.1.10/media/chime.mp3"
          media_content_type: music

Sonos → KNX : pousser le morceau en cours sur l'écran Gira

Les écrans tactiles Gira X1 et G1 affichent les valeurs de chaîne KNX DPT 16.001. L'automatisation ci-dessous envoie le nom de l'artiste et le titre actuels à une adresse de groupe KNX à chaque changement de média lu – ainsi le panneau de la pièce affiche toujours ce qui est joué.

Morceau en cours → adresse de groupe KNX DPT 16.001

automation:
  - alias: "Sonos now-playing → KNX string"
    trigger:
      - platform: state
        entity_id: media_player.living_room
        attribute: media_title
    action:
      - service: knx.send
        data:
          address: "1/0/50"        # DPT 16.001 — 14-char string max
          payload: >
            {{ state_attr('media_player.living_room', 'media_artist')
               | truncate(6, True, '') }} -
            {{ state_attr('media_player.living_room', 'media_title')
               | truncate(6, True, '') }}

KNX DPT 16.001 prend en charge 14 caractères maximum (encodage ISO 8859-1). Tronquez l'artiste et le titre pour les adapter. Pour les chaînes plus longues, utilisez DPT 16.000 (ASCII) ou les objets d'affichage propriétaires Gira si disponibles sur le firmware de l'écran tactile.

Regroupement Sonos depuis KNX

When a 'Party' KNX scene fires, all speakers should play the same source in sync. Thesonos.joinHA regroupe les enceintes sous un coordinateur (la première entité) en quelques millisecondes.

Scène KNX Party → groupe salon + cuisine

automation:
  - alias: "KNX Party scene → Sonos group"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "4/0/5"    # Party scene DPT 18.001
    action:
      - service: sonos.join
        data:
          master: media_player.living_room
          entity_id:
            - media_player.kitchen
            - media_player.dining_room
            - media_player.terrace
      - service: media_player.volume_set
        target:
          entity_id: media_player.living_room
        data:
          volume_level: 0.50

Contrôle du volume multiroom depuis KNX

KNX envoie le volume soit sous forme d'un flottant 2 octets (DPT 9.001, plage 0–100) soit d'un pas relatif 1 octet (DPT 5.001, plage 0–255 → 0–100%). Les deux sont pris en charge :

Volume KNX → Sonos (absolu + relatif)

automation:
  - alias: "KNX absolute volume → Sonos"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "1/0/20"   # DPT 9.001 float, 0–100
    action:
      - service: media_player.volume_set
        target:
          entity_id: media_player.living_room
        data:
          volume_level: "{{ trigger.event.data.value | float / 100 }}"

  - alias: "KNX relative volume step → Sonos"
    trigger:
      - platform: event
        event_type: knx_event
        event_data:
          destination: "1/0/21"   # DPT 5.001 relative, up/down
    action:
      - choose:
          - conditions:
              - condition: template
                value_template: "{{ trigger.event.data.value > 128 }}"
            sequence:
              - service: media_player.volume_up
                target:
                  entity_id: media_player.living_room
          - conditions:
              - condition: template
                value_template: "{{ trigger.event.data.value <= 128 }}"
            sequence:
              - service: media_player.volume_down
                target:
                  entity_id: media_player.living_room

Bibliothèque musicale locale : NAS, Plex, musique d'ascenseur

Sonos lit depuis n'importe quel partage SMB ou serveur Plex/Jellyfin sur le LAN sans accès Internet. Ceci est particulièrement utile pour la musique d'ambiance dans le hall d'un hôtel, les annonces en salle de conférence ou la musique d'ascenseur où une playlist fixe doit être diffusée 24h/24 et 7j/7 indépendamment de la connectivité Spotify.

Bibliothèque musicale NAS

  • Sonos → Paramètres → Ajouter une bibliothèque musicale
  • Parcourir le partage SMB sur le NAS
  • Indexation : automatique, ~1h pour 10 000 pistes
  • Lecture : LAN direct, pas de cloud

Plex Media Server

  • Installer Plex sur le NAS ou le serveur
  • Ajouter Plex comme service musical Sonos
  • HA : media_player.play_media avec URI plex://
  • Fonctionne hors ligne si le serveur Plex est sur le LAN

Hôtel / usage commercial

  • Musique libre de droits : Epidemic Sound, Artlist
  • Télécharger les pistes sur le NAS — aucun coût de streaming
  • Le planning KNX déclenche la playlist par zone
  • Différentes zones : hall, bar, restaurant, spa

Intégration audio dans votre tableau KNX

Nous concevons des tableaux avec des circuits d'alimentation Sonos Amp, des sorties relais KNX pour la commutation des amplificateurs et des sorties analogiques 0-10V pour le contrôle du volume – le tout pré-testé avant livraison.

Demander un devis →
Chargement...
Retour en haut