Roon Extension: Deep Harmony - rich feature set for Logitech Harmony

Hi, @dadk0.

I haven’t run DeepHarmony for quite a while but what you’re seeing is what I saw before I installed the Roku TV emulator that DeepHarmony uses to bridge Harmony and DeepHarmony. I’m guessing you’ve already done that but just in case you haven’t, thought I would mention that not doing so can produce something like what you’re seeing.

1 Like

Strange thing is that when I start roon with the zone linked to the harmony extension it does not automatically the corresponding activity … it did in my past setup.

How to set this back?

Edit: Solved, when reinstalling I forgot to link the zone to the activity :wink:

But where can I find the TV emulator, or where do I need to install it ? :slight_smile:

The fact that you’re asking this is good news - it means you didn’t do an essential step. Pretty easy to fix. Here’s a link to the setup instructions - should take you to the relevant section.

You have to read a ways in - it will explain that you fake Harmony into thinking you have a very specific TCL Roku TV. Hopefully the article will get you going!

1 Like

Hey Thanks for the reply. The Problem was or still is my Roon Server and Deep Harmony are running as Docker on the same Server. Both have to run under: “Network type: Host”. So Roon communicates with Deep Harmony and Deep Harmony with my Harmony Hub. But only with v. 2.6.0 of the Deep Harmony container. If I’m telling Deep Harmony to update to 2.6.7 I’m not able to see the extension in my roon Interface. Anyone else with this strange behaviour ?

I see. Your earlier posts gave me the impression you didn’t have it working at all - but if I’m understanding correctly, you’re saying that Deep Harmony 2.6.0 works fine, 2.6.7 does not.

I keep a backup Roon core in a Docker container on a NAS. When I run Deep Harmony, I also run it in Docker on a NAS. To see if I could replicate your issue, I started up my Roon and Deep Harmony containers. Deep Harmony is on 2.6.7+387. It all works fine. Both containers in network host mode. It works on my end.

I still don’t fully understand what you’re experiencing. If you run 2.6.0, everything works fine and you have Deep Harmony successfully controlling Roon?

1 Like

Hey thanks for your support. Everything is running now, the main mistake was to run the Docker container of Deep Harmony in bridge mode. Roon was able to see the extension, but Deep Harmony was unable to see any kind of Harmony Hub. Now running both in host mode works just fine. Only thing is i have to run Deep Harmony in 2.6.0 . Update to 2.6.7. works but only in bridge mode. Then I can see the extension in Roon but running the issue that I can’t see any Harmony Hub. But you know what? If 2.6.0 runs, no need to update do a higher version :stuck_out_tongue_winking_eye:

1 Like

Thanks @Adam_Goodfellow for this great extension! In the past I was trying to set it up without luck, but few days ago I’ve installed the Roon extension manager from The Appgineer on dietPi and then saw deep harmony. I am running a pi zero 2 w, DH 2.6.7+387. Long story short now I am able to control roon via harmony remote. Pretty sweet. I have a question. Right now I am running in seek/skip set as reversed dual button configuration. I tried to set it as dual function, but whatever I do, on press and hold it rewind or go forward, and then it switch tracks. I was checking in the Roku config in harmony but there is not next previous button config, there is just ff and rewind. Not a big deal to keep it as is but I was wondering if there is a way to have both functions. Thanks for the great extension!

1 Like

@Adam_Goodfellow

Love using your Logitech extension. I have a question regarding its integration and the physical volume buttons on my iPhone. As long as I have your extension activated and configured the volume buttons of my iPhone aren’t able to control the volume levels in Roon. Pressing the software “-“ and “+” buttons in Roon work just fine but it would be awesome to be able to use my iPhone’s physical volume buttons.

Any ideas?

Is there any support for this extension and user issues?

This seems to be something to take up with Roon. I see no evidence of Roon passing sending requests to the extension in response to volume change via phone buttons.

Volume buttons do work in the Harmony app.

So “my issue” is in fact no issue and working as intended?

Yes - to best of my knowledge.

I’m not sure if this is going to be helpful or not.

I’m assuming that you are using your iPhone to control an endpoint other than the iPhone itself. If I’m wrong about this, then the advice below might not apply.

It seems very unlikely that enabling Deep Harmony has an impact on how the physical volume controls behave on an iPhone. Deep Harmony talks directly to your core - enabling it shouldn’t have any impact at all on how the physical buttons on your phone behave.

Roon Remote on iPhone has a feature called “Enable Lock Screen controls (beta)”. You can find this in Settings > Setup. My understanding of how this works is that whether or not this feature is on, iPhone volume controls work when the Roon app is running, the phone is unlocked, and there is music playing on the selected zone. If you want the volume controls to work when the app is in the background or your phone is locked, you need to enable this feature.

When you enable it, you’ll be warned that you should set volume limits on your zones and I strongly encourage you to follow this guidance. I’m not sure of the state of this feature now but, in the past, people have reported significant volume jumps when using it. That may or may not have been addressed.

In any case, I think @Adam_Goodfellow is correct that Deep Harmony isn’t involved in what you’re experiencing but that doesn’t mean there aren’t other issues in play. Hope this helps.

Thank you for your reply. I have no idea what is supposed to happen when deep harmony is enabled. All I know is that my physical volume buttons on my iPhone are able to control the volume of my Roon device perfectly when deep harmony is disabled but stop working as soon as the deep harmony extension is enabled.

When I checked it earlier:
When Roon is itself controlling the volume directly, it does just that regardless of the source of the volume control.

When a volume control device extension is set, then Roon calls the extension to control the volume.

When you use control on Roon on keyboard or within a device volume control UI (popup from bottom right of UI) then Roon makes the calls as expected. I can see that in my extension logs.

When you do the same from the phone UI, this does not happen - there is no evidence of any call being made to the extension, so it seems to be a Roon problem. Whether this is intended, or an oversight, I have no idea.

Deep Harmony control works in two directions -

  1. Control from Roon to Harmony allowing Roon to control the volume of your amp etc via IR/BT etc (this is what happens when you register a volume control device in audio device settings in Roon).
  2. Control from the extension to Roon allowing your harmony remote to control Roon’s volume regardless of the device type. This is always available.

If you have a DAC or that can be directly controlled by Roon, then its simple - disable the volume control extension in Roon audio device setup for that device.

If you want to get Roon to accept Volume control from your phone buttons and send those instructions to an extension (ie Deep Harmony) so it can send IR etc then that appears to needs a change to Roon code and therefore a feature request to Roon. If they should choose to implement this and assuming they implemented it via the existing mechanism (there is no reason why not), then it would automatically work with the existing release of Deep Harmony. There is nothing I can do about this, nor need to do.

I suggest you open a feature request about it on the line of pass phone volume control buttons to extensions.

After having looked at the way Roon does this (I didnt even know they had got around to this for other than phone as the output), then it does seem buggy or at least unaware of the audio device configuration, so maybe a bug needs to be raised as well.

I am schooled.

I wonder why I don’t have similar issues with the various volume control extensions and strategies I use including Home Assistant and rooExtend. I’m not adding any value here, though, so I’ll shut up now.

If/when these controls get forwarded to deep harmony, deep harmony itself has always had throttling of volume control command rate specifically to prevent such accidents, but of course there is a limit to what it can do.

My guess is whoever is implementing this completely forgot about the existence of extensions or perhaps decided it was out of scope or maybe something to be done later. AFAIK the SDK has not been updated for a very very long time.

1 Like

That’s interesting. I think this is one of the threads that I vaguely recalled in which people discussed issues with iOS volume controls (issues with iOS device volume and Roon volume jumping around). Nothing extension involvement:

You don’t need to educate me on how extensions work :slight_smile: There are obviously gaps in my understanding. Maybe there’s a formal “volume extension” protocol in which extensions such as Deep Harmony can take ownership of volume. That would make sense. I’m pretty sure that isn’t what extensions such as Home Assistant and rooExtend to, though - they seem to just be making volume adjustment API calls.

I jumped to the conclusion that this was user error on @Anthro’s part and I was wrong about that. Sorry for the misinformation.

This is exactly the way I would like to use your extension. I will open a feature request. Thanks for your time.