New Denon and Marantz Volume Extension - non-blocking

Hi everyone! I found the Denon/Marantz Volume extension that already existed but it uses the telnet interface which takes sole control of the receiver’s remote control, which I did not like due to me using multiple systems to control my receiver using APIs. So, I worked with Claude AI to write a new extension that performs this function but it uses the HTTP REST API for the receiver that does not block the use of the API by other systems. This is release 1.0.0 and is working fine for me. Use at you own risk but give it a shot if you like and feel free to file bug reports and/or feature requests.

Roon Marantz Volume

If I have missed something or done something wrong for a published Roon Extension just let me know. I am happy to make sure it meets all required criteria to be considered good.

1 Like

Did I do something wrong here? No replies. Has anyone tried the code? Is there confusion that needs to be cleared up?

I wouldn’t take it that way, it’s just really quiet around here. :wink: I was surprised at the slow responses to $50 ESP32-S3 Knob Roon Controller but it picked up once some folks engaged.

Thanks for the new extension! I use a couple of SR6008 and hope this one works better for me.

Thank you for this! Been on the backlog and now I don’t have to do it : worked for my SR6008 (with a small config change, PR sent). Gonna see if I can have it work with two of these as I have 2x SR6008.

Cheers!

Hey, thanks for the reply! (And on Christmas no less!) I hope it works better for you too. Please don’t hesitate to report any bugs in Github and I will work to get them addressed. Happy Holidays!

1 Like

Pushed 3 PRs:

  • README had incorrect repo url
  • Allow configuring port number, because my SR6008 AVRs use port 80
  • Support multiple receivers to be configured

And now I have working Roon volume in the family and bedroom! Thanks much.

For easier distribution, I suggest submitting to the Extension Manager Repository. Here was a PR I submit a couple of days ago as an example. Happy to help you automate builds + push to dockerhub if you’d like.

For now I created an x86_64 image on my mac manually:

docker buildx build --platform linux/amd64 -t muness/roon-volume-marantz:multi-receiver --push .

I then used a docker compose config in Portainer:

services:
    roon-volume-marantz:
      image: muness/roon-volume-marantz:multi-receiver
      container_name: roon-volume-marantz
      network_mode: host
      restart: unless-stopped
      volumes:
        - /share/Container/roon-volume-marantz/config.json:/app/config.json

Awesome! Thank you so much! My only Christmas gift came late and I love it! I will work on these ASAP.

1 Like

I have considered this but firstly, since Doc Bobo’s extension is already there I did not want to directly compete with it until I have a known good product that does something different and secondly I wanted this to be tested and improved before considering it ready for mass deployment. I will certainly consider requesting inclusion once someone else tells me it is good enough for that.

1 Like

Fair enough. I prefer running all these on my Pi4B running rooExtend but I’ll run it on the NAS Portainer managed instance for now.

When you review the PRs, note that I used Amp and Codex. I only glanced at the code because it worked and seemed fine.

Thanks again for the PRs. I was able to accept the first 2 but the 3rd conflicted with #2. So I had that one rewritten. In any case they should all be set now. Thanks again. ( I cannot believe I let my config.json into the repo. I was pretty sure I have prevented that with the gitingore, but I guess not.

Test it out and let me know how it goes. if you think it is working well enough we can work on getting the other things you recommended done and then get it submitted to Extension Manager Repo.

1 Like

Awesome, thank you! Do you have an image pushed to dockerhub now or just make my own again?

I just added the github actions to make the docker hub image, updated the readme, and made a new release. I can see the image on docker hub, so give it a try and let me know. This is my first time releasing anything on docker hub, so I could have easily messed this up. Thanks for testing.

1 Like

Nice! Thank you. Worked great by switching to your image in my docker-compose.yml:

services:
    roon-volume-marantz:
      image: intrepidsilence/roon-volume-marantz:latest
      container_name: roon-volume-marantz
      network_mode: host
      restart: unless-stopped
      volumes:
        - /share/Container/roon-volume-marantz/config.json:/app/config.json

One suggestion for your https://github.com/intrepidsilence/roon-volume-marantz/blob/main/.github/workflows/docker-publish.yml:

platforms: linux/amd64,linux/arm64

I suggest adding linux/armv7 for folks running their Docker on older Pi (I think the 3 and 4).

Thanks, change made! Let me know when you have tested enough to know whether or not this is worthy of me requesting it to be added to the Roon extension repos.

1 Like

For me this is great. Used it a few times today and it’s been great across both AVRs.