Roon Extension : RHEOS 2-way control & 192Hz/24bit Playback and Grouping on Denon/Marantz HEOS devices now in Extension Manager

No - the extension manager does this nicely and I dont want to make this complex.

You should be able to direct stdout for the container to a log file - I’ll see if I can get you pointers over the weekend.

A screen capture of the container output should be enough …

Also - I can happily turn on and off the AVR feature without any issues when run on my various set ups. Seems there is something about the way this is configured for you that is causing the issue. I wish I could discover why.

Im tinkering more with fixed groups at pesent but will wait and see others have continued problems with AVR controls once the source controls are all refreshed etc…

Thanks Mark I managed to replicate the volume control isse by attching the volume control to the β€œMain” or β€œZone 2” virtual devices. It’s meant to be attched as the replacement device volume control the the actual AVR (not either zone).

Remove the rheos volume control from the zones and you should be good. Ill see if theres a way I can make this clearer or even prevet it from being done (which may not be possible - but I will explore).

Thanks for the logs. Very hepful.

Thanks, Peter. I’ve got it straight now. Back to the test bench!

stopped the container manager in Synology and restarted…
started rheos test stack
went to extensions
enabled your extension
went to settings
changed Enable AVR zone control to OFF
-copied output from portainer below


12/8/2023, 6:00:20 PM STARTING ROON
10.10.20.211,Linux,9f75627f4d4a,linux,x64 Version : 0.8.3-5
STARTING HEOS
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ (index) β”‚ name β”‚ pid β”‚ model β”‚ ip β”‚ resolution β”‚ network β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 0 β”‚ β€˜Denon AVR-X4700H’ β”‚ 928479579 β”‚ β€˜Denon AVR-X4700H’ β”‚ β€˜10.10.20.227’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 1 β”‚ β€˜Marantz SR7012’ β”‚ 1445597011 β”‚ β€˜Marantz SR7012’ β”‚ β€˜10.10.20.226’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 2 β”‚ β€˜Master-SoundBar-[Denon]’ β”‚ -1728112551 β”‚ β€˜Denon Home Sound Bar 550’ β”‚ β€˜10.10.20.228’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 3 β”‚ β€˜Denon-150-Office-R’ β”‚ -304814476 β”‚ β€˜Denon Home 150’ β”‚ β€˜10.10.20.236’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 4 β”‚ β€˜Denon-150-WestHall’ β”‚ -566329936 β”‚ β€˜Denon Home 150’ β”‚ β€˜10.10.20.233’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 5 β”‚ β€˜HEOS-5-Bath’ β”‚ 1936207747 β”‚ β€˜HEOS 5’ β”‚ β€˜10.10.20.230’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 6 β”‚ β€˜HEOS-7-WineRoom’ β”‚ -40054639 β”‚ β€˜HEOS 7’ β”‚ β€˜10.10.20.229’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
DISCOVERING DEVICES
READING PROFILES
12/8/2023, 6:00:21 PM DIFFERENT PLAYERS
12/8/2023, 6:00:21 PM UPDATING CONFIG
12/8/2023, 6:00:21 PM CREATING ROOT XML
12/8/2023, 6:00:21 PM CREATING CONFIG FROM IP 10.10.20.211
:warning: Please ensure RHEOS is enabled in Settings β†’ Extensions
12/8/2023, 6:00:34 PM ROON PAIRED com.RHeos.beta
BUILDING DEVICES
CREATING Denon-150-WestHall
CREATING Denon-150-Office-R
CREATING HEOS-7-WineRoom
CREATING Denon AVR-X4700H
CREATING HEOS-5-Bath
CREATING Marantz SR7012
CREATING Master-SoundBar-[Denon]
ROON SERVER IP ADDRESS 10.10.20.210
CREATING ZONE CONTROLS
TESTING IF AVR Denon AVR-X4700H
TESTING IF AVR Marantz SR7012
STARTING TO MONITOR AVRS
ADDING LISTENERS
SETTING LISTENERS
UPDATING HEOS GROUPS
CREATING FIXED GROUPS
SETTINGS [
[ β€˜host_ip’, β€˜β€™ ],
[ β€˜streambuf_size’, 524288 ],
[ β€˜output_size’, 8388608 ],
[ β€˜stream_length’, -3 ],
[ β€˜seek_after_pause’, 1 ],
[ β€˜volume_on_play’, -1 ],
[ β€˜volume_feedback’, 0 ],
[ β€˜accept_nexturi’, 0 ],
[ β€˜flac_header’, 0 ],
[ β€˜keep_alive’, 0 ],
[ β€˜next_delay’, 15 ],
[ β€˜send_coverart’, false ],
[ β€˜send_metadata’, true ],
[ β€˜flow’, 0 ],
[ β€˜max_safe_vol’, 70 ],
[ β€˜avr_control’, true ],
[ β€˜fixed_control’, true ],
[ β€˜log_limit’, 1 ],
[ β€˜clear_settings’, false ],
[ β€˜upnp_ip’, β€˜192.168.1.165’ ]
]
DENON AVR-X4700H HAS POWER SWITCH
MARANTZ SR7012 HAS POWER SWITCH
DENON AVR-X4700H HAS ZONE 2
CREATING AVR CONTROLS FOR Denon AVR-X4700H
CREATING SOURCE CONTROL Denon AVR-X4700H​ Main​ Zone
CREATING SOURCE CONTROL Denon AVR-X4700H​ Zone​ 2
CREATING VOLUME CONTROL Denon AVR-X4700H
MARANTZ SR7012 HAS ZONE 2
CREATING AVR CONTROLS FOR Marantz SR7012
CREATING SOURCE CONTROL Marantz SR7012​ Main​ Zone
CREATING SOURCE CONTROL Marantz SR7012​ Zone​ 2
CREATING VOLUME CONTROL Marantz SR7012
Error: Must set control key to unique id
at RoonApiVolumeControl.new_device (/home/node/node_modules/node-roon-api-volume-control/lib.js:38:15)
at create_avr_controls (file:///home/node/app.mjs:780:93)
at connect_avr (file:///home/node/app.mjs:616:9)
DENON AVR-X4700H SOUND MODE IS STEREO
MARANTZ SR7012 SOUND MODE IS STEREO
12/8/2023, 6:00:57 PM PAIRED
CREATING Denon-150-Office-R
CREATING Denon-150-WestHall
CREATING Denon AVR-X4700H
CREATING Marantz SR7012
CREATING HEOS-5-Bath
CREATING Master-SoundBar-[Denon]
CREATING HEOS-7-WineRoom
file:///home/node/app.mjs:504
avr_zone_controls[(Math.abs(avr.pid)+index)].update_state({ supports_standby : false })
^
TypeError: Cannot read properties of undefined (reading β€˜update_state’)
at Object.save_settings (file:///home/node/app.mjs:504:53)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Node.js v19.9.0
12/8/2023, 6:01:01 PM STARTING ROON
10.10.20.211,Linux,9f75627f4d4a,linux,x64 Version : 0.8.3-5
STARTING HEOS
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ (index) β”‚ name β”‚ pid β”‚ model β”‚ ip β”‚ resolution β”‚ network β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 0 β”‚ β€˜Master-SoundBar-[Denon]’ β”‚ -1728112551 β”‚ β€˜Denon Home Sound Bar 550’ β”‚ β€˜10.10.20.228’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 1 β”‚ β€˜Marantz SR7012’ β”‚ 1445597011 β”‚ β€˜Marantz SR7012’ β”‚ β€˜10.10.20.226’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 2 β”‚ β€˜Denon AVR-X4700H’ β”‚ 928479579 β”‚ β€˜Denon AVR-X4700H’ β”‚ β€˜10.10.20.227’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β”‚ 3 β”‚ β€˜Denon-150-WestHall’ β”‚ -566329936 β”‚ β€˜Denon Home 150’ β”‚ β€˜10.10.20.233’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 4 β”‚ β€˜Denon-150-Office-R’ β”‚ -304814476 β”‚ β€˜Denon Home 150’ β”‚ β€˜10.10.20.236’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 5 β”‚ β€˜HEOS-5-Bath’ β”‚ 1936207747 β”‚ β€˜HEOS 5’ β”‚ β€˜10.10.20.230’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β”‚ 6 β”‚ β€˜HEOS-7-WineRoom’ β”‚ -40054639 β”‚ β€˜HEOS 7’ β”‚ β€˜10.10.20.229’ β”‚ β€˜CD’ β”‚ β€˜wifi’ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
DISCOVERING DEVICES
READING PROFILES
PLAYERS UNCHANGED
BUILDING DEVICES
CREATING Denon-150-WestHall
CREATING Denon-150-Office-R
CREATING HEOS-7-WineRoom
CREATING Denon AVR-X4700H
12/8/2023, 6:01:01 PM ROON PAIRED com.RHeos.beta
CREATING HEOS-5-Bath
CREATING Marantz SR7012
CREATING Master-SoundBar-[Denon]
ROON SERVER IP ADDRESS 10.10.20.210
CREATING ZONE CONTROLS
TESTING IF AVR Marantz SR7012
TESTING IF AVR Denon AVR-X4700H
STARTING TO MONITOR AVRS
ADDING LISTENERS
SETTING LISTENERS
UPDATING HEOS GROUPS
CREATING FIXED GROUPS
SETTINGS [
[ β€˜host_ip’, β€˜β€™ ],
[ β€˜streambuf_size’, 524288 ],
[ β€˜output_size’, 8388608 ],
[ β€˜stream_length’, -3 ],
[ β€˜seek_after_pause’, 1 ],
[ β€˜volume_on_play’, -1 ],
[ β€˜volume_feedback’, 0 ],
[ β€˜accept_nexturi’, 0 ],
[ β€˜flac_header’, 0 ],
[ β€˜keep_alive’, 0 ],
[ β€˜next_delay’, 15 ],
[ β€˜send_coverart’, false ],
[ β€˜send_metadata’, true ],
[ β€˜flow’, 0 ],
[ β€˜max_safe_vol’, 70 ],
[ β€˜avr_control’, true ],
[ β€˜fixed_control’, true ],
[ β€˜log_limit’, 1 ],
[ β€˜clear_settings’, false ],
[ β€˜upnp_ip’, β€˜192.168.1.165’ ]
]
MARANTZ SR7012 HAS POWER SWITCH
DENON AVR-X4700H HAS POWER SWITCH
MARANTZ SR7012 HAS ZONE 2
CREATING AVR CONTROLS FOR Marantz SR7012
CREATING SOURCE CONTROL Marantz SR7012​ Main​ Zone
CREATING SOURCE CONTROL Marantz SR7012​ Zone​ 2
CREATING VOLUME CONTROL Marantz SR7012
DENON AVR-X4700H HAS ZONE 2
CREATING AVR CONTROLS FOR Denon AVR-X4700H
CREATING SOURCE CONTROL Denon AVR-X4700H​ Main​ Zone
CREATING SOURCE CONTROL Denon AVR-X4700H​ Zone​ 2
CREATING VOLUME CONTROL Denon AVR-X4700H
Error: Must set control key to unique id
at RoonApiVolumeControl.new_device (/home/node/node_modules/node-roon-api-volume-control/lib.js:38:15)
at create_avr_controls (file:///home/node/app.mjs:780:93)
at connect_avr (file:///home/node/app.mjs:616:9)
MARANTZ SR7012 SOUND MODE IS STEREO
DENON AVR-X4700H SOUND MODE IS STEREO

Thanks Patrick. It seems with multiple receeivers I need to set up a control key for each. (At leat thats the only error I can see …)

It’s getting late here and I will think about this and upload something for you to test as I can’t reproduce this in my set up.

I’ll ping you when its updated to the docker test image tomorrow.

Peter

In addition to the multiple receiver issue, I no longer have volume control from Roon with the latest version. It also seems that groupings are not matched in the HEOS app and previously the two apps tracked on speaker groups in real time. Not sure where to go from here.

Lost volume control to the Marantz again today. Switched back to using Deep Harmony to control it.

I keep two instances of his docker images - one is the last 0.7x which is very stable and the other is the beta 0.8 - so i can switch back and forth between testing his updates and, when broken, go back to 0.7… currently running 0.7x and waiting for 0.8 update…

Will update images for test and roon-extension-manager tonight. 0.8.4-0

Have tried to adapt to work with multiple AVRs and zones (this was causing an error in set up and that causes a crash ofthe extension). I have tried to simulate in my set up but will need feedback from those of you with multiple receivers. Please test with AVR Zones Control on and off.

Am looking at how to detect when I lose control of volume but the players still appear. This seems intermiitent and is hard to track down. Will continue to work on it.

Thanks for your patience.

Peter

1 Like

VERSION 0.8.4-0 Now available as β€œtest” and β€œlatest” inage in Docker and as an update in roon-extension-manager

This is to deal with an issue introduced in the last release which caused instability when using networks with multiple HEOS enabled AVRs.

With this version a Main Zone, Zone 2 and Sound Mode source control and costom Volume control will be created for each AVR. Please ensure that you refresh any previous contorls by selecting β€œLoad Defaults” in the Device setup are for each AVR and then attch the new controls and save.

In addition, I have corrected a small bug that showed the now playing information for non-Heos devices in the extension status information.

Please report how this is workin, and let me know if you experience issues.

Thank you.

Peter

1 Like

Looks much better… speaker grouping (on HEOS app and Roon) and volume working correctly. It is also powering up a single receiver correctly. The power button is still wonky… it works with one receiver, but, with two, it powered up the main receiver but blew up the group by removing the second receiver.

Sounds like some progress.

I will look at the power on and off control and see why this may be. Was the receiver in a group with other HEOS players and the whole group ungrouped when you wanted to turn off the receiver? I guess what we need is to remove the receiver zone, or both zones from the group?

Peter

Hopefully it was a metaphorical explosion!

One receiver the power button works as expected
Two receivers the second receiver doesn’t respond to the power button. The first does but blows up the group when used. Also, the volume in roon is not responding in a two receiver group, but seems to work correctly with just one receiver.

Here is a video of the behavior

Just uploaded a version 0.8.4-2, that should address the issue identified, of ungrouping when using the power button on a device without a power switch (most HEOS players). We can discuss what behaviour we might want on that, it could start play for example or be designed to remove the device from a group.

The behaviour of AVRs has also been improved, and I have worked on powering off the individual zones or the whole AVR when you toggle ther respective power buttons.

A NEW FEATURE, as requested by crystal_gipsy, is to allow a time delay to start playing from powering on a device with an on off switch (I have tested this on my receiver and a Denon Nework player). This avoids the skipping of the first part of tracks while the device powers up. In the extension settings I have replaced the ability to set a default sound mode for receivers (this now gets detected on start up as whatever the last setting was) and added an auto_play sector for devices that can toggle power.

The dropdown auto-play menu will show the devices and allow you to select a delay of between 0 and 20 seconds, after which the device will play the present selection. Or set to β€œOFF”, the default, and you can just use the normal play button.

Please let me know how this works in your systems and continue with feedback.

Thank you.

Best

Peter

PS If you do have isseus its always helpful to attach the log file from the extension manager (set collect logs).

PPS Still watching for loss of volume control - having trouble replicating - so if it occurs do send a log please.

2 Likes

@peter_richardson it seems the now playing bit in the extension doesnt show at all now is that intended/ Not sure its actually needed anyway what was the reason for it in the firstplace? The delays seem to work ok but had to make it 10 rather than8 as it is in the Harmony. Maybe it has extra delays that take it more that is just the power on delay.

Glad it’s working. I thought a drop down choice would be fine. Not surprised the timing may be different from your harmony - I’d hope you could control all you need via the RHEOS app eventually.

The now playing is just for my benefit when exploring what is possible in the interface. Was working for me so I’ll see if there’s any reason it might not show for you. As you say - not critical. I’d rather make sure it’s stable and user friendly.

1 Like

I did notice when it was there it repeated the now playing in Roon logs including the play icon you used. Again not sure it’s an issue but it just seems to spam extra stuff. I’m a less is more kind of guy so like it as it is now in the gui side of things. Took me a while I had to setup the AVR control though as not having an AVR I didn’t expect it to be there.

Humor me … it’s a very small load!

What is in th AVR control that you expected elsewhere? I put the auto play on its own menu …

I am relatively new to Roon. I came across this thread describing RHEOS and I think it is the perfect Extension for me. Unfortunately, I don’t believe that I currently have a way to load/run Extensions. I have a Nucleus and a QNAP NAS, but after doing a little research reading this thread I don’t think either will work.
Would the easiest way to use Extensions be to build a Raspberry Pi?