Using Sonos Speakers as Alexa Echo via Amazon Echo Control Binding--> Sonos Arc works, Sonos Move not

I’ve several Sonos speakers. I added a Sonos ARC as Amazon Echo device, so that I can use the text to speach channel.

With my Sonos Arc everything works fine, but my Sonos Move doesn’t work as an Amazon Echo device.

Let me explain the configuration of the Sonos Arc as Echo Device: I Installed the Amazon Echo Control Binding.
And I grapped the serial number of my Arc here.

http://openhabian:8080/amazonechocontrol/AmazonAccount

After that I manually added an Amazon echo device.
You can’t use the scan function from the binding to recognize an Sonos speaker as Amazon echo device.

And here the channel linked to the Item “AmazonArc_Sprich”

And the following ECMA Script works fine, with an perfect amazon voice (neural quality)

items.getItem("AmazonArc_Sprich").sendCommand("<speak> <voice language=\"en-AU\">Hello World </voice> </speak> ");

I can setup a Thing with my Sonos Move as Amazon Echo device, it even gets Online and I can link the text to Speech Channel to an Item also. It’s possible to send commands to the Item in the same way, but i can’t here anything.

After bit testing I figured out, the following speakers works as Echo:

  • Sonos Arc
  • Sonos Beam Gen 1
  • Sonos Beam Gen 2 (tested by @pleedell )

And following not:

  • Sonos Roam
  • Sonos Move
  • Sonos One

Has anybody an idea how to configure the One, Move or Roam?

I know, that I can use the Amazon Polly binding and use the native openhab voice/say command, but with the Echo device I everthing is faster and sounds much better, and I can use the neural voices for free.

And Sorry for my bad english, I’m not a native speaker…

1 Like

Works like a charm on Sonos Beam 2. Thanks much for the thing setup tutorial, this should be added to either the sonos or echo binding documentation.

Cheers

Maybe using audio sink as discussed here will be a workaround for you?

Yup, both approaches work fine.
TTS to sonos beam via audio sink and TTS to sonos beam via echo configuration (from the binding config page).

In my opinion the approach with the echo has some advantages.

It sounds better, because of the Amazon neuronal voices. And if you are playing music, the volume of the music would be reduced and the voice speaks parallel the music. When the voice has finished speaking, the volume of the Music would be increased again.

The approach with the audio sink would stop and start the music with some delays.

But the question is:
What I can do, to run a Sonos Roam, Sonos Move or Sonos One as Echo?

Agreed, the amazon alexa voice agent is the way to go, but nice to have more than one options. As for the other sonos devices I’d guess that they have to register their alexa voice agents in exactly the same way as the beam or the echo.

Blockquote …this should be added to either the sonos or echo binding documentation. …

Any Idea how to do that?

Using the echo control binding link appears to be documented (at least lightly) at Amazon Echo Control - Bindings | openHAB

This functionality is quite useful when trying to use the echo control binding for non-amazon devices that use alexa. I’ve used it successfully now for a sonos soundbar and also on ecobee thermostats that aren’t directly discoverable by the echocontrol binding.

Cheers