This is exactly where I’m at. I have about 7 Sonos speakers in varying sizes.
• If I stream to a single Sonos speaker things work as advertised.
• The minute I begin grouping those Sonos speakers into a Roon zone, music immediately begins to stutter, then a second later the party stops and I get the “Lost control of endpoint” alert.
• However, when I set my Room core to output to system default sound card (a Dell touchscreen that uses a 3.5mm audio cable) and connect that to the line-in on one of my Play:5 speakers (which is grouped to all speakers via Sonos app), then I have no problems at all.
So it appears to definitely be a problem with the manner in which RAAT groups zones vs the way Sonos groups zones in their own controller. I wonder if having the speakers grouped in two different controllers (RAAT and Sonos) at the same time causes some sort of issue. I’ll try ungrouping all speakers within the Sonos controller, and let Room try handling them all via RAAT.
UPDATE:
So that failed miserably. It seems Roon just can’t handle grouping multiple Sonos speakers together. Seems the only way I can get it to work is to out Roon (wired) to a single Play:5. Then in the Sonos app I can group the whole house without any drop-outs or lost connections.
My Roon flags: C:\Users\name\AppData\Local\Roon\Application\Roon.exe -scalefactor=1.25 -nosonosflac
Here is the track I tested with:
Adding one Sonos speaker at a time to the grouped zones (from within Roon) caused the Sonos app to throw the following errors, until you see the connection finally just die at the end.
Friday, February 23, 2018 - 9:59 PM Baghdad
Unable to play ‘Roon.flac’ - the song is not encoded correctly.
Friday, February 23, 2018 - 9:59 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 9:59 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 9:59 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:00 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:00 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:00 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:01 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:01 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:02 PM Baghdad
Unable to play 'Roon.flac' - the song is not encoded correctly.
Friday, February 23, 2018 - 10:04 PM Baghdad
Unable to play 'Roon.flac' - the connection to 192.168.2.113:9102 was lost.
Update 2:
Sonos is obviously struggling to read the file that Roon is sending. But while I’m adding new Sonos speakers to the zone, the first/original Play:5 I started playing to continues to play the song the whole time until the connection dies.
With the Sonos app open (side-by-side with Roon) you can see sonos group the speakers automatically as you group them within Roon, but the Sonos app throws a visible error with each speaker I add to the group (from within Roon). Sometimes the newly added speaker plays sound for a second or two before stopping, other times no sound comes out at all. But the Sonos error log is always the same as you see here, and the original speaker always continues to play until the connection dies.
If I start a song with all Sonos speakers grouped to begin with in Roon (first group all speakers, then stream to the zone), then none of the speakers play any sound and the same events appear in the sonos logs.
Question: it seems like Sonos uses a master speaker to synchronize a zone ( whichever that may be), and then handles syncing the rest internally ( which you can see works well when I output, wired, to a single speaker (default system output in Roon) which is subsequently grouped to all speakers in Sonos).
So does Roon try to stream to each Roon-grouped Sonos speaker individually? That may be causing a brain freeze in Sonos if they are optimized to listen to a single master and just slave off of it, but Roon is telling each speaker to be the master?
You guys seem familiar enough with the Sonos API to be able able to tell Sonos to create zones. So maybe we can revisit that code and check if there is a way to send the group command, but make sure we don’t try to stream to more than one (the original/master) Sonos speaker in the Roon zone.
If it were network related, I would expect to have the same problems using just the Sonos app, or with my current setup of outputting to a single Sonos speaker via audio cable to line-in - but thats not the case. After all my tests, I’m nearly positive that Roon must be trying to output to each Sonos speaker individually, yet Sonos’ internal instructions work off a master/slave protocol. Heh, or I’m dead wrong…