Sonos Play:1 und FHEM – Sound im ganzen Haus

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Multiroom-Audio darf eigentlich in keinem Smart Home fehlen. Leider ist gerade die Nachr√ľstung schwierig, da ben√∂tigte Kabel nachtr√§glich oftmals nur mit gro√üem Aufwand installiert¬†werden k√∂nnen.¬†Sonos bietet¬†mit seinen per WLan angebundenen¬†Lautsprechern eine praktische¬†Alternative, die sich zudem perfekt in FHEM integrieren l√§sst.

Was die Sonos Play:1-Lautsprecher so alles k√∂nnen¬†und wie man praktische¬†Funktionen¬†√ľber¬†FHEM automatisieren¬†kann, um neben gew√∂hnlicher Musikwiedergabe bspw. auch Sprachausgabe zu realisieren, ist Inhalt des nachfolgenden Blogposts.

Sonos Play:1 – Ausgepackt und installiert in f√ľnf Minuten

Wer die¬†Sonos Play:1-Lautsprecher, welche in¬†schwarz (Affiliate-Link)¬†und¬†weiss (Affiliate-Link) erh√§ltlich sind, aus ihrer¬†Verpackung wuchtet, wird sicherlich erst einmal √ľber deren hohes Gewicht von knapp zwei¬†Kilo erstaunt sein.

Sonos Play1 Verpackung

Die recht schweren Boxen mit den geringen Abmessungen von 16,2 x 12 x 12 cm machen dabei nicht nur auf den ersten Blick eine gute Figur und einen wertigen Gesamteindruck.

Sonos Play1 schwarz mit Verpackung

Wesentlich wichtiger jedoch als die Optik ist nat√ľrlich der Sound der Lautsprecher. Also erst einmal die kostenlose¬†Sonos-App f√ľr iOS installieren und die gut bebilderte¬†Ersteinrichtung durchf√ľhren, um die Sonos Play:1 in Betrieb zu nehmen.

[app 293523031]

Sonos iPhone-App Ersteinrichtung

Die Sonos-App f√ľr Android ist √ľbrigens optisch fast identisch, hatte bei meinen Tests aber anfangs Probleme bei der Einrichtung.

Nach der Registrierung (E-Mail-Adresse wird ben√∂tigt) wird dann noch ein Firmware-Update durchgef√ľhrt, sodass nach sp√§testens f√ľnf Minuten alles korrekt eingerichtet¬†und betriebsbereit ist.

Sonos Firmware-Update

Die Einrichtung¬†wird dann¬†f√ľr jeden weiteren Lautsprecher¬†wiederholt, wobei sich die notwendigen Schritte drastisch¬†reduzieren, da die Grundeinstellungen (Account, WLan-Settings) dann automatisch √ľbernommen werden. Wer mehr als einen Lautsprecher pro Raum installieren m√∂chte, kann √ľber die App Stereo-Paare erzeugen, sodass immer zwei Lautsprecher als Team agieren.

Affiliate-Link

[easyazon_image align=“none“ height=“300″ width=“240″ identifier=“B00FSCNODU“ locale=“DE“ src=“https://www.meintechblog.de/wordpress/wp-content/uploads/affiliate/B00FSCNODU.png“ tag=“meintechblog-150729-21″ target=“_blank“ rel=“nofollow“>

Wird dann die Lautstärke an einem der verbundenen Lautsprecher geändert, zieht der zweite Lautsprecher automatisch nach. Im Bad reicht locker eine Box, das Schlafzimmer verträgt aber auch zwei Lautsprecher.

Sonos Play1 weiss

Sind alle zu installierenden Lautsprecher¬†an Ort und Stelle platziert, l√§sst sich √ľber die Sonos-App direkt lokal vorgehaltene¬†Musik oder auch ein Internetradio starten. Der Stream spielt dann praktischerweise einfach¬†weiter, sollte die App geschlossen werden. Auch lassen sich Gruppen bilden, sodass die selbe Musikquelle synchron bspw. im Bad und Schlafzimmer wiedergegeben wird. Eine Funktion, die man mit gew√∂hnlichem UPnP gew√∂hnlich nicht hinbekommt und quasi ein Alleinstellungsmerkmal von Sonos ist (wobei Apples AirPlay auch perfekt¬†funktioniert, gerade was die¬†synchrone Wiedergabe betrifft).

Sonos iPhone-App Internetradio

Wer¬†bereits etwas¬†√ľber die gute Klangqualit√§t der Sonos Play:1 gelesen hat (Quelle: audio.de), wird sicherlich mit einer gewissen Erwartungshaltung den ersten Stream starten und die Ohren genau spitzen. Mit gro√üer¬†Wahrscheinlichkeit wird man dann eine √úberraschung erleben, im positiven Sinne. Denn was¬†Sonos aus den kleinen¬†Play:1-W√ľrfeln zaubert, ist schlicht¬†grandios.

Neben glasklaren H√∂hen mischen sich satte B√§sse, die man bei einer¬†solch geringen Baugr√∂√üe kaum¬†erwarten w√ľrde. Auch bei hohen Lautst√§rken gibt es kein Zeichen von √úbersteuern, Krachen, Klirren oder unangenehmen¬†Frequenzverschiebungen.¬†Alles nat√ľrlich nur subjektiv, wobei bei solchen Dingen bin ich grunds√§tzlich recht¬†anspruchsvoll.

Aber auch bei geringer Lautstärke machen die Zweiwege-Monitore eine gute Figur, wobei Рwie bei fast allen Aktivlautsprechern Рein leiser hochfrequenter Piepton wahrnehmbar ist, sobald man seine Ohren direkt vor die im Standby befindlichen Lautsprecher parkt. Das ist wirklich nicht störend, sollte bei dieser Preisklasse meiner Meinung nach dennoch nicht vorkommen.

Alleine¬†aufgrund der einfachen Einrichtung und des hohen¬†Spa√üfaktors¬†erf√ľllen¬†die Sonos Play:1 (Affiliate-Link) eigentlich bereits alle Anforderungen an¬†ein gelungenes Multiroom-System, w√§re da nicht noch die umfangreiche FHEM-Integration, die den Spa√üfaktor noch ma√ügeblich¬†erh√∂ht.

Notwendig ist daf√ľr lediglich ein FHEM-Server, der, wie im Artikel FHEM-Server auf dem Raspberry Pi in einer Stunde einrichten beschrieben, mit √ľberschaubarem¬†Aufwand eingerichtet¬†werden kann.

Integration von Sonos in FHEM

Wie im¬†FHEM-Wiki¬†nachzulesen, m√ľssen f√ľr den Betrieb der Sonos-Lautsprecher auf dem¬†FHEM-Server erst einmal einige Softwarekomponenten nachinstalliert¬†werden. Also erst einmal per Terminal auf dem FHEM-Server (hier ein Raspberry Pi 2 (Affiliate-Link)) einloggen (Standardpasswort lautet „raspberry“):

ssh pi@192.168.3.97

und die notwendigen Befehle absetzen:

sudo apt-get update && sudo apt-get -y install libwww-perl libsoap-lite-perl libxml-parser-lite-perl

Jetzt fehlt nur noch der passende Eintrag in der fhem.cfg, um das Sonos-Modul zu aktivieren:

define Sonos SONOS localhost:4711 30 1 5

Und das war es auch schon.

Update vom 05.01.2016: Wer die Fehlermeldung „Cannot load module SONOS“ erh√§lt, muss noch ein fehlendes Perlmodul nachinstallieren. Unter wheezy ist¬†das¬†der Befehl:

sudo cpan SOAP::Lite

Nach der Eingabe kann es etwas dauern, also nur die Ruhe bewahren und abwarten. Im Anschluss dann den obigen „define Sonos…“ Befehl erneut in FHEM ausf√ľhren. Die Meldung „Cannot load module SONOS“ sollte jetzt nicht mehr auftauchen.

Innerhalb ein bis zwei Minuten¬†sollten alle im Netzwerk verf√ľgbaren Sonos-Lautsprecher im Raum „Sonos“ auftauchen. Der Status des SONOS-Moduls wechselt dabei vom Status „disconnected“ nach einiger Zeit automatisch auf „opened“.

FHEM Sonos Integration

Jetzt noch ein Klick auf „Save config“ und die neu eingerichteten¬†Ger√§te bleiben¬†permanent auch nach dem n√§chsten Neustart gespeichert.

Ab sofort lassen sich auch bereits erste Steuerbefehle absetzen und bspw. die Lautstärke verändern oder die Wiedergabe starten bzw. stoppen, was später noch relevant sein wird.

Weiterhin lassen sich √ľber einen Klick auf das Sonos-Device¬†dessen Readings anzeigen. Hier reichen die verf√ľgbaren Informationen vom aktuellen Status (transportState) √ľber aktuelle Einstellungen f√ľr Balance und Bass bis hin zur¬†URL des aktuellen Radiosenders (currentTrackURI).

FHEM Sonos Readings

Auch werden¬†im „Event Monitor“ die¬†Benutzerinteraktionen beim Druck auf eine der drei¬†Tasten der Sonos Play:1 ohne Zeitverz√∂gerung¬†angezeigt, welche f√ľr erweiterte¬†Schaltvorg√§nge genutzt werden k√∂nnen.

FHEM Eventmonitor Sonos

Automatische Musikwiedergabe bei Anwesenheit

Die Sonos-Lautsprecher lassen sich bereits standardmäßig recht einfach per Sonos-App, FHEM-Interface und durch die integrierten Tasten auf deren Oberseite bedienen.

Sonos Play1 Tasten

Durch FHEM lassen sich aber auch weitere¬†nette Spielereien realisieren, sodass bspw. der Sonos Play:1 (Affiliate-Link) im Badezimmer automatisch mit dem gew√ľnschten Webradio-Stream startet, sobald √ľber einen Pr√§senzmelder Bewegung erkannt wird.

Genutzt wird in diesem Fall ein bereits in FHEM angelernter HomeMatic Funk-Bewegungsmelder (Affiliate-Link), der bei einer erkannten Bewegung den Status „motion“ √ľbermittelt.

Als erstes sorgt ein notify daf√ľr, dass bei Bewegung (motion) des Bewegungsmelders (BZ.Bewegungsmelder) der Internetradiostream von SWR3 mit einer Lautst√§rke von 10 gestartet wird, sofern aktuell noch keine Wiedergabe aktiv ist.

#Bei Bewegung -> Webradiostream starten
define BZBewegungsmelderWebradioStart notify BZ.Bewegungsmelder:motion {fhem ("set Sonos_Bad PlayURI http://swr-mp3-m-swr3.akacast.akamaistream.net/7/720/137136/v1/gnl.akacast.akamaistream.net/swr-mp3-m-swr3 10;; setstate BZBewegungsmelderWebradioStop defined") if (ReadingsVal("Sonos_Bad", "transportState", "0") eq "STOPPED")}

Damit die Wiedergabe automatisch wieder stoppt, sobald f√ľr zwei¬†Minuten keine Bewegung mehr registriert wird, kommt der Watchdog namens BZBewegungsmelderWebradioStop ins Spiel, dessen Funktionsweise bereits im Artikel FHEM: Watchdog zur Automatisierung einsetzen beschrieben wurde:

#Nach 2 Minuten ohne Bewegung -> Webradiostream stoppen
define BZBewegungsmelderWebradioStop watchdog BZ.Bewegungsmelder:motion 00:02:00 SAME set Sonos_Bad Stop;; setstate BZBewegungsmelderWebradioStop defined

Sprachausgabe √ľber Sonos-Lautsprecher

Bisher hatte ich, wie im Artikel¬†„Willkommen Zuhause!“ ‚Äď Sprachausgabe in FHEM realisieren beschrieben, einen HomeMatic Funk-Gong (Affiliate-Link) im Einsatz, welcher f√ľr die Sprachausgabe eingesetzt¬†wurde.¬†Diese L√∂sung wird mit den Sonos jedoch obsolet, da bequem Befehle bzw. Statushinweise √ľber die Sonos Play:1 wiedergegeben¬†werden k√∂nnen.

Damit das funktioniert, muss auf dem FHEM-Server eine Samba-Freigabe einreichtet werden. Dazu wieder ins Terminal und nachfolgende Befehle ausf√ľhren.

Erst einmal werden die notwendigen Pakete installiert:

sudo apt-get update && sudo apt-get -y install samba samba-common-bin

Danach wird ein neuer Freigabeordner erstellt:

sudo mkdir -p /opt/fhem/SonosSpeak

Und die notwendige Berechtigung gegeben:

sudo chmod 777 /opt/fhem/SonosSpeak

Anschließend wird die Konfigurationsdatei geöffnet:

sudo nano /etc/samba/smb.conf

und die bestehenden Einträge am Ende der Datei ergänzt mit:

[SonosSpeak]
 read only = false
 path = /opt/fhem/SonosSpeak
 guest ok = yes

Gespeichert wird die Datei anschlie√üend mit der Tastenkombination „Strg + o“ und geschlossen mit der „Strg + x“.

Zum Schluss wird der Samba-Server noch neugestartet:

sudo /etc/init.d/samba restart

In der fhem.cfg m√ľssen dann noch einige Parameter f√ľr das Sonos-Modul hinzugef√ľgt werden, damit die mp3-Dateien, welche bei einer¬†Sprachansage erzeugt (targetSpeakDir) und dann vom Sonos-Lautsprecher gelesen¬†(targetSpeakURL) werden k√∂nnen:

attr Sonos targetSpeakDir /opt/fhem/SonosSpeak
attr Sonos targetSpeakURL \\192.168.3.97\SonosSpeak
attr Sonos targetSpeakFileTimestamp
attr Sonos targetSpeakMP3FileDir /opt/fhem/SonosSpeak

Dabei muss jeder die IP (hier: 192.168.3.97) mit der eigenen IP des FHEM-Servers ersetzen.

Weitere Details zur Einrichtung sind im FHEM-Wiki zu finden.

Hinweis: Eventuell fehlen jetzt noch ben√∂tigte Schreibrechte f√ľr FHEM. Ein Update folgt in K√ľrze, sobald ich das nochmal durchtesten konnte.

Ist die Samba-Freigabe eingerichtet, kann die Sprachausgabe dann als Hinweisgeber genutzt werden, sobald bspw. das Programm der Waschmaschine fertig ist. Mehr Details dazu im Artikel HomeMatic Funk-Steckdose mit Leistungsmessung: Deine Waschmaschine ist fertig.

Hier wird ein einfacher¬†notify-Befehl genutzt, der ausl√∂st, sobald „HR.WaschmaschineBetrieb“ auf „standby“ schaltet.

#Sprachausgabe -> Waschmaschine ist fertig
define WaschmaschineIstFertig notify HR.WaschmaschineBetrieb:standby set Sonos_Bad Speak 20 de Waschmaschine ist fertig

Daneben kann die¬†Sprachausgabe bspw.¬†als Hinweis genutzt werden, sofern die Wohnungst√ľr¬†bereits mehr als f√ľnf Minuten offen steht. Hier wird wieder ein Watchdog genutzt, um den Statuswert des¬†optischen HomeMatic Fensterkontakts (Affiliate-Link) auszuwerten.

#Sprachausgabe -> Wohnungst√ľr bereits 5 Minuten ge√∂ffnet
define WohnungstuerGeoeffnet watchdog FL.Wohnungstuer:open 00:05:00 FL.Wohnungstuer:closed set Sonos_Bad Speak 20 de Wohnungst√ľr bereits 5 Minuten ge√∂ffnet;; setstate WohnungstuerGeoeffnet defined
setstate WohnungstuerGeoeffnet defined

Mit Sonos-Tasten das Licht dimmen

Testweise im Einsatz habe ich auch eine nette¬†Funktion, um bei geringer werdender¬†Lautst√§rke ¬†das Licht automatisch zu dimmen, sofern dieses bereits eingeschaltet ist. Sobald¬†im Schlafzimmer √ľber die leicht¬†zug√§ngliche¬†Leise-Taste¬†des Sonos Play:1¬†die Lautst√§rke heruntergeregelt¬†wird, kann so auch das Licht gedimmt¬†werden.

Dazu nutze ich einen Loxone RGBW Dimmer Air, grunds√§tzlich l√§sst sich das aber nat√ľrlich auch der¬†HomeMatic¬†Dimmaktor (Affiliate-Link)¬†oder jeder¬†andere¬†dimmbare (LED-)Lampe verwenden, die an FHEM angebunden ist.

#Gem√ľtliches Licht bei geringer Lautst√§rke
define SZGemuetlichesLicht notify Sonos_Schlafzimmer:.*Lautstärke.* {fhem ("set SZ.Bodenlampe 20") if (ReadingsVal("Sonos_Bad", "volume", "0") < 5 && ReadingsVal ("SZ.Bodenlampe", "state", "0") ne "off")}

Wie bereits eingangs erwähnt, lässt sich mit den Sonos noch viel mehr anstellen und wer sich mit der Thematik näher auseinandersetzen möchte, sollte das gut dokumentierte commandref im FHEM-Wiki studieren.

Aus meinem täglichen Leben

Lange Jahre¬†konnte ich dem Sonos-System¬†nicht viel abgewinnen. Bis auf einen¬†stylischen Look hatten sie aus meiner Sicht nicht wirklich viel zu bieten. Das lag vorallem auch daran, dass fr√ľher noch zwangsweise eine teure Sonos-Bridge ben√∂tigt wurde, um die funkbasierten Lautsprecher √ľberhaupt per WLan anbinden zu k√∂nnen. Au√üerdem gab es teilweise Probleme¬†mit dem WLan-Reconnect nach Stromausf√§llen.

Diese Einschr√§nkungen geh√∂ren dank der Weiterentwicklung des Sonos-Systems jedoch gl√ľcklicherweise der Vergangenheit an und die Sonos Play:1 (Affiliate-Link) haben nun neben den anderen Sonos-Play-Produkten (Affiliate-Link) das Potenzial als¬†fester Bestandteil einer¬†Multiroom-Audio-L√∂sung zum Einsatz zu kommen. √úber den Preis l√§sst sich nat√ľrlich immer streiten, keine Frage, die¬†Sound- und vorallem aber¬†auch die Verarbeitungsqualit√§t sucht man in dieser Klasse jedoch bei anderen Anbietern vergebens.

Sonos Play1 schwarz weiss

Die¬†Integration mit FHEM¬†er√∂ffnet neben dem¬†„normalen Musikh√∂ren“¬†eine ganze Reihe weiterer Spielereien und Interaktionsm√∂glichkeiten mit anderen Ger√§tschaften, die ich ebenfalls nicht mehr missen m√∂chte. Egal ob man die Tasten der Sonos-Lautsprecher selbst als Trigger f√ľr Aktionen an die in FHEM angebundenen Ger√§te¬†nutzen oder Sprachbefehle auf den Sonos-Lautsprechern aus FHEM heraus abspielen¬†m√∂chte, die m√∂glichen Anwendungsf√§lle¬†sind im Grunde nur durch die eigene Kreativit√§t begrenzt.

Und wer nicht glauben kann, dass die Sonos wirklich so verdammt gut klingen, sollte es einmal darauf ankommen lassen und einen Selbsttest wagen.

Artikel auf Amazon

Affiliate-Links

[easyazon_image align=“none“ height=“200″ width=“160″ identifier=“B00FSCNODU“ locale=“DE“ src=“https://www.meintechblog.de/wordpress/wp-content/uploads/affiliate/B00FSCNODU_2.png“ tag=“meintechblog-150729-21″ target=“_blank“ rel=“nofollow“>[easyazon_image align=“none“ height=“200″ width=“152″ identifier=“B00FSCNLME“ locale=“DE“ src=“https://www.meintechblog.de/wordpress/wp-content/uploads/affiliate/B00FSCNLME.png“ tag=“meintechblog-150729-21″ target=“_blank“ rel=“nofollow“>

Loxone im Einsatz? Dann schau dir unseren LoxKurs an und profitiere von unserem Wissen!

Verpasse keine Inhalte mehr! Trage dich in den Newsletter ein und folge uns auf Facebook.

Was ist ein Affiliate-Link? Wenn du auf einen Affiliate-Link klickst und √ľber diesen Link einkaufst, bekomme ich vom betreffenden Online-Shop oder Anbieter eine Provision, was mich u.A. bei den laufenden Kosten den Blogs unterst√ľtzt. F√ľr dich ver√§ndert sich der Preis nicht.

Jörg

hat meintechblog.de ins Leben gerufen, um seine Technikbegeisterung und Erkenntnisse zu teilen. Er veröffentlicht regelmäßig Howtos in den Bereichen Smart Home und Home Entertainment. Mehr Infos

101 Gedanken zu „Sonos Play:1 und FHEM – Sound im ganzen Haus“

  1. Die Sonosboxen habe ich in jeden Raum stehen. Zugegeben ist es ein sehr teurer Spa√ü aber mit der Zeit ist auch die kritische „bessere H√§lfte“ von dem System √ľberzeugt.
    Im Bad habe ich einen Homematic Funktaster montiert, der √ľber Longpress zwei Sender abspielen kann oder beendet und √ľber short das Licht an und ausschaltet.

  2. Hallo Jörg,
    interessanter Beitrag, die Sonos Produkte habe ich mittlerweile √ľberall im Haus und bin davon sehr begeistert. Playbar und der Sub sind auch wirklich eine Wucht. √úber die Fhem Integration werde ich mal nachdenken.
    Gruß Tom

  3. Habe mir vor der Preiserhöhung auch noch eine zusätzliche Box gekauft.
    Der Klang ist – besonders nach dem letzten Update – auch f√ľr klassische Musik ganz passabel, aber im Mono-Betrieb auch nicht viel besser als ein Envaya Mini.

    Der gro√üe Nachteil bleibt der Standbyverbrauch, der mit 8W f√ľr ein Paar einfach zu hoch ist (20‚ā¨/Jahr).
    Vermutlich wird deshalb auch irgendwann eine Funksteckdose vorgeschaltet.

  4. Hallo Jörg,

    vielen Dank f√ľr den tollen Beitrag! :)
    Ich stand selber schon oft kurz vor dem Kauf eines Play1 habe aber dann immer wieder wg. des Preises gez√∂gert. Vorallem die Integration/Steuerung mit fhem w√§re f√ľr mich sehr wichtig und eine nette Spielerei ;-)
    Ich habe eine GooglePlayMusic-Abo und soweit ich wei√ü kann man dieses auch mit den Sonos-Ger√§ten nutzen. Interessant w√§re jetzt noch, ob das ganze auch ohne App/Handy funktioniert? Sprich ich starte einmal eine Playlist von PlayMusic und kann dann k√ľnftig ohne Smartphone durch diese Playlist schalten und pausieren wie ich will. Wei√ü jemand ob das geht? Wichtig w√§re mir hier auch, dass ich z.B. morgens im Bad √ľber fhem zu einer bestimmten Uhrzeit automatisch diese GooglePlayMusic-Playlist starten kann?!

    Schönen Abend und Gruß

    Hermann

  5. Hallo Jörg,

    wenn ich „define Sonos SONOS localhost:4711 30 1 5“ eingebe, erhalte ich die Meldung: „Cannot load module SONOS“.
    Wo kann der Fehler liegen. Habe zuvor ein Update von FHEM durchgef√ľhrt.
    Gruß Martin

    1. Hallo Martin,
      Hallo Jörg,

      habe dasselbe Problem nachdem ich die angegebenen Befehle per Cut and Paste ausgef√ľhrt habe.

      Gruß,
      Thorsten

  6. Toller Beitrag!
    Hab selber 2 Play:5 im Stereo am Fernseher hängen und sobald das Haus fertig ist werden weitere folgen.
    Kann man das mit Loxone auch alles realisieren oder sollte ich fhem verwenden?
    LG

    1. Hi Herbert,
      habe eben mal die Loxone-Integration getestet. Diese beschränkt sich momentan auf insgesamt einfache 19 Steuerbefehle, mit denen man aus Loxone heraus die Sonos-Lautsprecher ansteuern kann, also Play, Pause, Vol Up, Vol Down, etc.
      R√ľckmeldungen wie bei FHEM sind nicht umgesetzt. Ich werde deshalb wohl die Sonos weiterhin √ľber FHEM anbinden und dann FHEM als Gateway f√ľr die Visualisierung in Loxone (derzeitig mein f√ľhrendes System) nutzen, so wie ich es bspw. auch bereits mit meinen HomeMatic-Ger√§ten, der VU+ oder dem Pioneer-AV-Receiver im Wohnzimmer mache.

      Gr√ľ√üe
      Jörg

    2. Wenn ich richtig recherchiert habe, dann funktioniert das auch offiziell nicht mehr. Das liegt wohl an einer Mischung aus: „Sonos will das eigentlich nicht“ und „Wir haben unser eigenes Multiroom System“. Gibt aber im Forum ein How-to. Scheint auch mit der R√ľckmeldung dann zu klappen. Ich w√ľrde das alles schon gern selber testen…
      Gibts eigentlich einen (technischen) Grund warum du FHEM nicht in einer VM am QNAP laufen lässt? Schon mal probiert?

    3. Ah ok,
      wenn das auch ein Gefrickle ist, nutze ich wohl erstmal weiterhin die Sonos-FHEM-Integration und die Anbindung zwischen FHEM und Loxone per UDP/HTTP als „Umweg“. Echt schade, dass Loxone solche Themen immer stiefm√ľtterlicher behandelt. Einerseits verst√§ndlich, da sie damit ja direkt keine Kohle machen, andererseits aber aus Kundensicht wirklich √§rgerlich und langfristig bestimmt auch f√ľr die Verbreitung von Loxone alles andere als f√∂rderlich. Habe den „neuen“ Loxone Musicserver √ľbrigens auch parallel im Einsatz. Dieser ist f√ľr den Preis aber zumindest mit der aktuellen Beta-Version nicht wirklich brauchbar. Hoffe das √§ndert sich bald. Dann werde ich auch mal dar√ľber bloggen.
      Mein produktiver FHEM-Server l√§uft per VM auf einem QNAP 670 Ultra, klar. Ich nutze aber noch einige RPI1/2 f√ľr verschiedene Testzwecke und als Gateway f√ľr meine Arduino-Projekte.

      Gr√ľ√üe
      Jörg

  7. Hallo,

    ich habe den Play1 letzten Dezember eingerichtet. War echt die H√∂hle. Das Modul war so instabil, dass man vor fast jeder Aktion FEHM neustarten musste. Ich nutze den Play1 im Schlafzimmer als teuren Radiowecker. Ich stelle die Weckzeit f√ľr Morgens ein und neben dem ganzen Heizungs- und Lichtgeraffel wird dann auch gleich das morgendliche Radioprogramm gestartet. Da Sonos kein richtiges standby hat und dadurch st√§ndig ordentlich Strom schluckt, h√§ngt der Play1 an einer schaltbaren Steckdose. Wenn die dann ausgeschaltet wird, hat das Sonos-Modul in FHEM Probleme mit der Verbindung wenn die Steckdose wieder eingeschaltet wird (Hat sich vielleicht auch zwischenzeitlich ge√§ndert). Deshalb mache daf√ľr nach wie vor einen Neustart von FHEM. Ansonsten l√§uft das Modul mittlerweile recht stabil.
    Am meisten Aufwand hatte ich f√ľr das abendliche H√∂rbuchh√∂ren zum Einschlafen. Leider speichert Sonos nicht die Position im Titel und w√ľrde immer wieder von vorn anfangen. Ich habe im FHEM einen Dummy mit dem Link f√ľr das aktuelle H√∂rbuch (liegt auf einem USB-Stick an der Fritzbox), einen Dummy f√ľr die aktuelle H√∂rbuch-Position und einen Dummy f√ľr die gew√ľnschte Spielzeit. Beim Bet√§tigen des „Gute Nacht“-Wandschalters wird dann das H√∂rbuch an der letzten Position neu gestartet und die aktuelle Position alle 2 Minuten ausgelesen und gespeichert (Das Auslesen funktioniert nicht immer mit einem Aufruf). Nach erreichen der eingestellten Spielzeit wird dann das H√∂rbuch gestoppt und die Steckdose ausgeschaltet. Der erfreuliche Nebeneffekt dabei ist, dass das Schlafzimmer nachts wirklich Dunkel ist, weil keine Status-LED mehr leuchtet.

    mfg
    Tom

    1. Hi Tom,
      klingt ja spannend, was du schon alles realisiert hast. Werde wohl auch Zwischenstecker nutzen, um den Standbyverbrauch von knapp 3 Watt pro Lautsprecher zu mininieren, sofern niemand Zuhause ist. Die Status-LED l√§sst sich √ľbrigens ganz einfach permanent ausschalten, sogar √ľber die Original Sonos-App. K√∂nnte man ja √ľber FHEM grunds√§tzlich sogar als Hinweisgeber f√ľr eingehende Emails oder whatever nutzen…

      Gr√ľ√üe
      Jörg

    2. Hallo Jörg,

      3 Watt wären ja nicht so dramatisch. ich habe gelesen, dass es 27 Watt sein soll.
      Die Aussage bzgl. der LEDs bezog sich darauf, dass man nicht mehr die „Beleuchtung“ durch den Radiowecker hat. Es gibt ja scheinbar keinen der Nachts wirklich dunkel ist.

      mfg
      Tom

  8. Hallo Jörg,

    Vielen Dank f√ľr diesen Beitrag.

    Ich bin sehr daran interessiert mein Sonos-System in FHEM zu integrieren und habe gleich damit begonnen.
    Nach dem Absetzen der Befehle

    ‚Äěsudo apt-get ‚Ķ‚Ķ.libxml-parser-lite-perl‚Äú

    bekomme ich als letzte Zeile im Terminal den Hinweis:

    E: Unable to locate package libxml-parser-lite-perl.

    Habe die Befehle mehrmals eingegeben, da ich einen Tippfehler vermutete.

    Was ist falsch gelaufen?

    Ich habe auch eine Frage zum Localhost. Wo finde ich die genaue Ziffernfolge? Kann es sein, dass die bei mir ‚Äě8083‚Äú lauten?

    Gruß Manfred

    1. Hi Manfred,
      benutzt du einen Raspberry Pi oder ein anderes System? Ich werde das Ganze am Wochenende noch einmal auf einem komplett frisch installierten Raspberry Pi testen, da ich aktuell auch noch Probleme mit der Sprachwiedergabe habe. Vielleicht stoße ich in diesem Zusammenhang auch gleich noch auf dein Problem und finde eine Lösung.

      Den Befehl mit localhost einfach so lassen und am besten nicht anpassen.

      Gr√ľ√üe
      Jörg

  9. Hallo Hermann,
    ich nutze mehrere Play:1, auch mit fhem. GooglePlay funktioniert gut, es gibt auch einen Wecker direkt in der Sonos-Steuerung, so dass morgens im Bad die Playlist automatisch startet und auch wieder aufh√∂rt. Es gibt auch noch eine Windows-Anwendung, wenn man kein Smartphone hat. Starten und Stoppen einer Playlist geht auch direkt mit der Taste am Lautsprecher, aber f√ľr komplexere Dinge, wie etwa das Konfigurieren von Wiedergabegruppen, braucht man nat√ľrlich schon eine richtige Bedienoberfl√§che.

    1. Hallo,

      perfekt, vielen Dank f√ľr die Antwort.
      …dann w√ľrden meine Vorstellungen ja genau erf√ľllt ;)

      Gruß

  10. Hi Jörg :-)
    habe das gleiche Problem wie Manfred:
    E: Unable to locate package libxml-parser-lite-perl.
    das definieren in FHEM geht demnach auch nicht:
    „Cannot load module SONOS“

    vll entdeckst du ja was

    Gruß Jörg

    1. Hi Jörg,
      Nach Eingabe des Befehls “ sudo alt-get -y install libxml-parser-lite-tree-perl“ l√§uft alles ohne Fehlermeldung ab. Die Eingabe von „define Sonos SONOS localhost: 4711 30 1 5 ergibt „cannot load module Sonos“.

      Brauche also noch weitere Unterst√ľtzung.
      Gruß Manfred

    2. Hallo, bei mir klappte es leider auch mit diesem Befehl nicht.
      Folgendes brachte bei mir den gew√ľnschten Erfolg:

      1 First download SOAP-Lite Package from http://search.cpan.org/~phred/SOAP-Lite-0.716/
      2 Extract the package and remove the folder called „t“.
      3 perl Makefile.PL
      4 make
      5 make test
      6 sudo make install

      sch√∂ne Gr√ľ√üe
      Christoph

  11. Zeig doch mal eine Einbindung in smartvisu. Und vielleicht ein paar interessante „Szenarien“, so wie sie hier auch in den Kommentaren beschrieben werden.

    1. Hi Michael,
      SmartVISU ist eher Christophs Baustelle, ich hab mich damit noch nicht auseinandergesetzt. Die Kommentare liefern echt schon coole Anregungen, danke daf√ľr!
      Werde mal sehen, dass ich die Szenarien bei Gelegenheit erweitere. Hab da selbst aktuell jedoch auch noch nicht viel umgesetzt.

      Gr√ľ√üe
      Jörg

  12. Hallo Jörg,
    sehr interressanter Beitrag. Ich verfolge ja immer deine Beiträge rund um FHEM und freue mich dass du nun 2 Tage nachdem ich mein Sonos eingerichtet habe, auch eine Tutorial veröffentlich hast. :D Aber ich konnte die Sprachausgabe nur einmal nutzen. Seitdem bekomme ich unter der URL welche das Modul aufruft, ein Captcha von google angezeigt mit dem Hinweis dass automatisierte Anfragen eines Roboters laut deren Nutzungsbedingungen nicht erlaubt sind.
    Könntest du daher vielleicht noch das Tutorial um eine Integration eines Offline-TTS Services erweitern?
    Vielen Dank und mach weiter so! :)
    Thomas

    1. Hallo Jörg,
      ich habe jetzt mal espeak zum Laufen gebracht. Aber gegen√ľber der Google-Stimme klingt das ja furchtbar. H√§ttest du sonst noch eine Idee was man machen k√∂nnte? Loquendo w√§re super. Aber ich konnte noch nicht herausfinden was das kosten soll.

    2. Hi Thomas,
      sorry, deine Kommentare sind bei mir ganz untergegangen. Sprachausgabe seht bei mir noch auf der ToDo-Liste, aktuell habe ich aber auch noch keine brauchbare L√∂sung. Ich nutze derzeit einfach vorgefertigte mp3-Files, wie im Artikel „Willkommen Zuhause!“ – Sprachausgabe in FHEM realisieren beschrieben. Das ist aber recht unflexibel und auch keine dauerhafte L√∂sung. Wenn ich etwas Neues weiss, gebe ich Bescheid.

      Gr√ľ√üe
      Jörg

  13. Hi,
    wegen der Probleme mit der Sprachausgabe ..
    Habe derweil gelesen, dass diese von Google durch Captchas blockiert w√ľrde. Ob das so stimmt, wei√ü ich nicht, bekomme es aber selbst auch nicht ans laufen.

    LG

  14. Hallo,

    auch bekomme die Fehlermeldung „Cannot load module SONOS“. ICh bin auch genau nach der WiKi-Anleitung f√ľr SONOS vorgegangen und habe auch die Softwarevoraussetzungen mit den Perl Modulen beachtet. Totzdem l√§sst sich das Modul SONOS auf meinem Pi nicht starten.
    Woran kann es noch liegen.

    LG Ralph

  15. Hallo Jörg,

    danke f√ľr deinen Beitrag.
    Was mich wundert ist, dass du folgendes schreibst:

    „…
    sudo mkdir -p /opt/fhem/SonosSpeak
    ….

    2
    3
    4
    attr Sonos targetSpeakDir /mnt/SonosSpeak
    attr Sonos targetSpeakURL \\192.168.3.97\SonosSpeak
    attr Sonos targetSpeakFileTimestamp
    attr Sonos targetSpeakMP3FileDir /mnt/SonosSpeak
    …‚Äú

    warum einmal das Verzeichnis /opt/fhem/SonosSpeak
    und dann attr Sonos targetSpeakDir /mnt/SonosSpeak
    hat das einen Grund.

    Danke

    1. Hi Herby,
      du hast Recht. Hatte das Verzeichnis ge√§ndert und dann nicht durchg√§ngig angepasst. Der Blogpost wurde soeben geupdated. Danke f√ľr den Hinweis!

      Gr√ľ√üe
      Jörg

  16. Hallo Jörg,
    ich bekomme leider folgende Meldung:
    „Unable to locate package libxml-parser-lite-perl“

    des weiteren bekomme ich auch die meldung „Cannot load module SONOS“ ich vermute das diese im Zusammenhang stehen.

    eine Idee was ich falsch mache?

    Gr√ľ√üe und Dank
    Marcel

    1. Jep, das Problem ist bekannt. Mit Ubuntu funktioniert es einwandfrei, mit dem RPi und Wheezy-Image klappt es jedoch nicht. Ich hatte leider noch keine Zeit das Problem anzugehen. Sobald ich eine Lösung habe, werde ich es hier kommunizieren.

      Gr√ľ√üe
      Jörg

    2. So,
      mit dem Befehl

      sudo apt-get update && sudo apt-get -y install libwww-perl libsoap-lite-perl libxml-parser-lite-perl

      sollte es auch auf dem RPi mit Wheezy-Image klappen, auch wenn eines der Pakete nicht gefunden werden kann (ist etwas doppeltgemoppelt, aber dann funktioniert der Befehl aber wenigstens unter Ubuntu und Wheezy).

      Nach dem Installieren am besten noch ein

      sudo reboot

      hinterherschieben, damit die Kiste noch einen Neustart macht. Dann sollte der Fehler in FHEM auch weg sein. Mein RPi1 scheint von der Perfomance aber insgesamt etwas √ľberfordert zu sein. Da laufen aber viele Sachen parallel. Mit dem RPi2 gibt es bisher keine Probleme.

      Gr√ľ√üe
      Jörg

  17. Hi Jörg,
    ich habe auch weiterhin die Meldung „Cannot load module SONOS“.
    in der FHEM log steht nach dem fehlgeschlagenen define folgendes:

    2015.08.10 22:08:47 1: reload: Error:Modul 00_SONOS deactivated:
    Can’t locate SOAP/Lite.pm in @INC (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at FHEM/lib/UPnP/Common.pm line 85.
    BEGIN failed–compilation aborted at FHEM/lib/UPnP/Common.pm line 85.
    Compilation failed in require at FHEM/lib/UPnP/ControlPoint.pm line 14.
    BEGIN failed–compilation aborted at FHEM/lib/UPnP/ControlPoint.pm line 14.
    Compilation failed in require at ./FHEM/00_SONOS.pm line 165.
    BEGIN failed–compilation aborted at ./FHEM/00_SONOS.pm line 165.

    2015.08.10 22:08:47 0: Can’t locate SOAP/Lite.pm in @INC (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at FHEM/lib/UPnP/Common.pm line 85.
    BEGIN failed–compilation aborted at FHEM/lib/UPnP/Common.pm line 85.
    Compilation failed in require at FHEM/lib/UPnP/ControlPoint.pm line 14.
    BEGIN failed–compilation aborted at FHEM/lib/UPnP/ControlPoint.pm line 14.
    Compilation failed in require at ./FHEM/00_SONOS.pm line 165.
    BEGIN failed–compilation aborted at ./FHEM/00_SONOS.pm line 165.

    Fehlt FHEM hier noch etwas oder ist meine SD Karte des Raspi mal wieder durcheinander ?:-(

  18. Hi Jörg,

    nach einem update kommt nach der Eingabe von

    ‚Äědefine Sonos SONOS localhost:4711 30 1 5 ‚Äú

    die Meldung

    ‚ÄěCannot load module SONOS‚Äú

    nicht mehr. Die im Netzwerk verf√ľgbaren Sonos-Lautsprecher erscheinen aber nicht. Unter Sonos STATE erscheint zuerst ‚Äěwaiting for subprocesses‚Äú und sp√§ter ‚Äědisconnected‚Äú. Hier die Eintr√§ge in der Logfile:

    2015.08.12 18:09:23 1: SONOS0: Kein UPnP-Server gefunden… Starte selber einen und warte 1 Sekunde(n) darauf…
    2015.08.12 18:09:24 3: Opening Sonos device localhost:4711
    2015.08.12 18:09:27 3: Can’t connect to localhost:4711: Connection timed out

    Was ist falsch gelaufen oder versäumt worden?

    Gruß Manfred

    1. Puh,
      das kann verschiedene Gr√ľnde haben.
      Vielleicht einfach statt „localhost“ die IP des FHEM-Servers direkt eingeben.

      Wenn das nicht hilft wieder zur√ľcksetzen auf localhost und diese Schritte probieren:
      1. Im Router nachsehen, ob WLAN-Ger√§te im Netzwerk miteinander reden d√ľrfen. In der Fritzbox (Ansicht: Erweitert) geht das bspw. unter -> http://fritz.box -> „WLAN“ -> „Sicherheit“ -> „Die unten angezeigten aktiven WLAN-Ger√§te d√ľrfen untereinander kommunizieren“ -> Haken setzen.
      2. Sonos-Lautsprecher vom Strom trennen und erneut einstecken
      3. FHEM-Server neustarten

      Hoffe damit kommst du zum Ziel!

      Gr√ľ√üe
      Jörg

  19. Hallo Allerseits,

    ich habe im Moment 4 SONOS Play 1 in Betrieb und auch schon einige Durchsagen eingerichtet, welche jedoch einzeln an die R√§ume √ľbermittelt werden mit z.b: „set Sonos_Wohnzimmer Speak 30 de W√§sche ist fertig“. Will ich die Ansage in einem zweiten Raum haben, f√ľge ich einen zweiten Befehl mit einem anderen Raum an, was aber zu einer verz√∂gerten Ausgabe in dem zweiten Raum f√ľhrt. Bei 4 R√§umen entsteht so eine Art Echo weil die Durchsagen zu verschiedenen Zeiten durchs Haus hallen.
    Kann man z.b. vor der Ausgabe die Räume gruppieren und nach der Ausgabe wieder in den Ursprungszustand versetzen? Damit die Ausgabe synchron im ganzen Haus zu hören ist? Habe leider bisher keine Beispiele dazu gefunden.

    Gr√ľ√üe aus Zirndorf

    GrayDeath

  20. Hallo Gray,
    Schau mal ins Wiki da steht:
    „GruppenbefehleGroups : Setzt die aktuelle Gruppierungskonfiguration der Sonos-Systemlandschaft. Das Format ist jenes, welches auch von dem Get-BefehlGroups¬†geliefert wird.“

    Unter Set Befehle
    Vielleicht hilft das

  21. Hallo Jörg,

    stehe ganz am Anfang mit dem Thema Smarthome und bin im Rahmen der Suche nach Informationen √ľber Dein Thema Sonos √ľber FHEM steuern gesto√üen.

    Aktuell läuft FHEM auf einem Raspberry Pi und schalte damit einige Steckdosen.

    Nachdem ich mir auch vor kurzem meine 1. Sonos Komponenten (Connect und Play1) zugelegt habe hat das Thema nat√ľrlich sofort umgesetzt werden m√ľssen.

    Gem. Deiner tollen Anleitung ist Sonos jetzt auch in FHEM eingebunden. Was mir jetzt noch fehlt ist eine M√∂glichkeit den Player so per FHEM anzusteuern, dass er nach einer Stromunterbrechung (abschalten unter dem Motto Energiesparen) beim Einschalten wieder automatisch meinen Lieblingsradiosender abspielt. Perfekt w√§re dann noch, wenn 2 Play zu einer Gruppe geschaltet werden k√∂nnten. Aktuell mache ich dies √ľber die Sonos-App.

    Ich k√∂nnte mir denken, dass dies auch f√ľr andere Anwender von Interesse ist!

    Vorab vielen Dank!

    J√ľrgen

  22. Hallo,

    wer wie ich Probleme mit dem Schreibzugriff auf den erstellten SonosSpeak Ordner hatte, wodurch außer einer Fehlermeldung keine Sprachnachricht ausgelöst wird, muss sudo chmod 777 /opt/fhem/SonosSpeak per SSH eingeben.
    Dann bekommt man die Schreibrechte und die Sprachausgabe funktioniert einwandfrei und klingt auch sehr nat√ľrlich.

    Gruß

    Stephan

    1. Hi Namensvetter,

      DAS war die L√∂sung – nun h√∂re auch ich die wirklich nat√ľrliche Sprachausgabe. Sch√∂ne Sache.

      Frage hier an die Experten: wie l√∂se ich das, wenn ich die Sprachausgabe regelm√§√üig wiederholen will, bis ein bestimmtes Ereignis eintritt (sagen wir: die Waschmaschine ist fertig, aber sie ist noch auf „an“ geschaltet und verbraucht dadurch etwas Strom, und erst wenn sie komplett ausgeschaltet ist, soll die Sprachausgabe nicht mehr wiederholt werden).

      VG Stephan

  23. Hallo Jörg,
    super Beitrag mal wieder, Gratulation.
    Habe mich nat√ľrlich gleich daran gemacht, das „nachzubauen“.

    W√ľrde mir noch w√ľnschen, dass der SONOS nur zwischen 5 und 23 Uhr auf den Bewegungsmelder reagiert und ansonsten nicht angeschaltet wird (wenn man nachts mal ins Bad muss ;) ). Leider habe ich das bisher nicht hinbekommen.
    Hast Du hier einen Tip f√ľr mich?

    Gruß
    Andreas

    1. Hi Andreas,

      kannst Du nicht einfach die IF-Bedingung am Ende erweitern, etwa so:

      if (ReadingsVal(„Sonos_Bad“, „transportState“, „0“) eq „STOPPED“) && ($hms ge ’05:00:00′) && ($hms le ’23:00:00′)

      Gr√ľ√üe

      Peter

  24. Bei mir funktioniert die Einbindung. Allerdings die Sprachausgabe nicht. Es kommt u.a. folgender Fehler:
    Loading device description failed with error: 500 Can’t connect to 192.168.178.24:1400 (timeout) at ./FHEM/00_SONOS.pm line 3590 thread 1

    Jemand eine Idee?

  25. Ich hatte ein √§hnliches Problem. Habe fhem geupdatet. Jetzt funktioniert es. Bei mir kommt allerdings ein anderer Fehler: „FHEMWEB SSL/HTTPS error:“ Der Sonos Player stoppt, aber die Sprachausgabe erfolgt nicht. Liegt das vielleicht daran, dass mein FHEM und raspberry √ľber https erreichbar ist? Wer kann mir insoweit helfen?

    1. Keiner eine Idee? Ich habe ja stark die Vermutung, dass mein Eintrag in der fhem.cfg:
      „attr Sonos targetSpeakURL \\https://192.168.178.33:8083/fhem\SonosSpeak“ falsch ist. Allerdings habe ich es auch mit :
      „attr Sonos targetSpeakURL \\192.168.178.33:8083/fhem\SonosSpeak“ und „attr Sonos targetSpeakURL \\192.168.178.33\SonosSpeak“ ausprobiert. Ohne Erfolg…

  26. Hallo zusammen, wollte heute auf meinem Raspi2 (debian) das Sonos Modul im FHEM laden, leider bekomme ich trotz aller Paketnachinstallationen die Fehlermeldung
    „configfile: Cannot load module SONOS“

    Gibt es da noch weitere Ideen woran es liegen könnte?

    1. Hi Christian,

      mal 2 Sch√ľsse ins Blaue:

      1. Wenn Du die Pakete √ľber apt-get installiert hast, dann versuch’s mal √ľber cpan. Hast Du sie √ľber cpan installiert, dann versuch’s mal √ľber apt-get.
      2. Mal einen sudo reboot versucht?

      Ich hoffe, es war was Hilfreiches dabei.

      Gr√ľ√üe

      Peter

    2. Kurzes Update von mir, da ich gerade auch Probleme hatte das SONOS-Modul auf einem neuinstallierten RPI2 mit wheezy zum Laufen zu bringen („Cannot load module SONOS“). Der Befehl „sudo cpan SOAP::Lite“ (ohne Anf√ľhrungszeichen) konnte das Problem schlie√ülich l√∂sen. Habe die Info im Blogpost als Update vermerkt.

      Gr√ľ√üe
      Jörg

  27. Hallo Jörg,

    wie immer ein klasse Artikel. Gl√ľckwunsch!

    Ein sehr merkw√ľrdiges Problem habe ich allerdings: Obwohl ich /opt/fhem/SonosSpeak als Pfad eingegeben habe, landet die fertige mp3-Datei nicht in diesem Verzeichnis, sondern im „FHEM-Stammverzeichnis“ /opt/fhem. Hier die Logfile-Eintr√§ge:

    2015.09.22 20:06:00 3: SONOS4: Load Google generated MP3 (1. Element) from „http://translate.google.com/translate_tts?tl=de&client=t&prev=input&q=%20Das%20ist%20eine%20Testnachricht“ to „./RINCON_5CAAFD22CABA01400_MR_Speak.mp31“
    2015.09.22 20:06:00 3: SONOS4: Combine loaded chunks into „./RINCON_5CAAFD22CABA01400_MR_Speak.mp3“
    2015.09.22 20:06:00 3: SONOS4: Start temporary playing of „/RINCON_5CAAFD22CABA01400_MR_Speak.mp3“

    Von diesem Pfad aus kann Sonos die Datei nat√ľrlich nicht abspielen. Die Samba-Freigabe bezieht sich ja auf /opt/fhem/SonosSpeak nicht /opt/fhem.

    Jemand eine Idee, wo das Problem liegen könnte?

    Gr√ľ√üe

    Peter

    1. ein kleiner Nachtrag:

      Ich habe ein wenig gegoogelt und selbst eine Lösung gefunden. Geholfen hat mir der Bericht eines Users, der das Pfad-Attribut gar nicht gesetzt hat und bei dem die mp3-Datei auch in /opt/fhem landet. Es war offenbar ein Berechtigungsproblem. Mit

      sudo chown -c user:user /opt/fhem/SonosSpeak

      funtioniert es, wobei user mein User-Name ist.

      Vielleicht hilft das ja jemandem weiter.

      Gr√ľ√üe

      Peter

    2. Danke Peter f√ľr den Hinweis. ich hatte das gleiche Problem und mit diesem Hinweis l√∂sen k√∂nnen – Berechtigung von root auf fhemuser & Pfadattribut entfernt – nun l√§ufts auch bei mir.

  28. Hallo Jörg,

    kurze Frage bevor ich jetzt mit der Sonos/Fhem/Loxone Multiroom Geschichte anfange – Lassen sich auch vom Fhem auch kostenpflichtige Streamingdienste wie Spotify ansteuern?

    Gr√ľ√üe
    Andreas

  29. Hallo J√∂rg, ich habe eine Frage, die ich weder aus der sonos-Seite noch irgendwie im Internet beantwortet finde. Ich habe den connect an meinen Verst√§rker analog angeschlossen plus eine play:1 lautsprecher der in einem anderen Raum steht. Man sagt mir, dass ich so aus quellen meines verst√§rkers, z.b. cD, plattenspieler, etc. Auch diesen lautsprecher anspielen kann, sodass in beiden R√§umen dieselbe Musik, z.b. Eine CD meiner Anlagr l√§uft. Meiner Meinung nach habe ich den connect richtig an dir anlagr angeschlossen. Internetradio aus dem wlan √ľber connect l√§uft auf play1 und anlage. Gut. Aber ich bekomme krine Musik aus der Anlage auf den Play1. Habe die cinchkabel auf meinen tape2-anschluss im verst√§rker (in beide richtungen) angeschlossen. Was mache ich da falsch?

  30. Hallo Jörg,

    schöner Beitrag.
    Mein Problem: Radiostopp bringt Fehlermeldung „Wrong timespec, must be HH:MM[:SS] “

    Ich benutze HM-Sen-MDIR.

    Woran kann es liegen?

  31. Hi Jörg,

    mein letztes Hilfeersuchen ist vom 12. August 2015. Deine Vorschl√§ge vom 13. August halfen leider nicht weiter. Daraufhin habe ich ‚ÄěSonos √ľber FHEM steuern‚Äú aufgegeben. Deine Blogpost ‚ÄěPimp my Keller mit HM und Sonos‚Äú von gestern veranlasste einen neuen Versuch und ich f√ľhrte den Befehl ‚Äěsudo cpan SOAP::Lite‚Äú aus, mit abschlie√üendem ‚Äěreboot‚Äú.
    Nach der Eingabe von ‚Äědefine Sonos SONOS localhost:4711 30 1 5‚Äú wurde auch nach l√§ngerem Warten und auch nach Wiederholungen der Eingabe keiner der Sonos-Lautsprechen in FHEM eingetragen. Was l√§uft falsch?

    1. Hi Manfred,
      ich hoffe, dass ich dir irgendwie weiterhelfen kann.

      Welches System nutzt du aktuell?
      Welchen Status hat das Sonos-Device in FHEM?
      Was steht „Ungew√∂hnliches“ im FHEM-Log bzw. welche Fehlermeldungen werden angezeigt?

      Gr√ľ√üe
      Jörg

  32. Hi Jörg,

    ich benutze Rasberry mit CUL, angeschlossen an eine Fritzbox 7490 und ein mehrteiliges Sonos-System (einschlie√ülich Playbar und SUB). √úber FHEM steuere ich bisher 4 FS20-Schalter. Der letzte Versuch Sonos einzubinden f√ľhrte zu folgendem Eintrag in der Logfile:

    2016.01.13 08:56:59 1: SONOS0: Kein UPnP-Server gefunden… Starte selber einen und warte 1 Sekunde(n) darauf…
    2016.01.13 08:57:00 3: Opening Sonos device localhost:4711
    2016.01.13 08:57:00 3: Can’t connect to localhost:4711: Network is unreachable

    Vorher erschien im WEB-Interface nach Eingabe von ‚Äědefine Sonos SONOS Localhost:4711 30 1 5‚Äú:

    CFGSN
    DEF
    localhost: 4711 30 1 5

    DELAYTIME 5
    DeviceName localhost:4711
    INTERVAL 30
    NAME Sonos
    NR 945
    STATE waiting for subprocess…
    TYPE SONOS
    WAITTIME 1

    Der Status ‚Äěwaiting for subprocess..‚Äú h√§lt sehr sehr lange an und √§ndert sich erst nach einem Klick auf z. B. ‚ÄěEverything‚Äú in ‚Äědisconnected‚Äú.

    Bei Eingabe der IP anstatt localhost erscheint:

    2016.01.13 15:28:40 1: SONOS0: Kein UPnP-Server gefunden… Starte selber einen und warte 1 Sekunde(n) darauf…
    2016.01.13 15:28:41 3: Opening Sonos device 192.168.178.42:4711
    2016.01.13 15:28:44 3: Can’t connect to 192.168.178.42:4711: Connection timed out

    Stehe f√ľr weitere Ausk√ľnfte gerne zur Verf√ľgung.

    Gruß Manfred

    1. Hi Manfred,
      da muss ich leider passen. Hatte das Problem selbst noch nicht. W√ľrde dir empfehlen direkt mal im FHEM-Forum im Sonos-Thread nachzuhaken. Das Einlesen ist zwar manchmal etwas zeitaufw√§ndig, die Community hilft aber in der Regel bei Fragen zeitnah weiter.

      Viele Gr√ľ√üe und Erfolg bei der Umsetzung
      Jörg

  33. Stichwort: internationale Sprachausgabe
    Stichwort: Verzeichnis SonosSpeak l√§uft voll …

    Meine Frazu spricht flie√üend Schwedisch, und das brachte mich auf die Idee, „Waschmaschine fertig“ – vgl. auch den Blogpost HomeMatic Funk-Steckdose mit Leistungsmessung: Deine Waschmaschine ist fertig – in mehr als nur einer Sprache auszugeben. Geht einwandfrei, z.B. auch in Arabisch.

    Wer das ausprobieren m√∂chte: die Liste der Sprachk√ľrzel findet sich hier.

    Schwedisch hört man beispielsweise so:

    set Sonos_Kueche Speak 40 se tvättmaskin är redo

    Problem: Intensivnutzer sollten wissen, dass jeder Sprachbefehl als MP3-Datei im Verzeichnis /opt/fhem/SonosSpeak abgelegt wird. Die Namensvergabe sieht dabei etwa so aus: RINCON_5CAAFD482ED601400_MR_Speak_20160114-113703.MP3.

    Ein Satz wie der obige erzeugt eine etwa 22 kB große MP3-Datei, belegen aber 1 MB auf dem Volume. Man kann sich also ausrechnen, dass der Speicher (bei mir eine 8 GB-Karte mit 4,4 GB freiem Platz) irgendwann volllaufen wird. Hinzu kommt, dass jede Sprachausgabe, auch wenn sie im Skript nur 1x steht, jedesmal neu angelegt wird.

    Hat jemand daf√ľr eine elegante L√∂sung? Z.B. automatisches L√∂schen dieser MP3-Files nach x Tagen?

    VG Stephan

  34. Hallo,

    ich habe erfolgreich mit Hilfe dieses Artikels mehrere Sonos Play 1 ins Fhem System integriert. Gibt es eine Möglichkeit der Sonos Box einen Pfad zu einem Album, welches auf einem USB Stick an der Fritzbox liegt, mitzuteilen, sodass alle Titel in dem Pfad abgespielt werden. Bekomme es leider aktuell nur soweit, dass immer nur der erste Titel abgespielt wird und danach stoppt es leider.

    Vielen Dank im Voraus f√ľr eure Hilfe

    Gruß Micha

  35. Hi Jörg,
    nochmal Bezug auf Deine Antwort vom 13 JAN 16. Ich habe die Speicherkarte neu formatiert und eine Neuinstallation vorgenommen. Nach dem Definieren von Sonos im WEB-Interface erscheinen jetzt alle Sonos-Geräte und es lassen sich die Steuerbefehle wie Lautstärke und An/Aus absetzen.
    Ein Auswählen von Radiosendern und von Musikdateien vom NAS-Server klappt aber nicht. In der FHEM-App auf dem iPad erscheinen auch alle Geräte, lassen sich aber nicht steuern.
    Aber ich bin schon einen erheblichen Schritt weiter und werde Deine Informationen weiter verfolgen.
    Gruß Manfred

    1. Hi Manfred,
      das freut mich sehr!
      Mit der Anbindung der Sonos in Richtung NAS habe ich aber bisher leider keine Erfahrung, sorry. Hoffe du kommst irgendwie weiter!

    2. Hi Manfred,

      meine Musik liegt auf einer Synology NAS. Ich binde sie derzeit indirekt via Sonos Playlisten an FHEM an, das funktioniert gut. Radiosender habe ich √ľber die Favoriten angebunden z.B. SWR3 h√∂ren: „set StartFavourite SWR3%20Elchradio%2099.6%20(Pop)“. Als n√§chstes plane ich eine Dropdownbox (setList Attribut mit ’state‘ in Verbindung mit dem Attribut ‚webCmd state‘), die ich mit Radiosendern und Playlisten f√ľllen werde. Ich w√ľrde dabei gerne per Auswahl aus der Dropdown-Liste zwischen den Sendern und Playlisten hin- und herschalten.

      Das Konzept habe ich prinzipiell schon getestet, es geht gut und ist irgendwie l√§ssig, so langsam aber sicher die Steuerung weg von der dr√∂gen Sonos-Software weg auf FHEM zu verlagern. Ist halt Bastelei … ;-)

      VG Stephan

    3. Hallo Manfred,

      ich habe nun umgesetzt, was ich mir vorgenommen habe:

      √ľber den dummy „Musikauswahlschalter“ mit den attr setList state: … sowie attr webCmd state w√§hle ich aus, was ich h√∂ren will. Derzeit wird diese Vorauswahl auf der fhem-Oberfl√§che √ľber eine Dropbox erm√∂glicht und √ľber einen Bewegungsmelder aktiviert. Denkbar ist aber auch eine Steuerung √ľber einen Schalter. Von Homematik gibt es einen 6-fach Schalter, der sich daf√ľr ganz gut eignet: http://www.amazon.de/HomeMatic-130113-Funk-Wandtaster-6-fach-warmwei%C3%9F/dp/B00CHI8VB8

      Beim Zugriff auf meine NAS verwende ich statt der Sonos-eigenen Musikbibliothek Subsonic: http://www.subsonic.org (Ich war die Diskussion leid, dass das Sonos-eigene Limit von 64k (max. Anzahl Tracks) seit Jahren zur Ver√§rgerung der Nutzergemeinde f√ľhrt). Im Ergebnis habe ich mit Subsonic und der dadurch bereit gestellten Streamingquelle Zugriff auf jeden einzelnen Song meiner auf der NAS liegenden Musiksammlung, die zugegebener Ma√üen recht gro√ü ist und die Sonos-eigenen M√∂glichkeiten sprengt.

      Da sich Subsonic genauso wie die standardm√§√üig in Sonos bereit gestellte Musikbibliothek verh√§lt, kann ich einzelne Songs, Alben und Playlisten entweder √ľber als Sonos-Playliste oder als Sonos-Favourite bereit stellen.
      Die Zugriffe aus fhem lauten dann analog: set LoadPlaylist oder set StartFavourite . LoadPlaylist verwende ich deshalb, weil ich dann noch zusätzlich vor dem Abspielen weitere Steuerbefehle absetzen kann, z.B. set Track Random, Shuffle 1, Repeat 1 oder Volume 20. Erst danach folgt set Play. Bei einem Radiosender brauche ich das nicht, daher wird der gleich abgespielt und die Lautstärke ggf. nachgeregelt.

      Sehr cool und sehr dynamisch ist: LoadSearchlist -> der liefert eine dynamische „Playliste“ anhand der angegebenen Kriterien wie z.B. Genre oder Composers, aber auch Filterergebnisse: …liefere alle Songs, in denen das Wort „Sahne“ vorkommt … (hab’s noch nicht ausprobiert, kommt sicher aber noch).

      Zur weiteren Beschäftigung lohnt: http://www.fhemwiki.de/wiki/SONOS

      Viel Spaß!

      Es gibt wohl auch noch die M√∂glichkeit, direkt ohne den „Umweg“ √ľber Sonos Playlisten oder Favouriten direkt auf die NAS zuzugrifen, aber

  36. Hallo Jörg,

    klasse Artikel. Was ich bei Sonos noch vermisse, dass man am Play 1 per Knopfdruck zum nächsten Lied einer Playlist springen kann, z. B. durch eine Tastenkombination oder Tastenabfolge.

    Wie lässt sich das denn realisieren?

  37. Hi Stephan,

    ich danke Dir f√ľr Deine Hinweise vom 4. und 7. Februar. Leider komme ich damit nicht weiter, weil mir wohl noch Kenntnisse fehlen. Obwohl schon 73, bin noch blutiger Anf√§nger hinsichtlich FHEM. Meine bisherigen Erfolge hinsichtlich der Einbindung von FS20, FritzDect und jetzt Sonos konnten nur durch Eintippen von Befehlszeilen aus Vorlagen von meintechblog.de erreicht werden. Um Radiosender √ľber Favouriten einzubinden, gab ich die Zeile ‚Äěset StartFavourite ‚Ķ‚Äú ins Kommandofeld ein und erhielt die Meldung ‚ÄěPlease define StartFavourite first‚Äú. W√ľrde gerne weiter basteln, wei√ü aber nicht wie.

    Gruß Manfred

  38. Hi ,

    #Bei Bewegung -> Webradiostream starten …
    das habe ich so umgesetzt .. leider startet das Radio immer ca. erst 15 Sek sp√§ter.. Was habe ich falsch gemacht … oder ist der Bewegungsmelder so tr√§ge (Also die minInterval habe ich auf 15 stehen) ist das der Grund .. aber kann ja auch nicht sein .. gibt ja Lichtl√∂sungen per Bewegungsmelder .. und da m√ľste das Licht ja direkt angehen …
    Danke f√ľr eine Info

  39. Hi,
    bei der Installation von sudo cpan SOAP::Lite wurde mir noch angeboten „XML pretty Splitter“ und einiges mehr zu installieren. Habe leider alles bejaht. Meine Frage: Ist das Alles notwendig oder kann dieses XML nachtr√§glich deinstalliert werden??? Welchen Nutzen soll XML haben ?????

    Danke :)

  40. Hallo, ich wollte gerade meine Sonos einbinden. Ich nutze einen NUC mit Ubuntu.

    Nachdem ich √ľbers Terminal „sudo cpan SOAP::Lite“ installieren will kommt folgendes:

    ************* WARNING *************
    Enter `q‘ to stop search
    Please tell me where I can find your apache src
    [../apache_x.x/src] ../apache_x.x/src
    Can’t stat `../apache_x.x/src‘

    hat jemand nen plan und kann mir vielleicht helfen? :)

    Gruß
    Flo

  41. Hallo,
    Erst mal vielen Dank f√ľr die super Blogs. Echt klasse Arbeit!

    Ich hab jedoch leider trotzdem ein Problem…. vermutlich mit irgendwelchen Rechten.

    Mein Fhem läuft auf einem NUC mit Ubuntu.

    Nach dem einbinden kommt folgender Fehler im logfile:

    Insecure dependency in require while running setuid at ./FHEM/00_SONOS.pm line 179.
    BEGIN failed–compilation aborted at ./FHEM/00_SONOS.pm line 179.

    Vielleicht kann mir jemand weiter helfen?

    Gruß
    Niko

  42. Hey,
    ich habe mir zuerst ein normales Internetradio zugelegt und bin dann auf die Sonos anlangen gesto√üen und auch wenn die wirklich teuer sind, sie sind der Wahnsinn! Ich bin ein totaler Fan von diesen Dingern, das ganze Haus damit verkabelt zu haben finde ich ist eine Klasse Sache! Wer bereit daf√ľr ist, dass n√∂tige Kleingeld zu opfern wird ein riesen Spa√ü daran haben.
    LG

  43. Hallo,
    habe mein Gl√ľck schon im fhem-Forum versicht, bekomme abr keine Antwort.
    Ich m√∂chte gerne die ‚bookmark‘-Funktion des sonos-Moduls verwenden
    Nach Eingabe von
    define sonosbookmarker sonos type
    attr sonosbookmarker bookmarkTitleDefinition:Kurt:all
    attr sonosbookmarks bookmarkSaveDir:/opt/fhem/sonosbookmarks
    save
    sehe ich im logfile den Fehler ‚Datei oder Verzeichnis nicht gefunden‘.
    Der Benutzer pi hat auf dem angegebenen Verzeichnis Schreibrechte.
    Jemand eine Idee, wie das Problem gelöst werden kann?
    Danke und Gruß,
    Kurt

  44. Bei mir ging es so wie beschrieben leider nicht ohne Weiteres. Die mp3 wurde zwar angelegt, aber in der Sonos App kam eine Fehlermeldung, dass nicht auf die SMB Freigabe zugegriffen werden kann.

    Mit folgender Ergänzung in der [global] der smb.conf habe ich das Problem gelöst:

    map to guest = Bad User
    guest account = nobody

    Ich hoffe, das hilft dem Ein oder Anderen, so wie mir dieser geniale Blog schon häufig geholfen hat.

    Mike

  45. Ich bekomme die Sprachausgabe auf meinem Pi3 um Verrecken nicht hin.
    Schreib-, Lese-, User- und Gruppenrechte (fhem/dialout) vergeben, aber die Sprache bleibt stumm. mp3-Files werden angelegt und im Sonos-Objekt wird die Ausgabe auch angezeigt. Keine Fehlermeldung, sondern einfach nur Stille. Hab alles entwendet was hier an Hinweise gepostet wurde. Habt Ihr noch eine Idee?

  46. Ich möchte beim betätigen des Up-Button meiner Sonos S1 eine Funktion starten, wenn die Sonos nicht läuft.
    Habe gelesen, dass man das mit dem Attribute buttonEvents (1:UU) lösen kann,
    bringe es aber nicht zum laufen.
    Kann mir bitte jemand eine Tipp geben.
    Danke
    Josef

  47. Hallo Jörg,

    sch√∂ner Beitrag, eine Frage h√§tte ich….in FHEM UI hast du auf der rechten Seite des Players drei Slider f√ľr Volume, einmal f√ľr die einzelnen R√§ume und der Gruppe.

    Wie sieht der Code den daf√ľr im UI aus, bin schon lange auf der Suche danach.

    Gruß

    Sandro

  48. Hi, ich habe es heute eingerichtet und es Funktioniert.
    Allerdings musste ich in der SONOS Software unter Einstellungen –> Musikbibliothek –> Ordner –> den Ordner mit dem Passwort vom PI einspeichern, da ich sonnst keine Zugriffsrechte hinbekommen habe.

    W√ľrde mich freuen wenn du dies in der Beschreibung mit als Hinweis einpflegen k√∂nntest. Danke :)

  49. Mit dieser Anleitung und den Posts konnte ich die Sprachausgabe auch in meinem System einrichten. Vielen DANK!

    Hätte jetzt aber den Wunsch einige Sprachausgaben gleichzeitig auf mehrere Sonos ONE Lautsprecher auszugeben (z.B. beim Hinweis der Fertigen Waschmaschine ist ja nicht klar wo sich die Person befindet. So sollte der Hinweis auf alle Lautsprecher in der Wohnung ausgestrahlt werden)

    Versuchte schon in Sonos-App Gruppen zu erstellen um diese dann anzusprechen, aber so scheint dies nicht zu gehen.

    Hat jemand hier bereits eine Lösung? (ausser den Befehl nacheinander auf alle Boxen auszusenden Рwas dann nicht gleichzeitig passiert)

  50. Hallo Jörg,
    super Arbeit. Vielen Dank.
    Eine Frage h√§tte ich. Wie kann ich die Rampe in Sekunden f√ľr das starten wie auch das stoppen der Musik einschalten. Fade IN/Out?
    Es gibt ja die M√∂glichkeit von „Volume [RampType]“ komme aber nicht ganz klar damit.
    Vielen Dank
    Heinz

  51. Tut mir leid, ich stehe wirklich ganz am Anfang und stelle mich offenbar besonders dumm an. Vielleicht findet sich jemand, der mir mit einfachen Worten auf Pferd helfen kann:
    Sonos ist in Fhem eingerichtet. Sprachnachrichten sind möglich. Ich schaffe es aber nicht, Favouriten und Sender einzurichten, geschweige denn auszuwählen. Wie bitte und wo geht das?
    Herzlichen Dank im Voraus!

    1. .. es gibt ein paar grundsätzliche Fragen im Zusammenhang mit Sonos und FHEM 6.1:

      die Sonos-Kommandos… funktionieren die noch?

      Bei mir erscheint die Fehlermeldung „SONOS: Set with unknown argument StartFavourite, choose one of DisableBookmark,EnableBookmark,Groups,LoadBookmarks,Mute,MuteOff,MuteOn,Pause,PauseAll,RefreshShareIndex,RescanNetwork,SaveBookmarks,Stop,StopAll“

      Sieht irgendwie nicht so aus.
      mfg
      sh

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert