A Library and UI for controlling Denon Receivers, for linux and windows:
- C++ library for parsing the protocols:
- Telnet
- SSDP (UPnP) protocol, for automatic discovery of receivers
- Ipod / http protocol, for control
- UPnp events, for updates on status changes
- SSDP bridge, to discover Denon receivers which are on a different subnet. This also allows the official Denon Android app to find a receiver which is on a different subnet.
- Qt-based UI for basic control and status: power, volume, equalizer.
Denon receivers have two ways on communicating. One is the legacy serial protocol which is reachable over telnet (port 23). The other is a combination of HTTP based protocols. An overview is given in the table below:
| Port | Protocol | Path | description |
|---|---|---|---|
| 27 | telnet | serial commands/events | |
| 8080 | http | goform/Deviceinfo.xml | Android API |
| 8080 | http | goform/AppCommand.xml | Android API |
| 239.255.255.250:1900 | ssdp | SSDP Device discovery | |
| 60006 | scdp | upnp/desc/aios_device/aios_device.xml | UPnP Event description |
| 60006 | http | upnp/scpd/renderer_dvc/RenderingControl.xml | SCDP control |
| (listen) | http | upnp/event/renderer_dvc/RenderingControl | Volume change events |
Although both the Android and UPnP protocols does seem to have more features, they are also a whole lot more complex with xml-wrapped-in-xml constructions. As far as I know, no documentation exists. Since most of the protocol is xml-based, using wireshark and Denon's Android app make it relatively easy to figure things out. This does mean that the parsing code in this archive is far from complete.

