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

Thanks for the feedback.

I’ll take a look.

Peter

1 Like

@peter_richardson
Trying out the fixed group feature.

  1. used HEOS to create the group
  2. named group in roon (houseA)
  3. ROON: upon creation, before starting any playback, the group showed vol of 100 - i changed it before playback
  4. started playback, respective volumes I believe were where they were individually before
  5. changing volume of a device causes the other device volumes to bounce around - almost all the time - sometimes it does not – mostly it does…
  6. changing the β€˜group name’ volume works as designed - all devices move accordingly

Patrick

1 Like

Thanks for testing everyone.

  • Seems only on creation a fixed group volume defaults to 100 - I’ll investigate. Shouldn’t effect any individual volumes.

  • See what you mean by β€˜bouncing around’ - they settle but it looks odd so will explore.

  • Playing with db setting of AVR - do many people use this? Its a bit of a pain but interesting to explore.

  • Identified what I needed to change in default settings - a typo when I had changed the options for buffer size.

Will load a minor release this weekend - don’t think there’s any real functionality impacted.

Keep the feedback coming.

3 Likes

It’s actually working better than ever without the buffer set I am finding. Whether this is a side affect of extension and roon being on same machine now as I ditched using Rock I don’t know.

1 Like

Hi All,

I’ve manually installed RHEOS on my Windows laptop and run it via Windows Powershell but I’m getting the following β€œERROR LOADING CONFIG FILE” issue.

When I run the app it briefly appears in the Roon Extensions section but crashes after a few seconds so I don’t get a chance to complete and save the settings.

Do you have any suggestions?

PS G:\ROON RHEOS\RHEOS-master> node .
23/02/2024, 01:14:55 STARTING ROON
192.168.50.21,Windows_NT,HP-DESKTOP-02G0VC7,win32,x64 Version : 0.8.6-0
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ (index) β”‚ name β”‚ pid β”‚ model β”‚ ip β”‚ resolution β”‚ network β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 0 β”‚ β€˜Home Theater’ β”‚ -744745573 β”‚ β€˜Denon AVC-X3700H’ β”‚ β€˜192.168.50.246’ β”‚ β€˜CD’ β”‚ β€˜wired’ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
SUBSCRIBING Bedroom SONOS 2 1701aafa5b54f87dd7d8219823ea0c56d615
SUBSCRIBING Home Theater 170118b08a38a81d04ae096b3fa6af6df49c
SUBSCRIBING Creative AUX 1701b1831f6e4df939f72dcd48b8b4e4addd
SUBSCRIBING D10s 170128ffd8637a46016f947969e7da967adb
SUBSCRIBING WiiM 17019cf098ffc6404174692c0441ff98f09c
SUBSCRIBING Bathroom speaker 17016dd8ae312390d261bacb464697b93ead
SUBSCRIBING Living Room speaker 1701fc2e818ed52543b665d74b4e7ed56293
SUBSCRIBING Living Room Chromecast 1701d4763541eec3a30c940595f6ddc00398
SUBSCRIBING Bedroom Hifi Chromecast 17018691b69e06a9c13eb455a7dd07384c44
SUBSCRIBING Creative Katana V2 170129b86ffdf0cfdd2e9c14abe4e0e8597a
ERROR CREATING CONFIG XML Error: Command failed: ./UPnP/Bin/RHEOS2UPNP.exe -i ./UPnP/Profiles/config.xml -b 192.168.50.21
[01:14:55.701] main:1709 Starting squeeze2upnp version: v2.1.14 (Feb 24 2023 @ 16:40:44)
[01:14:55.701] main:1716

!!! ERROR LOADING CONFIG FILE !!!

[01:14:55.752] Start:1448 Binding to iface [WiFi]@192.168.50.21:49152 (http:0)
[01:14:55.885] AddMRDevice:1346 [01021EE0]: player has extended information
[01:14:56.033] AddMRDevice:1382 [01021EE0]: adding renderer (Bedroom Hifi) with mac BBBB-7099711C

at ChildProcess.exithandler (node:child_process:422:12)
at ChildProcess.emit (node:events:518:28)
at maybeClose (node:internal/child_process:1105:16)
at ChildProcess._handle.onexit (node:internal/child_process:305:5) {

code: 3221226505,
killed: false,
signal: null,
cmd: β€˜./UPnP/Bin/RHEOS2UPNP.exe -i ./UPnP/Profiles/config.xml -b 192.168.50.21’,
stdout: β€˜β€™,
stderr: β€˜[01:14:55.701] main:1709 Starting squeeze2upnp version: v2.1.14 (Feb 24 2023 @ 16:40:44)\r\n’ +
β€˜[01:14:55.701] main:1716 \r\n’ +
β€˜\r\n’ +
β€˜!!! ERROR LOADING CONFIG FILE !!!\r\n’ +
β€˜\r\n’ +
β€˜[01:14:55.752] Start:1448 Binding to iface [WiFi]@192.168.50.21:49152 (http:0)\r\n’ +
β€˜[01:14:55.885] AddMRDevice:1346 [01021EE0]: player has extended information\r\n’ +
β€˜[01:14:56.033] AddMRDevice:1382 [01021EE0]: adding renderer (Bedroom Hifi) with mac BBBB-7099711C\r\n’
}
node:internal/process/promises:289
triggerUncaughtException(err, true /* fromPromise */);
^

[Error: ENOENT: no such file or directory, open β€˜G:\ROON RHEOS\RHEOS-master\UPnP\Profiles\config.xml’] {
errno: -4058,
code: β€˜ENOENT’,
syscall: β€˜open’,
path: β€˜G:\ROON RHEOS\RHEOS-master\UPnP\Profiles\config.xml’
}

Node.js v20.11.1

I recently started having problems with no available speakers. Look at rooon shows that the squeezebox search is not finding any speakers. Using airplay or the HEOS app works fine. Also, the RHEOS app is not showing under extensions. I’ve restarted, uninstalled and reinstalled, but nothing. The install seems to go fine but RHEOS doesn’t display. I’m also not running any sort of LM server and never have. I’m guessing the squeezebox failure is at the heart of the problems, but not clear on what squeezebox requires to function.

For a little background, I’ve recently reorganized my network a bit by moving the static IP assignments from the devices to the DHCP and blocking some IOT devices. The HEOS devices have not had any blocks applied. I also updated DNS to force all devices to use pfsense for DNS.

Any thoughts about what I may have done to break squeezebox on roon?

Could you share your log file please.

It sounds like the changes may be affecting the ability of RHEOS to discover UPnP players moving from Static to DHCP may be the issue (Ive messed up things this way in the past …). You may want to try powering down your network completely and restarting. Then restart your ROON server and finally restart the device your run RHEOS on.

Is ROON Extension manager showing in the device extensions?

Sorry for the late response.

Can you look in the the directory you used to install (RHEOS)?

/UPnP/Profiles and see if there is a file config.xml

Are you able to open this? Could you share the content please (you may want to pm me as this will contain ip addresses). If there is no file - create on called config.xml (it can be empty)

Not many folks seem to use the windows version and I don’t usually test on a windows machine - so I may need to better look at whats happening for you.

2 Likes

Thanks Peter!

Just FYI, I’ve using static IPs previously. The change is moving the management of them to the DHCP service. I’ve powered everything up and down, restarted, reinstalled both App server (in deitpi) and RHEOS (in Roon). I’ve also repeatedly shut down and restarted ROON.

Rheos log

2024-02-23T03:18:12.122641000Z STARTING ROON CONNECTIONS
2024-02-23T03:18:12.168198000Z 2/23/2024, 3:18:12 AM STARTING ROON
2024-02-23T03:18:12.225027000Z INITIATING SERVICES
2024-02-23T03:18:12.226329000Z 192.168.1.4,Linux,DietPi,linux,arm64 Version : 0.8.6-0
2024-02-23T03:18:12.235004000Z STARTING HEOS CONNECTIONS
2024-02-23T03:18:12.236572000Z STARTING HEOS
2024-02-23T03:18:12.296943000Z 
...
2024-02-23T03:18:52.200580000Z  ⚠ Please ensure RHEOS is enabled in Settings -> Extensions
2024-02-23T03:19:02.202189000Z  ⚠ Please ensure RHEOS is enabled in Settings -> Extensions
2024-02-23T03:19:12.204091000Z  ⚠ Please ensure RHEOS is enabled in Settings -> Extensions

I can’t post the extension manager log as it is too large

Thanks, the logs are very helpful. Your devices are being discovered as expected. However the app is not being recognized - have you looked in the Extensions - > view authorizations to see if the extension is showing up there? You should only have one showing - if there are multiple delete and re -enable.

If this doesn’t work it may be that the address changes have impacted the ability for ROON to connect with the extension. I would try re booting the ROON server and if that doesn’t work power down and restart the server.

Hope this works. Nothing has changed in the code for the past couple of weeks. (Though I am working on improving discovery at present to address the request to be able to enable new HEOS players without having to restart (way more challenging than I had thought …)

1 Like

Yes creating a blank config.xlm file solved it, thanks ever so much for your help! :grinning:

1 Like

Its something about windows and file permissions I think.

Enjoy!

@peter_richardson

The issue turned out to be Tailscale. I use Tailscale to provide secure remote access to my network (including Roon ARC) and it works great. Unfortunately, the tailscale client can’t be running on the same box as Roon server. I knew this from when I first installed Tailscale and then forgot while refiguring my network that I had reinstalled it on the windows box that runs Roon server. So stupid…but removed it and RHEOS is running great! Sorry for the time waster…

I have Tailscale running, extension manager with Rheos and roon server on same machine I don’t have any issues like you.

Always interesting to explore these things.

Thanks so much for sharing this! I figured that it was just a configuration issue on my part, so I’ll come back around and try it again. It is, however, easy enough to add the 192 network as a subnet to tailscale on my firewall, so ARC still works without it. I’ll post any findings when I try again…

1 Like

NEW TEST VERSION AVAILABLE

version 0.9.0-0 has been uploaded to GitHub and to the TEST Docker image.

This addresses the need to be able to update players β€˜on-the-fly’ and required re-coding of the whole configuration process.

This results in significant improvements in speed of loading and creation of players. In addition, if a HEOS device is disconnected or reconnected the device is created and added without stopping all other players.

HEOS devices usually notify when added or disconnected and will be automatically added or deleted but, in addition, I have added the ability to check manually for new devices and add/remove them if they are no longer discovered. It can take a minute or so after connecting for them to be available and a couple of minutes after they have been disconnected before they will be removed.

This also removes the creation of a UPnP config file which has been causing some issues on windows systems.

There is no longer 30 seconds of searching for players as once a HEOS device is connected it finds other players instantly. To do this please make sure that their firmware is updated.

In addition several other small bugs have been addressed.

  • Newly discovered devices that have not been seen previously on the system default to a volume of 0 rather than 100
  • Seek after Pause now defaults to be inactive

.

PLEASE TEST AND GIVE ME FEEDBACK. I suggest you save a copy of the old version you are using if installing from NPM/GitHub so you can revert if there are issues. I am not updating the β€œLatest” docker image until we check on any unforeseen issues.

awesome @peter_richardson – I will download and test now…

1 Like

Wow, the search and add runs REALLY FAST! next up thru the day, unplug and replug denon and heos speakers :upside_down_face:

1 Like