Denon AVR Support

I see that hubitat has built in support for denon receivers. Not sure where to go to get it added. Not interested in any of the heos support either. Thanks

1 Like

Have you tried doing this?

1 Like

Thanks, where does one get the Denon driver at?

It's a built-in driver.

Create a new virtual device and choose Denon AVR in the type.

Once saved enter the IP of your AVR and then cycle through your inputs in the AVR to dynamically set the driver up. This can be done by simply spinning the input knob. The. You can rename them to any custom names you may have setup.

3 Likes

"...then cycle through your inputs in the AVR to dynamically set the driver up"

Could you please elaborate? When I spin the input knob there is nothing happening within the Hubitat app

Have you created a virtual device for your AVR? That has to be done first.

Yes, that is how I am able to control the volume, but that seems to be the only control available

As you spin the input dial the state inputSources variable should be populated. Given it’s a state variable you must refresh your browser to see the value. Example:

If you have renamed some of the inputs like I have while you have that input selected on your AVR use the Edit Current Input button to change the name. This sets the name key within the inputSources. Example from my screenshot is the MPLAY (Media Player) is renamed to Apple TV on my AVR and in the device.

And then what? So I can give it a name. So what? My dashboard still does not have any interface that allows me to do anything but change the volume.

I was just answering your first question :wink:. Dashboards and UI control of “music player” capable devices in HE is a much broader topic than this Denon driver. This driver was created the first year that HE was released along with Onkyo. It’s meant for automations versus UI control as I don’t believe the dashboard even existed at that time. I personally use it for voice control where I tell Alexa to “turn on music” which is tied to a virtual switch that has a rule that will turn on the AVR and set input to an Echo Dot. I also have it part of a night time rule to turn off since my family may forget to turn it off.

I personally don’t use dashboards that often so you may want to search the community for dashboard control of media players. Maybe something exists that you can utilize.

That sounds useful. How do I make a rule to change inputs?

Here is an example of one of my actions. You need to select Run Custom Action and then the parameter value will match the AVR input number from your device after you cycle through the inputs. 3 is my Echo Dot as an example.

1 Like

Sorry I was away for a while - I had some life stuff happen.

What you shared looks interesting, but I'm afraid I've no idea how you got to what you are showing.
Would you mind backing up your instructions a bit please, starting from the 'devices' menu of my Hubitat? Also, please don't be afraid to talk to me in basic terms, maybe as if I were a 5th grader - as far as Hubitat goes I am still working my way up to that. :wink:

Where are you lost. It seems you already created the Denon device. So now create a second device, using simulated switch instead. Then your done in devices. The rest is done in the rule machine app section. Hubitat has a very detailed documentation for using rule machine. Highly recommend going through that first if you're not familiar with it

Just found with a little extra effort and a few parts you maybe able to integrate older Denon AV receivers that don't have Ethernet/WiFi connectivity but only have a serial RS-232 control interface. The control protocol doesn't seem to have changed. The following approach worked for my AVR-2808CI.

My solution was to use a Raspberry Pi that I have supporting other HA things, thankfully installed close enough to the Denon and added the following:

-USB-to-serial cable--be sure to get one with a male 9-pin connector with screws, not hex nuts. My cable has the Prolific chipset and was plug-and-play with the Pi running the Raspbian O/S. These cables are usually less than $10.
--Install pySerial Python library with "pip install pyserial".
--Download the example file tcp_serial_redirect.py from the PySerial documentation to the Pi. I just put mine in the /home/pi directory.
--From the directory with the code run the command "sudo python ./tcp_serial_redirect.py --parity N --stopbits 1 -P 23 /dev/ttyUSB0 9600&" The command can be set up to start after boot up in case of a reboot.

The /dev/ttyUSB0 part of the command points to the USB serial cable's port. If you have additional ports, you may have to search for the correct number "ls /dev/ttyU*" should show any installed USB ports.

Eventually I will upgrade the Denon, but until then I can still have Hubitat control!

2 Likes

Is this still working for you? I'm now missing the setInputSource command on my Denon.

Assume you upgraded to 2.2.8 and encountering this? I haven't upgraded my "production" hubs to that release yet always let things setting before doing so. This still works on my 2.2.7 production hub but have upgraded my development hub to 2.2.8. I did notice that the setInputSource command is now missing from this driver.

@mike.maxwell is the author of the Denon and Onkyo stock drivers. Hopefully he can confirm and fix the issue.

1 Like

looking into it
found it, this will be fixed in the forthcoming hotfix for 2.2.8.

4 Likes

Thanks!

1 Like