Integración externa - Denon / Marantz AVR

¡Hola a todos!

Denon / Marantz AVR — Integración Gladys Assistant

Presentación

Esta integración externa permite controlar un amplificador-tuner Denon o Marantz desde Gladys Assistant, de forma local, sin cuenta en la nube ni dependencia de Internet. Se basa en el protocolo nativo « AVR Control » (Telnet, compartido por la casi totalidad de los amplificadores de red Denon/Marantz) y, para los modelos equipados con HEOS, en el protocole HEOS CLI dedicado al streaming. El amplificador envía automáticamente cada cambio de estado a Gladys en tiempo real — sin necesidad de escanear periódicamente el hardware.

Lo que hace hoy

  • Descubrimiento automático del amplificador en la red (SSDP/UPnP), con retroceso a IP manual (una o varias, separadas por comas) si el multicast está bloqueado.
  • Alimentación, volumen, mudo: controlables desde el panel de control, sincronizados en tiempo real con el mando físico o la aplicación Denon/HEOS.
  • Fuente de entrada: menú desplegable en el panel de control, con renombrado o ocultación personalizada de cada entrada (ej. mostrar « Chromecast » en lugar de « SAT/CBL »).
  • Modo de sonido: menú desplegable de los modos surround (Película, Estéreo, Pure Direct…).
  • Controles de reproducción (Reproducir/Pausa/Siguiente/Anterior) a través de una tarjeta « Música » del panel de control. Para las fuentes de streaming gestionadas por HEOS (Qobuz, Spotify Connect, TIDAL…), los comandos pasan automáticamente por el protocolo HEOS CLI; de lo contrario, utilizan el canal Telnet clásico.
  • Título en curso de reproducción (artista/título), actualizado tanto por las notificaciones empujadas por HEOS como por una verificación activa cada 30 segundos, para mantenerse actualizado incluso en caso de una desconexión puntual de la conexión HEOS.
  • Acción « Probar la conexión » para un diagnóstico rápido del estado del amplificador.
  • Imagen Docker publicada automáticamente (multi-arquitectura amd64/arm64) en cada nueva versión. También he trabajado en la seguridad de la imagen Docker para minimizar la superficie de ataque.

Límites actuales

  • Validado en condiciones reales en un solo modelo (Denon AVR-S970H) — el comportamiento puede variar ligeramente según el modelo o la versión del firmware.
  • Modo de sonido: la lista de modos propuestos es genérica y no cubre necesariamente todas las denominaciones según las generaciones de amplificadores.
  • HEOS: implementado a partir de bibliotecas y documentación comunitarias (incluida la biblioteca utilizada por la integración oficial de Home Assistant), aún no probado en condiciones reales de streaming de pago por el desarrollador. En caso de comportamiento inesperado, la integración cambia automáticamente al canal clásico sin romper el resto.
  • No hay multi-zona: Zonas 2/3 no gestionadas (por ahora, según las necesidades).
  • Descubrimiento manual multi-amplificadores: requiere una IP fija o una reserva DHCP por amplificador, la entrada no sigue los cambios de IP automáticamente.

¡Lo probaré mañana con mi Denon s650h!

Pues voy a tachar esta integración pendiente de mi lista :sweat_smile:
Gracias @lmilcent, aunque aún no tengo mi Marantz Stereo 70 (o el futuro Cinema 70 previsto para fin de año).

Ahaha perfecto :wink:
Si necesitas, le pedirás a tu Claude que haga una PR en mi repositorio, y yo le pediré al mío que implemente tu plan :rofl:

Falta la etiqueta local para que sea perfecto :wink:

¡Gracias! ¡Lo añado!

¡Genial! Por fin puedo controlar mi amplificador PM7000N. Quería saber si es normal que no se pueda usar la acción ‹ Hablar en un altavoz › con esta integración.

Sí, es normal, nunca lo he usado, así que no lo pensé. Veré si puedo añadirlo :slight_smile:

:speaker_high_volume: Nueva función: « Hablar en un altavoz » disponible en la integración Denon/Marantz AVR !

Hola a todos,

La integración Denon/Marantz AVR acaba de recibir el soporte de la acción nativa de Gladys « Hablar en un altavoz » (aquella que usamos para hacer anunciar un texto en TTS en una escena). Su amplificador Denon o Marantz ahora aparece directamente en la lista de altavoces disponibles para esta acción, al igual que un altavoz Sonos o un Google Cast.

¿Cómo funciona técnicamente (en dos palabras): el amplificador debe estar equipado con el módulo HEOS (esto es el caso de la casi totalidad de los modelos de red recientes) porque es el único camino que permite reproducir un flujo de audio arbitrario (como el archivo generado por la síntesis de voz). Sin HEOS, o si el módulo no es accesible en la red, esta acción no estará disponible para el amplificador — no hay solución de respaldo posible aquí, a diferencia de otros comandos de reproducción (Play/Pause…).

Para disfrutarlo:

  1. Actualice la imagen Docker de la integración.
  2. Abra la pestaña Descubrimiento, reinicie un escaneo y haga clic en Actualizar en su amplificador existente (las nuevas funciones no aparecen solas en un dispositivo ya creado).
  3. Cree o edite una escena con la acción « Hablar en un altavoz », y su amplificador debería aparecer en la lista.

Como para el resto del soporte HEOS de esta integración, está implementado a partir de la documentación del protocolo (aún no probado en condiciones reales en hardware HEOS por mi parte) — no dude en informar aquí si hay problemas, con los registros en modo depuración si es posible.

@Tolkyen me dirás si es funcional, aún no he podido probarlo en mi casa.

No puedo actualizar la integración… sigue siendo 1.0.9

Edito: mi mensaje es un poco basura, lo siento.
¿Estoy haciendo algo mal? Veo que el código se modificó hace 7 horas… pero creo que el problema es que no se ha hecho ningún lanzamiento… ¿tengo razón?

Última versión hace 4 días

¡Perdón, olvidé publicar el lanzamiento!

El Denon ahora aparece en los altavoces. Pero en mi prueba de esta noche (hora del este de Canadá) no habla en mi altavoz.

Me dirán, porque nunca había usado esta función.

Lo he probado en mi altavoz Denon Home 150 y el amplificador PM7000N y tampoco funciona :smiling_face_with_tear:

Tengo que investigar, porque parece que usa HEOS (Sistema de audio inalámbrico de Denon) para reproducir un archivo de audio específico, si he entendido bien. No parecía fácil de implementar.

Tras la instalación de la versión 1.0.12, realicé las pruebas de conexión y estos son los resultados:

Aquí están los registros para la Denon Home 150

Por si acaso, encontré esto: https://rn.dmglobal.com/usmodel/HEOS_CLI_ProtocolSpecification-Version-1.17.pdf

:speaker_high_volume: « Parler sur une enceinte » funciona finalmente en los amplificadores Denon/Marantz (v1.0.14)

La función anunciada recientemente tenía un error que impedía que se produjera sonido en algunos modelos: la URL del mensaje de voz se transmitía incorrectamente a HEOS, que la aceptaba sin poder leerla nunca. ¡Ya está corregido, probado y confirmado en mi equipo! :tada:

Por cierto, varias mejoras de diagnóstico llegaron con las versiones anteriores, para que los próximos problemas eventuales sean visibles directamente en los registros en lugar de ser silenciosos.

Como de costumbre: Integraciones → su amplificador Denon/Marantz → pestaña Supervisión → Actualizar.

@Tolkyen ¡Estoy interesado en tu validación en tu modelo o en los registros de la integración!

Pequeña actualización de última hora: versión 1.0.15 publicada. El texto « Ahora reproduciendo » mostrará « Oui FM - 63 kbps aac » en lugar de solo « 63 kbps aac » para las radios de Internet sin metadatos.

Para asegurarme de que lo hago bien, para transmitir un mensaje de voz:

  • debo crear una escena en la que controlo un dispositivo > transmisión de mensaje de voz > defino mi texto

¿Es eso?

Acabo de probar rápidamente esta mañana con la v1.0.15, funciona en el amplificador :star_struck: pero no en el Denon Home.

Aquí están los registros en los dos casos

PM7000N => OK

image

Denon Home 150 => NOK

:speaker_high_volume: « Hablar en un altavoz » ahora también funciona en los altavoces HEOS puros (Denon Home, HEOS 1/3/5/7, Bar…)

Soporte (teórico) de la acción « Hablar en un altavoz » en los altavoces HEOS autónomos de la gama Denon Home / HEOS — y no solo en los verdaderos amplificadores-tuners de red (Denon/Marantz AVR, serie HEOS Amp, PM7000N…).

Lo que cambia: estos altavoces no tienen el servicio de control « AVR Control » (Telnet) que usa el resto de la integración — solo HEOS les habla. Anteriormente, esto bloqueaba cualquier comando, incluyendo « Hablar en un altavoz » que, sin embargo, nunca ha necesitado Telnet. Esto se ha corregido: esta acción ahora pasa únicamente por HEOS.

Para probar con este tipo de dispositivo (no tengo ninguno en casa):

  • Añada la IP de su altavoz mediante la IP manual (Configuración de la integración) — no se detecta automáticamente mediante el escaneo.
  • Cree una escena con la acción « Hablar en un altavoz », elija este altavoz.
  • Verifique que el mensaje se lee correctamente.

Límites a conocer (intencionales, no son errores):

  • Solo la acción « Hablar en un altavoz » funciona en este tipo de dispositivo. Todo lo demás (alimentación, volumen, fuente, botones de reproducción…) sigue roto/sin efecto, ya que depende del protocolo Telnet que estos altavoces no tienen.
  • No hay descubrimiento automático para estos altavoces — solo IP manual.
  • Un soporte completo real de los altavoces HEOS (con sus propias funcionalidades adaptadas) sería un proyecto separado.

Como de costumbre: actualización a través de Integraciones → Supervisión → Actualizar.