Chromecast to a google nest speakers pair (stereo)


Chromecast binging allows me to play sounds on different speakers which are placed around the house via calling a rule ‘play sound’.
In one room I’ve got a configured speakers pair consisting of two nest mini speakers. And I can’t play anything on it via chromecast binding. My google home app shows that it consists of two speakers, I know both their IP addresses. I tried to create a chromecast thing for the left speaker, for the right speaker - still no sound. The only thing that I’ve noticed - it can change the volume when I set it in the ‘play sound’ rule.
If I separate them - everything works as expected.

Any idea how I can make a speakers pair working?

I’m using OH 3.2.0 - release build.


Yep, have the same problem. Was thinking I had a problem somewhere - but I guess I’m not the only one.
I think it’s because both speakers are “paired” together.

I’ve never paired speakers but wonder if the pair show up as a group in the Home App. If so, there should be a group that represents the pair which would be discovered as it’s own Thing by the binding. If not :person_shrugging:

They do appear, the paired devices, as well as the “group”. In google home the paired devices are not considered groups.
Good hint. I’ll have to delete all devices and add them again in openHAB because I moved a metric ton of google speakers around.
I’ll try this today and update.

update: yep, nope. The issue I have is that I use node red to push the TTS thinggie. And in node red I need to specify an IP. Groups/Pairs do not have IPs, so that doesn’t work :frowning:

The speakers paid doesn’t show as a group in the app. They are displayed as a ‘speakers pair’. If you open settings - it shows left and right speaker with their IP addresses.
My google devices are in another network, so can’t use auto discovery.

However, I made it working. The only thing you need to do is to enter a correct IP address of a speaker (for me I used LEFT one, the right one didn’t work) and a correct port. In my case the port was 32000.

The idea was from Chromecast binding description about groups:

with manual thing configuration the parameter port must be determined manually

I found the port by running netstat -a on my Win10 machine and opening ‘Cast to…’ in chrome to force it to search for devices. Then I was looking for a line with google-nest-mini and the port which should not be equal 8009:


I set the found port 32000 in the Thing configuration for the Chromecast thing and all is good now.

As an alternative solution (not tested, just an idea) - add this speakers pair into a group, use auto discovery to find the group. I think it should work.

1 Like

Cool! Gonna test that port and if it doesn’t work I’ll follow your instructions.
This is important information to add to the docs.
update: It works :open_mouth: Got my pairs working again. Node red still bugs out, I guess Ill have to move my TTS rules from there to openhab. Any hints on that regard? in node red it is super simple to get it to working, but on openhab I’m a bit confused with the old topics around.

See Multimedia | openHAB. You’ll need to install a TTS engine/add-on and then you can use the say Action giving it the ID of the Chromecast Thing you want to have the text spoken on.

I set this up long ago but removed it. My SO found it creepy that the house greeted her when she got home. I’ve not had a use for it since then.

1 Like

ROFL. Mine loves that she gets reminded to open the windows before it starts to get stuffy inside (high humidity) and reminds her to close the windows at the end of the end :stuck_out_tongue:
Cheers though, tomorrow I’ll check that out.

VoiceRSS works fine with the Chromecast binding and can ‘say’ stuff.

The only issue is that it interrupts what was playing (Spotify for example). Do you have any ideas how to continue playing the thing that was interrupted? I’ll create a new question when I have more details about this matter.

I don’t think that works unfortunately. Sonos speakers will continue but not the ones from google. As I understand it should be possible, but I haven’t seen a solution yet :frowning: