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

Deep Harmony 2.5.1 Released

Changes

2.5.1

  • Reverted to node.js to 10.4.1 due to issue discovered between tooling and node 12.x onwards that could result in a crash.

GitHub Binary Release Linux (Arm32v7, Linux x64, Windows x64, Mac OSX x64)
https://github.com/Khazul/roon-extension-deep-harmony-release

Docker Repository (Linux Arm32v7, Linux x64)
https://hub.docker.com/r/khazul/roon-extension-deep-harmony

Please see https://github.com/Khazul/roon-extension-deep-harmony-release/blob/master/README.md for full setup instructions.

As usual, existing users should get a notification when the update is available within the Extension view in Roon Settings which can take about an hour or so.

Hi Adam,

Some quick feedback on the 2.5.1 release

Had issues seeing the extension, restarted ROON Core and Stopped and Restarted Dockers Container. Extension found and upgraded to 2.5.1 with no issues

Added 2nd Harmony Hub, Saved Setting changes and tested both remotes - all working. 10 minutes later no remotes worked, reviewed the Extension Panel in Roon and the Deep Extension had disappeared. Stopped and Restarted Dockers and still no extension?

There were no crashes experienced but I am facing a ā€˜discoveryā€™ issue with the extension appearing in Roon??

OK, that is interesting.

Out of curiosity, is this affected by whether or nor your are running a PC/mac version of the Roon UI application anywhere?

Also could you send logs over so I can look though the disconnection? It would be useful to know the rough time when the extension disappeared just to make sure I am looking at the same time frame.

Thanks

No PC or Mac versions of ROON UI are used.

Roon UI is mobile only (iPad Pros for iOS and Samsung Notes for Android).

Hope that helps

Yes it does help, bit it is also a shame you have no PC/Mac remote available :slight_smile:

I have sometimes seen an odd issue where no extension (Neither Deep Harmony nor any other for that matter) is being detected until I run a desktop client UI somewhere. May be worth trying to fire up a phone UI see if that changes anything.

Just asking in case this is another data point for that oddity.

Both Tablet and Mobile UIā€™s were fired and same lack of discovery.

On an interesting note before the update there would be times when certain extensions like http-api would appear and disappear but this never happened with Deep Harmony as it was rock solid and never suffered from discovery issues (Dockers on Synology NAS, Core on Nucleus+)

OK, please extract and email logs over if you can, Iā€™ll take a look.

URL is http://<your nas ip>:9080/logs

You may need to use a browser other than MS Edge.

Also, if the extension appears in Roon again, could you also open Deep Harmony Settings, Tools and change the log level to ā€˜Allā€™ as this will then include Roon network activity just until this is resolved.

Thanks,

Adam

There is a long project in the background to do a lot more with a web UI that has been underway since last year, but has been on hold for a long time. It is the reason that I built a full web server into Deep Harmony. I donā€™t want to say much about this just yet, However Iā€™m sure you can guess what happens when a web UI is combined with remote control and uses all the buttons that have been labelled as ā€˜reservedā€™ in the Deep Harmony readme ā€¦ :wink:

As for the specific simple case you mention, iā€™ll give it some thought - Thanks.

1 Like

I canā€™t seem to update, Iā€™ve had two phantom entries for ever since first installing, I ignore them. The one that works wonā€™t accept the update. Iā€™ve rebooted, same. Otherwise, it continues to work normally and Iā€™m OK leaving it be but wanted you to knowā€¦

Screen Shot 2019-08-15 at 6.17.03 PM

Hi Adam,

2.5.0 introduced a weird quirk for me. I was hoping 2.5.1 would resolve, but problem persists.

Whenever, I click next track in roon from any client, my hub is executing the power on macro for my benchmark DAC/preamp device which is the only device used in my roon activity.

Itā€™s definitely only running power-on and not the full roon activity as the input is set to my power on default which is an unused input and volume is increased.

The benchmark dac/pre does not have option to program a start up volume or set volume to discrete value. The remote simply drives a mechanical motor to turn the volume knob.

For safety sake, my power off device macro turns the volume all the down so
I donā€™t accidentally blast myself in a subsequent session. With known starting point of no volume, power on holds volume up for 2 seconds which gets me to a good starting point for listening.

If the full roon activity were executing the input would revert back to roon device rather than switching to the unused input. Roon keeps playing the track, but no sound until I manually switch back to correct input on DAC/Pre

In the short term, Iā€™ve disabled source control, which eliminates the problem, but at the expense of having to start/stop activity from harmony app rather than roon UI.

Thank you,
Brett

I suspect the reason for the it not accepting the update is due to the runtime issue that I discovered in 2.5.0 vs node 12.7 that required revert to an earlier version of node (10.4.1). Specifically this issue sometimes causes a crash around large memory allocations - one of which is downloading an update :frowning:

Assuming that is the case, the cleanest way to fix this is a fresh docker image, but hold off until my next release as this will support config restore via a simple web UI. The config backup has been in the extension for a long time at http://:9080/config. It may be worth just trying this URL to get a backup as I hope the runtime issue in 2.5.0 is not affecting that as well.

Hi Brett,

I was going to ask you to send over logs to give me a full breakdown of your harmony config so I can understand this better, however upon running through the process at my end I realise that this data is not adequately captured in existing logs, and so will be added to the next update (2.5.2).

If you can hold off until then, then I hope we can get to the bottom of it at that time. This will be at least a day or so as I want to get config upload support in as well in case there are others who cannot upgrade form 2.5.0 and need to refresh their docker image without loosing existing configuration.

Long project sound very promising with a Web UI. Thanks again for your community development and support regarding this extension as its invaluable.

One function that could further improve CX would be that of being able to ā€˜loveā€™ at track level as this will help with bookmarking tracks that Roon Radio has discovered / presented

Unfortunately there are a lot of features in the native Roon UIs that are not currently possible via a web UI. I think ā€˜loveā€™ track is one of them, but it has been a while since I was delving into that functionality, so I may be wrong.

Thanks Adam - no rush at all. Appreciate all your support to this community.

Upcoming soon:

I have mistakenly wound up with two copies of the current extension.

Iā€™d appreciate any help getting rid of one Thx.

Hi Adam,

Wowā€¦nice work and great addition to the extension and I like touches with Build Version and Hub IP Address

I am assuming that it will support multiple hubs?

The one addition that might be worth making from a CX perspective is if ROON does feedback on what is the current active playlist or radio stream, then the ā€˜buttonā€™ color changes or ā€˜row spanā€™

Great work!!!

Also good news with my Discovery issues. The extension was found, logging set to all and it seems to be stable and operational on 2 hubs with no issues for the last 3 days

What platform are you running this on and are you using a docker image?

This is just one view/page of a very simple old-school admin console web UI. Yes it supports multiple hubs in the same way as the rest of the extension, but only show one hubā€™s buttons at a time. You can select which from another place in the UI.

The main purpose of this UI is just to provide a means of dealing with some run time or configuration issues that some people have experienced without depending upon correct pairing with Roon, which can sometimes be a blocker to resolving what would otherwise be easily resolvable issues. Statically listing assigned button is something that was very easy to add. Dynamic access to Roon state however would defeat its purpose as primarily a simple recovery tool with minimal dependencies.

A full Roon web UI is however also in development, but is still some way off due to various distractions :slight_smile:

Adam