Inicio/Monitorización Solar/Cómo Integrar un Inversor Solar Deye en Home Assistant con Modbus TCP: Guía Paso a Paso para Monitorizar y Optimizar tu Producción
Monitorización Solar

Cómo Integrar un Inversor Solar Deye en Home Assistant con Modbus TCP: Guía Paso a Paso para Monitorizar y Optimizar tu Producción

Alex R.Escrito por: Alex R.
Fecha: 12 Sep 2026
Lectura de 10 min
Cómo Integrar un Inversor Solar Deye en Home Assistant con Modbus TCP: Guía Paso a Paso para Monitorizar y Optimizar tu Producción

La integración de un inversor solar Deye en Home Assistant mediante Modbus TCP se ha convertido en una de las prácticas más demandadas por los entusiastas de la domótica y la eficiencia energética. A diferencia de otras marcas que limitan el acceso a los datos, los inversores Deye ofrecen un protocolo de comunicación abierto que permite extraer métricas en tiempo real: producción fotovoltaica, consumo de cargas, estado de la batería, potencia exportada a la red y decenas de parámetros más. Esta guía te acompañará desde los conceptos básicos de Modbus TCP hasta la implementación completa en Home Assistant, con ejemplos de configuración YAML, automatizaciones y soluciones a los errores más frecuentes. Al finalizar, serás capaz de monitorizar y optimizar tu producción solar con un nivel de detalle profesional, todo ello sin depender de nubes propietarias ni de pasarelas costosas.

1. Fundamentos de Modbus TCP y su aplicación en inversores Deye

Modbus es un protocolo de comunicación industrial creado en 1979 que sigue vigente gracias a su simplicidad y robustez. En su variante TCP, los datos se transmiten sobre Ethernet mediante tramas que incluyen una dirección de esclavo, un código de función, un registro y un valor. Los inversores Deye implementan un servidor Modbus TCP en el puerto 502 (aunque algunos modelos permiten cambiarlo) y exponen cientos de registros que reflejan el estado interno del equipo. Cada registro tiene una dirección única, un tamaño (16 o 32 bits) y una escala que debe aplicarse para obtener la unidad física (vatios, voltios, amperios, grados Celsius, etc.).

Para interactuar con el inversor, Home Assistant actúa como cliente Modbus. La integración nativa modbus permite leer y escribir registros de forma periódica. Es fundamental comprender la diferencia entre registros de solo lectura (input registers) y registros de lectura/escritura (holding registers). Los primeros suelen contener mediciones instantáneas, mientras que los segundos permiten modificar parámetros de configuración, como los límites de exportación o los modos de trabajo. La mayoría de los datos que necesitamos para monitorizar la producción se encuentran en los input registers, que se leen con la función 0x04.

1.1. Arquitectura de comunicación y requisitos previos

Antes de sumergirnos en la configuración, es crucial entender la topología de red. El inversor Deye debe estar conectado a tu red local, ya sea mediante cable Ethernet o Wi-Fi a través de un módulo compatible (como el LSW-3 o el datalogger integrado). Una vez asignada una IP fija (por ejemplo, 192.168.1.100), Home Assistant podrá alcanzarlo. Si tu instalación cuenta con varios inversores en paralelo, cada uno tendrá su propia dirección IP y deberás configurar múltiples instancias de la integración Modbus.

Además, necesitarás conocer el modelo exacto de tu inversor Deye, ya que el mapa de registros varía ligeramente entre las series SUN-5K-SG04LP3, SUN-8K-SG04LP3, SUN-12K-SG04LP3 y los híbridos monofásicos. La documentación oficial de Deye proporciona una lista de registros, pero en esta guía incluiremos los más relevantes y probados en instalaciones reales. También es recomendable habilitar el acceso Modbus TCP en el menú del inversor; algunos firmware lo traen desactivado por defecto.

Consejo / RecomendaciónAntes de realizar cambios en la configuración del inversor, anota todos los parámetros originales. Un error en la escritura de un holding register puede alterar el funcionamiento del equipo. Trabaja siempre con los input registers para monitorizar y reserva la escritura para ajustes avanzados una vez domines la integración.

2. Configuración paso a paso en Home Assistant

Home Assistant ofrece dos vías principales para integrar Modbus: a través de la interfaz de usuario (integraciones) o mediante configuración YAML. Para un control total y la posibilidad de definir múltiples registros con escalas personalizadas, recomendamos encarecidamente la configuración YAML. A continuación, detallamos el proceso completo.

2.1. Habilitar Modbus TCP en el inversor Deye

Accede al menú del inversor utilizando la pantalla LCD y el teclado. Navega hasta Configuración avanzada (a menudo protegida con contraseña, por defecto 1111 o 7777). Busca la opción Comunicación o Modbus y asegúrate de que el protocolo esté habilitado. Algunos modelos requieren seleccionar el tipo de conexión (Ethernet o Wi-Fi) y establecer el puerto (502 por defecto). Si utilizas un datalogger externo, verifica que no esté ocupando el puerto 502; en tal caso, podrías necesitar un segundo puerto o deshabilitar el datalogger.

2.2. Crear el archivo de configuración YAML

En tu instalación de Home Assistant, edita el archivo configuration.yaml o, preferiblemente, crea un archivo independiente en la carpeta packages para mantener el orden. A continuación, se muestra un ejemplo de configuración para un inversor Deye trifásico híbrido. Ten en cuenta que las direcciones de los registros pueden variar según el modelo; verifica con la documentación oficial.

modbus:
  - name: deye_inverter
    type: tcp
    host: 192.168.1.100
    port: 502
    sensors:
      - name: "Deye Producción PV"
        slave: 1
        address: 672
        input_type: input
        data_type: uint32
        scale: 0.1
        unit_of_measurement: "W"
        device_class: power
        state_class: measurement
      - name: "Deye Consumo Casa"
        slave: 1
        address: 676
        input_type: input
        data_type: uint32
        scale: 0.1
        unit_of_measurement: "W"
        device_class: power
        state_class: measurement
      - name: "Deye Potencia Batería"
        slave: 1
        address: 590
        input_type: input
        data_type: int32
        scale: 0.1
        unit_of_measurement: "W"
        device_class: power
        state_class: measurement
      - name: "Deye SOC Batería"
        slave: 1
        address: 588
        input_type: input
        data_type: uint16
        scale: 1
        unit_of_measurement: "%"
        device_class: battery
        state_class: measurement

Este bloque define cuatro sensores esenciales. Observa que para valores de 32 bits se utiliza data_type: uint32 o int32, y que la escala ajusta el valor bruto (por ejemplo, 0.1 para obtener vatios). El parámetro slave: 1 es el identificador Modbus del inversor; en instalaciones con múltiples equipos, cada uno tendrá un slave distinto.

2.3. Añadir sensores adicionales y plantillas

Además de los sensores básicos, podemos crear plantillas para calcular la energía acumulada, el autoconsumo o el rendimiento. Por ejemplo, un sensor de energía diaria se puede obtener integrando la potencia PV a lo largo del tiempo. Home Assistant incluye la integración integration (anteriormente Riemann sum) para este propósito. A continuación, un ejemplo de configuración en YAML:

sensor:
  - platform: integration
    source: sensor.deye_produccion_pv
    name: "Energía PV Diaria"
    unit_prefix: k
    round: 2
    method: trapezoidal

Con esta configuración, Home Assistant calculará los kWh generados en el día. También podemos crear sensores de plantilla para mostrar el estado de carga de la batería en formato legible o para combinar la producción de varios strings. La flexibilidad de YAML permite adaptar la monitorización a cualquier necesidad.

1Sensor de producción PV

Mide la potencia instantánea de los paneles solares. Es el dato principal para evaluar el rendimiento del sistema.

2Sensor de consumo de casa

Indica la demanda energética del hogar. Permite calcular el autoconsumo y la energía exportada a la red.

3Sensor de estado de batería

Proporciona el nivel de carga (SOC) y la potencia de carga/descarga. Fundamental para gestionar la autonomía.

4Sensor de exportación a red

Mide la energía inyectada a la red eléctrica. Esencial para monitorizar el vertido y su compensación.

3. Monitorización avanzada: dashboards y automatizaciones

Una vez que los sensores están disponibles en Home Assistant, podemos crear un panel de control personalizado utilizando tarjetas como Gauge, History Graph o Mini Graph Card. Para una visualización profesional, recomendamos instalar HACS y añadir tarjetas como apexcharts-card o power-flow-card-plus, que permiten representar gráficamente el flujo de energía entre paneles, batería, casa y red.

Además de la monitorización, la integración con Modbus TCP habilita automatizaciones inteligentes. Por ejemplo, podemos programar que el inversor limite la exportación a la red cuando el precio de la luz sea bajo, o que cargue la batería en las horas valle para luego descargarla en las horas punta. Estas acciones requieren escribir en holding registers del inversor, lo cual conlleva un mayor riesgo. A continuación, mostramos un ejemplo de automatización para ajustar el límite de exportación:

automation:
  - alias: "Limitar exportación a 0W en horas punta"
    trigger:
      - platform: time
        at: "18:00:00"
    action:
      - service: modbus.write_register
        data:
          hub: deye_inverter
          slave: 1
          address: 123
          value: 0

Este ejemplo es ilustrativo; la dirección del registro de límite de exportación varía según el modelo (consulta el manual). Antes de escribir, asegúrate de comprender el rango de valores y las consecuencias. Un límite mal configurado puede provocar que el inversor deje de exportar o que se produzcan errores de funcionamiento.

3.1. Caso práctico: optimización del autoconsumo

Imagina una vivienda con una instalación de 5 kWp, batería de 10 kWh y tarifa con discriminación horaria. El objetivo es maximizar el autoconsumo y minimizar el coste. Con Home Assistant y los datos del inversor, podemos crear una automatización que, en función del SOC de la batería y de la producción PV, decida si cargar la batería desde la red en horas valle o esperar a la producción solar. Los sensores de Modbus proporcionan la información en tiempo real para tomar decisiones.

Por ejemplo, si a las 10:00 el SOC es inferior al 30% y la producción PV supera los 2 kW, la automatización puede priorizar la carga de la batería. Si por el contrario, el SOC es alto y la producción excede el consumo, se puede activar la exportación a red. Todo ello sin intervención manual, gracias a la lectura continua de los registros Modbus.

4. Errores comunes y solución de problemas

La integración Modbus TCP no está exenta de dificultades. A continuación, enumeramos los fallos más habituales y cómo resolverlos.

Atención / AdvertenciaNunca escribas en registros de configuración sin conocer su función exacta. Una escritura incorrecta puede dejar el inversor inoperativo o en modo de fallo. Consulta siempre la documentación oficial y realiza copias de seguridad de los valores originales.
  • Error de conexión rechazada: Suele indicar que el puerto 502 está cerrado o que la IP es incorrecta. Verifica la conectividad con ping y asegúrate de que el inversor tiene Modbus TCP habilitado.
  • Valores negativos o desorbitados: Puede deberse a un tipo de dato incorrecto (uint16 vs int16) o a una escala mal aplicada. Revisa la documentación del registro.
  • Timeout en las lecturas: Ocurre cuando el inversor no responde a tiempo. Aumenta el parámetro timeout en la configuración Modbus o reduce la frecuencia de sondeo.
  • Conflicto con el datalogger: Si el datalogger original está conectado, puede que ya esté usando el puerto 502. En ese caso, desconéctalo o configura el inversor para aceptar múltiples conexiones.

5. Tabla comparativa de métodos de integración

Existen varias formas de conectar un inversor Deye a Home Assistant. La siguiente tabla compara las opciones más comunes, con sus ventajas y limitaciones.

MétodoVentajasDesventajasRecomendado
Modbus TCP directoSin nube, datos en tiempo real, control totalRequiere conocimientos técnicos, riesgo al escribir
Datalogger con APIFácil configuración, sin YAMLDependencia de la nube, latencia, datos limitadosOpcional
Integración vía RS485Compatible con modelos sin EthernetRequiere conversor USB-RS485, configuración más complejaOpcional
Pasarela externa (p.ej. Solarman)Fácil, sin acceso al inversorCoste adicional, dependencia de tercerosNo

Como se desprende de la tabla, la integración directa por Modbus TCP es la más recomendable para usuarios avanzados que buscan control absoluto y independencia de servicios en la nube. Las alternativas con datalogger o pasarelas externas pueden ser útiles para quienes prefieren una solución plug-and-play, pero sacrifican granularidad y privacidad.

6. Preguntas frecuentes (FAQ)

¿Es compatible mi inversor Deye con Modbus TCP?
La mayoría de los inversores Deye fabricados a partir de 2020, incluyendo las series SUN-5K-SG04LP3, SUN-8K-SG04LP3 y SUN-12K-SG04LP3, soportan Modbus TCP. Sin embargo, algunos modelos económicos o versiones antiguas pueden carecer de esta función. Verifica el manual de tu modelo o accede al menú de configuración para confirmar la presencia de la opción Modbus TCP. Si tu inversor no lo soporta, siempre puedes recurrir a un conversor RS485 a Ethernet.
¿Qué registros debo leer para monitorizar la producción solar?
Los registros esenciales son: 672 (producción PV total, uint32, escala 0.1), 676 (consumo de casa, uint32, escala 0.1), 590 (potencia de batería, int32, escala 0.1), 588 (SOC de batería, uint16, escala 1) y 123 (límite de exportación, uint16, escala 1). No obstante, las direcciones pueden variar según el firmware. Consulta la hoja de registros oficial de Deye para tu modelo exacto.
¿Puedo controlar el inversor desde Home Assistant?
Sí, siempre que escribas en los holding registers adecuados. Puedes ajustar parámetros como el límite de exportación, el modo de trabajo (autoconsumo, respaldo, etc.) o la programación de carga de batería. No obstante, esta funcionalidad conlleva riesgos: una escritura incorrecta puede provocar fallos en el inversor. Se recomienda extremar las precauciones y realizar pruebas en un entorno controlado.
¿Cómo soluciono los errores de timeout en las lecturas Modbus?
Los timeouts suelen deberse a una red congestionada o a un inversor que no responde con la suficiente rapidez. Aumenta el parámetro timeout en la configuración de Modbus (por ejemplo, a 10 segundos) y reduce la frecuencia de sondeo si es necesario. También verifica que no haya otro cliente Modbus (como el datalogger) compitiendo por la conexión. En última instancia, puedes optar por un sondeo menos frecuente para aliviar la carga.

7. Conclusiones y plan de acción

La integración de un inversor Deye en Home Assistant mediante Modbus TCP es un proyecto gratificante que te permitirá tomar el control de tu instalación solar. A lo largo de esta guía hemos cubierto desde los fundamentos del protocolo hasta la configuración práctica, incluyendo ejemplos de sensores, automatizaciones y soluciones a problemas comunes. Si sigues los pasos descritos, en pocas horas tendrás un panel de monitorización completo y la capacidad de optimizar tu producción y consumo energético.

Consejo / RecomendaciónAntes de realizar cambios en la configuración, documenta todos los registros y valores originales. Comienza leyendo solo los input registers y, una vez te sientas cómodo, explora la escritura en holding registers con extrema precaución. La comunidad de Home Assistant y los foros especializados en Deye son excelentes recursos para resolver dudas específicas de tu modelo.

Como plan de acción, te sugerimos: primero, verificar la compatibilidad de tu inversor; segundo, habilitar Modbus TCP y asignar una IP fija; tercero, configurar los sensores básicos en Home Assistant; cuarto, crear un dashboard atractivo; y quinto, implementar automatizaciones para optimizar el autoconsumo. Con cada paso, ganarás visibilidad y control sobre tu sistema fotovoltaico, maximizando el retorno de tu inversión.

TRANSPARENCIA INFORMATIVA

Este análisis técnico es independiente. No recibimos pagos de fabricantes para alterar valoraciones. Si realizas una compra a través de enlaces en este sitio, podríamos percibir una comisión de afiliación que ayuda a mantener el servidor activo, sin coste extra para ti.