Roon module for Home Assistant

The PR is now merged, so the next release of home assistant (0.115) will have native support for roon.

Will post here when it’s released, but expect this to be 2/3 weeks.

9 Likes

thank you Greg and Marcel!

Thank you
Appreciate the integration

This is now released

The HA team also released a nice media browser that allows selecting music direct from their integration. Not currently supported by my roon code - but I’ve started looking at it.

8 Likes

Thanks a lot for the integration. I am using the existing code for more than a year now and it works great.

guys, do you still have a problem, that once HAAS is restarted you need to again accept newly discovered extension in Roon to get it working again?
I have hoped this will be fixed once the Roon extension will become integral part of HAAS, however it’s still occurring to me :confused:

It is persistent - as long as you approve when you first add the integration.

If it’s asking everytime you restart Haas, delete the integration and re-add it. Then it should be persistent.

Approving when using, rather then initially adding the integration doesn’t store the key correctly.

1 Like

@GregD many thanks!
As you have suggested, i’ve removed integration, restarted haaas, added integration again and after reboot of haas vm it’s now properly connected to the Roon.

I think somewhen in the past i must have removed by mistake the original extension approval as initially I was using roon extension from github etc.

Glad that sorted it. I should probably try to improve how that aspect works.

It caught me when I was developing testing too!

1 Like

This is fantastic news - thanks for all the hard work.

1 Like

Since migrating to the new integration I am missing the zoning/multiroom option on my HA media card. Is this just me?

Thanks.

The way the zoning code reused the source field of the media player didn’t pass the HA review process.

For the initial release I just removed the code.

I’m happy to look at re-adding it in a way that is more compatible with the HA approach.

From a brief look the Spotify component also had grouping, they have provided service calls for this, but not linked them to any gui.

This would make it easy to add buttons for specific group actions, although less easy to make it flexible.

How were you using the grouping?

Ah okay. I used the grouping to add/remove endpoints to the playing media.

Yeah, it was particular to be using the source field and perhaps wasn’t very intuitive

Having a similar more intuitive function to add/remove zones to groups (and integrating the new media browser) would be the creme de creme… but I struggle to picture how it would look/work.

Thank you for continuing work on this.

1 Like

I have had a brief look at the new media browser and have a first experimental poc working with roon.

Would need a lot more work to make a release version - but the HA and roon api designs seems broadly compatible.

2 Likes

Nice work! That’s really cool!

Thanks so much, I love this integration. If I can vote for a thing to add (don’t know if it’s difficult?) : the shuffle option, because I have a lot of playlist I play automatically, but they all start with the same songs now.

@razzi shuffle is there - but I don’t think the standard media player GUI card supports it.

I just tried this custom media player card which looks very good - and does https://github.com/kalkih/mini-media-player

Screenshot 2020-10-15 at 09.56.06
Screenshot 2020-10-15 at 10.01.33

Although you have to enable the shuffle button

Screenshot 2020-10-15 at 09.56.19

1 Like

If you’re running your playlists via scripts or automation - you can also turn it on programmatically

1 Like

You made my day! thanks

1 Like

It took me a while to get this working because of a port issue. I had installed Prometheus Node Exporter for resource metrics. By default, Node Exporter uses port 9100. I had issues with this initially being unable to load the display so I configured Node Exporter to use a different port and removed the mapping for 9100 for it. I guess this didn’t work completely. I could access the web display at :9100/display, but :9100 was still Node Exporter. I removed it completely and the integration and extension discovery worked instantly. Hopefully this might help anyone else that may run into a port conflict.

Anyway this is working great now, thanks!