Roon plug-in for Elgato Stream Deck released

Hi, just a quick post to let everyone know that my initial release of a plug-in for the Elgato Stream Deck (Roon Extension) went live this morning. More info and docs are here:

Feel free to post here or contact me directly with any feedback and bug reports.


//Tomi B.


Awesome! nice work on this, I just picked up a streamdeck yesterday, so perfect timing too.

1 Like

Hi, @Tomi_Blinnikka - this is really nice - I’m using it right now. It seemed like Roon on the Core didn’t properly enable the extension first time round so I uninstalled and tried again and it all works perfectly.

Thanks very much for your efforts on this. :smiley:

1 Like

Hi @Tomi_Blinnikka - I did notice one thing when playing a long Roon playlist with a 30 minute timeout set on the Stream Deck (and the album artwork set to display on the play button - which is a really nice option).

  1. The Stream Deck display turned off after 30 minutes, but the Roon playlist was still playing.
  2. I woke the Stream Deck display but the artwork was now a track behind
  3. When the next song started to play the artwork changed, but was still a track behind
  4. Clicking pause and then restarting play fixed it.

Not a big problem, and I’ve lengthened the timeout on my Stream Deck display, but I wondered if you’d seen this?

Hi Karen,

Nope, haven’t seen this. I’ll try to reproduce and see if I can get that fixed.


1 Like

Hi @Tomi_Blinnikka, I’ve just noticed that however I start playback (either by clicking “Play Now” at the top of the window or by selecting “Play From Here” by right clicking on a track) the same thing happens. The album cover appears and reflects the starting song. However, at the end of the first song it doesn’t change. All subsequent song changes do see a change in the album cover, but now show the previous track’s album cover.

It looks like the timeout of the Stream Deck display was not the issue.

Thanks for the additional info. I haven’t yet been able to reproduce the issue. In the meantime, can you try adding another button with the same settings to see if both do the same thing?

Also, some questions:

  • Mac or PC?
  • Stream Deck app version?
  • Roon version?
  • Do you have multiple outputs with similar names, a grouped zone, or something similar?
  • Does it happen with different Roon outputs (if you have more than one)?


1 Like

Hi Tomi, I’m running Roon 1.7 (build 537) on a Mac. The Stream Deck app version is 4.7.0(12981). I wasn’t playing to a grouped zone, just a single one. And it does happen with my other output. It seems like I’m losing the connection to my Roon Core periodically so perhaps that may explain some of what I’m seeing. I tried removing all the buttons and replacing them and couldn’t see the cover art at all, so had to uninstall and reinstall. But it still does the same thing, ending up one song behind.

Don’t spend any additional time on this please Tomi - it seems like it is something peculiar to my setup and I don’t want to impose on your kindness in developing this anymore than I already have.

One thing I would try is to expand the Roon Core settings under any button and trying Disconnect/Connect when you run into this next. Uninstall/reinstall shouldn’t really make all that much of a difference - that mainly removes the “global settings”, in this case the Roon address and port, so I’m guessing the disconnect/reconnect might end up with the same results.

The way the plug-in works is that it pretty much always updates the display when it gets an update over the network from Roon. This pretty much happens every second since Roon sends a message for each time playback / seek time changes. The plug-in does try to optimize rendering / fetching the the cover art by not updating the image if it hasn’t changed (so that it doesn’t have to reload/re-render - however it will need to render that if you have the play time showing since that has to be drawn over the image whenever playback progress and the time stamp changes).

1 Like

Hi Tomi, strangely when I switch on the option to show the elapsed time as well as album cover the artwork updates correctly. If I have artwork on its own then the first cover change doesn’t work.

So I’ll just leave the elapsed time set on. :smiley:

Thanks again for your patience and help.

Hi Tomi

I just got a Stream Deck (15 buttons) and love the Roon extension which is controlling my ROCK core. I have Previous, Play, Pause, Stop and Next set up across the middle row, and Roon Radio on/off and the four volume buttons across the bottom row.

There are two things that don’t work:

  1. If I move the Play button to the top row it only shows the cover art image for a moment, then goes dim
  2. If I enable Show elapsed time, it shows the time when I add it but it doesn’t update

Can I help to debug this?


Hi David,

Sorry to hear you’re running into issues. Let me see if I can reproduce those over the weekend and I’ll reach out with additional questions as needed. In the meantime, the some questions to start with:

  1. Windows or Mac?
  2. When the play button dims out, does it ever recover? What does the settings page show (i.e. is the plug-in disconnected from Roon Core? If so, does it reconnect when you click the connect button?)
  3. How many Roon zones/players do you have? Do any of them happen to have the same name?


Hi Tomi

I have partially fixed this. First answers to your questions:

  1. iMac (Catalina v10.15.5 running Stream Deck v4.8.0 (13007)
  2. When moved to the top row, when you press Play, the cover art flashes briefly then disappears and the button remain dim indefinitely. Plug in is still connected and buttons continue to work (apart from no cover art). Disconnecting and reconnecting from Roon Core makes no difference.
  3. Only two outputs, Uniti Nova (which is roon ready) and iMac. Roon core is running on a ROCK server.

Today I found that the only position that was behaving that way was the second column on the top row. Aha, that was where I first tried to set up the Play button before finding your instructions (I’d discovered the extension via Stream Deck More Actions). Maybe I’d done something that had corrupted that button position? I quit and restarted the Stream Deck app and the problem stopped. Now cover art stays showing.

There is still the problem with the Elapsed time not updating. Also if you switch profiles leaving Roon playing, the cover art doesn’t necessarily re-appear when you switch back. You can pause then play to restore it, or the setting of the Roon Radio button affects this. However nothing I’ve tried makes the elapsed time update.

FYI I am connecting to a remote ROCK core on port 9100. The iMac hosts a Roon client and also the Stream Deck. Connectivity is fine.

Having spent most of the day setting it up, I think this extension is wonderful, giving instant remote control over the ROCK server without needing any windows to be open on the Mac. Thank you for your great work.

I don’t mind about Elapsed time but if I could have one wish, it would be to be able to see the actual volume, perhaps something like the Elgato CPU button.



I literally just sent a new version off to Elgato that should fix your issues (and hopefully the issue that @Karen_Hughes was having, too). It’ll be version 1.0.5 whenever it shows up in the “store”. There were several issues that were fixed. I’ve added a change log to the instructions page at

I’m not sure when they’ll be able to push the update, so let me know if you’d like me to send you that directly to install manually.

I’ll add the request for displaying the actual volume to the todo list. Can you elaborate a little more which button(s) you’d like to see that on? (Roon volumes are a little complicated since they are dependent on the actual audio device, have different scale, and can be turned off etc…)


1 Like

@Tomi_Blinnikka You’re a star! :star2:

Thanks so much @Tomi_Blinnikka. As @Karen_Hughes says, you are a :star2:


Version 1.0.5 should now be in the store.


Thanks again @Tomi_Blinnikka - it’s working very well for me so far.

Hi got a streamdeck today.

I want to use this extension but my roon server is in a docker

Can you not talk to the extensions manager geezer so it can go in there?


That would totally depend on your network configuration for Docker. If Roon works overall and you have the right ports exposed, then I don’t see a reason why it wouldn’t work.