Skip to main content

A desktop GUI remote for the Denon DN-500 AV receiver.

Project description

Denon Remote Logo Denon Remote

License: GPL v3 PyPI - Python Version Downloads PyPI - Version

Control Denon Professional DN-500AV surround preamplifier remotely.

Screenshot

Settings Screenshot

Features

Target hardware

  • Denon Professional DN-500AV (Seems to be based on the same platform as the Denon AVR-1912 and AVR-2112CI)
  • More? Contributions welcome!

Communication

  • Ethernet
    • Using Twisted
    • connection status detection
    • automatically try to reconnect with exponential backoff
  • RS-232? also using Twisted
  • General MIDI input using Mido

Controls

  • Setup
    • IP address
    • Serial port?
      • COM (Windows)
      • tty (*NIX OSes)
  • On/Standby
  • Main volume
    • Get
      • Relative
      • Absolute
    • Set
      • Relative
      • Absolute
    • Mute
  • SPL calibrated display
    • EBU/SMPTE RP200: 85dB C SPL @ -18 dBFS (Equivalent to 83 dB C SPL @ -20 dBFS)
    • K meter
      • K-20: -20dBFS = 83dB C SPL (Same as SMPTE and EBU)
      • K-14: -14dBFS = 83dB C SPL
        • Can be compensated from SMPTE/EBU levels by lowering the output volume by 6dB
      • K-12: -12dBFS = 83dB C SPL
        • Can be compensated from SMPTE/EBU levels by lowering the output volume by 8dB
    • EBU R 128: -23LUFS (-23dBFS) = 73dB C SPL (Debatable/unclear removed for now)
    • Presets!
      • Relative (-18dB, -24dB…)
      • Absolute
      • SPL calibrated
  • Zone 2
  • Per Channel level (Up to 7.1)
  • Tone
  • EQ
  • Sound presets
  • Input select
    • Favorites
  • Security
    • Panel Lock
    • IR Remote Lock
  • Settings backup/restore
    • All
    • Subsystems?
  • Retrieve status
    • Logger
    • Update the GUI
  • Import EQ settings
    • From REW value file
      • Only use negative values! You can’t compensate a destructive room mode by adding energy to it.
  • Full Profiles/presets?
GUI
  • Using Kivy
    • Keyboard shortcuts:
      • M for Mute
      • Up/Down Vol +/-
      • Left/Right VolPreset +/-
      • PgUp/PgDwn SrcPreset +/-
  • Systray/Taskbar support using pystray
  • Only one instance is allowed (Microsoft Windows only)
  • Option to make window stay always on top (Microsoft Windows only)
  • Touch doesn't activate the window and doesn't steal focus (Microsoft Windows only)
  • Trigger events without having to activate the window first (Microsoft Windows only)
  • Draw it on the first touch enabled display if available instead of the main one
Windows executable
  • Handle shutdown to power off the device
  • Generate icon with IconMaker
  • PyInstaller (Fairly stable for Microsoft Windows)
    • UPX support
    • How to build:
  • Nuitka (Alpha support for Microsoft Windows)
    • Use hatch build; hatch run build:nuitka
  • PyOxidiser
  • cx-Freeze for multiplatform support?
  • VST plugin? (Not required if MIDI input is implemented but would be neat to have in the monitoring section of a DAW)

Mobile

  • Autonomous mobile app? Kivy enables that!
    • Android
    • iOS/iPadOS

Proxy/background service?

The receiver only allows 1 active connection. A dispatcher proxy could allow multiple simultaneous remotes (Desktop and mobile).

Other opportunities

Open ports:

  • 23/tcp (TELNET): BridgeCo AG Telnet server
    AVR serial protocol used here
  • 80/tcp (HTTP): GoAhead WebServer
    Web control (index.asp) Shows nothing.
    Most of the useful code is commented!
    CSS loading at "css/mainMenu.css" times out.
    Main control is available at "MainZone/index.html"!
  • 443/tcp (HTTPS):
    ERR_SSL_PROTOCOL_ERROR in Google Chrome
    SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE in Mozilla Firefox
  • 1026/tcp (RTSP): Apple AirTunes rtspd 103.2
  • 6666/tcp: ?
  • 8080/tcp (HTTP): AV receiver http config

Similar projects

Android

JavaScript:

PHP

Python:

Legal notice

License

GPLv3

Author: ©2021-2022 Raphaël Doursenaud.

This software is released under the terms of the GNU General Public License, version 3.0 or later (GPL-3.0-or-later).

See LICENSE.

Logo and icons released under the Creative Commons Attribution-Share Alike 4.0 International.

Dependencies & License Acknowledgment

  • Python v3.10
    Copyright © 2001-2022 Python Software Foundation.
    Used under the terms of the PSF License Agreement.
  • Kivy
    Copyright 2010-2022, The Kivy Authors.
    Used under the terms of the MIT license.
    Uses:
  • Twisted
    Copyright (c) 2001-2022 Twisted Matrix Laboratories.
    Used under the terms of the MIT license.
  • PyInstaller
    Copyright (c) 2010-2022, PyInstaller Development Team.
    Copyright (c) 2005-2009, Giovanni Bajo.
    Based on previous work under copyright (c) 2002 McMillan Enterprises, Inc.
    Used under the terms of the GNU General Public License version 2.0.

Fonts

  • Free Serif
    Copyright © 2022 Free Software Foundation, Inc.
    Used under the terms of the GNU General Public License version 3.0.
  • Roboto Mono
    Copyright (c) 2015 The Roboto Mono Project Authors.
    Used under the terms of the Apache License, Version 2.0.
  • Unicode Power Symbol
    Copyright (c) 2013 Joe Loughry.
    Used under the terms of the MIT license.

Logo and icons

Own work based upon:

Trademarks

  • Denon is a trademark of Sound United, LLC and Affiliates.
  • Denon Professional is a trademark of inMusic Brands, Inc.

Other

Other trademarks are property of their respective owners and used fairly for descriptive and nominative purposes only.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

denonremote-0.10.0.tar.gz (2.2 MB view hashes)

Uploaded Source

Built Distribution

denonremote-0.10.0-py3-none-any.whl (2.2 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page