Esta integración para Home Assistant te permite seguir de un vistazo tu consumo, generación y máximas potencias registradas (maxímetro) configurando tu usuario de Datadis.
Para la visualización de los datos, existen varias alternativas:
Para instalar esta integración en Home Assistant necesitarás:
recorder
y lovelace
deben estar disponibles (lo están por defecto),Una vez satisfecho lo anterior, los pasos a seguir para la instalación son:
Configuración > Dispositivos y servicios > Añadir integración
sensor.edata_xxxx
donde xxxx
dependerá de los últimos caracteres de su CUPS, y de otros sensores con los datos.NOTA: La instalación puede tardar bastante en su primera ejecución, ya que la integración "rescata" el último año de consumos desde Datadis, y ésta a veces puede tomarse su tiempo. Periódicamente, la integración solicitará únicamente lo que le falta, en intervalos de 24h.
La integración ofrece los sensores de la figura. Cada sensor dispone de una serie de atributos visibles al pinchar, por ejemplo indicando qué parte del consumo se ha registrado en P1, P2, y P3.
La integración combina almacenamiento local (en ficheros), con la base de datos de estadísticas nativa de Home Assistant, lo cual habilita su uso en el panel de energía. Por defecto, las estadísticas generadas serán:
statistic_id | Tipo | Unidad | Significado |
---|---|---|---|
edata:xxxx_consumption |
sum |
kWh |
Consumo total |
edata:xxxx_p1_consumption |
sum |
kWh |
Consumo en P1 |
edata:xxxx_p2_consumption |
sum |
kWh |
Consumo en P2 |
edata:xxxx_p3_consumption |
sum |
kWh |
Consumo en P3 |
edata:xxxx_surplus |
sum |
kWh |
Generación total (>= 2024.07.0 ) |
edata:xxxx_maximeter |
max |
kW |
Maxímetro (>= 2022.09.0 ) |
edata:xxxx_p1_maximeter |
max |
kW |
Maxímetro en P1 (>= 2022.09.0 ) |
edata:xxxx_p2_maximeter |
max |
kW |
Maxímetro en P2 (>= 2022.09.0 ) |
edata:xxxx_cost * |
float |
€ |
Coste total (>= 2022.09.0 ) |
edata:xxxx_p1_cost * |
float |
€ |
Coste total en P1 (>= 2022.12.4 ) |
edata:xxxx_p2_cost * |
float |
€ |
Coste total en P2 (>= 2022.12.4 ) |
edata:xxxx_p3_cost * |
float |
€ |
Coste total en P3 (>= 2022.12.4 ) |
edata:xxxx_power_cost * |
float |
€ |
Coste (potencia) (>= 2022.09.0 ) |
edata:xxxx_energy_cost * |
float |
€ |
Coste (energía) (>= 2022.09.0 ) |
edata:xxxx_p1_energy_cost * |
float |
€ |
Coste (energía) en P1 (>= 2022.12.4 ) |
edata:xxxx_p2_energy_cost * |
float |
€ |
Coste (energía) en P2 (>= 2022.12.4 ) |
edata:xxxx_p3_energy_cost * |
float |
€ |
Coste (energía) en P3 (>= 2022.12.4 ) |
* Los campos marcados con asterisco no están habilitados por defecto, y se habilitan como indica el siguiente apartado.
Navegue hasta Ajustes > Dispositivos y Servicios > XXXX (edata) - Configurar
. Primero deberá seleccionar si desea activar o no las funciones de facturación, y en caso de utilizar PVPC seleccionará también dicha casilla.
Las variables disponibles son las configuradas en el paso anterior y los consumos del periodo a tarificar, pero con los siguientes nombres:
electricity_tax
: impuesto a la electricidad (e.g. 1.05 para el 5%)iva_tax
: IVA (e.g., 1.21 para 21%)kwh_eur
: coste del kWh en euros para la hora del consumo (se escoge automáticamente entre p1, p2, y p3; según convenga)kwh
: energía consumida en kWhp1_kw
y p2_kw
: potencia contratada en P1 y P2 (en kW)p1_kw_year_eur
y p2_kw_year_eur
: Coste de la potencia por kW en P1 y P2 (en euros y anual)meter_month_eur
: Coste del alquiler del contador en euros al mesLas variables anteriores pueden usarse para formar expresiones para los siguientes términos: energía, potencia y otros. No olvides contemplar el IVA. Puedes utilizar la que viene por defecto como base.
NOTA 1: ¡Siempre en minúscula!
NOTA 2: ¡No elimines las llaves del principio y final!
NOTA 3: El retorno o batería virtual aún no está soportado.
Este último paso es para confirmar que hemos confeccionado nuestras fórmulas correctamente. Es un simulador del último mes completo (si estás a mediados de julio, calculará junio), de modo que si se acerca a la de tu factura... ¡Lo has hecho bien!
No hay que rellenar nada, sólo visualizar, marcar la fecha desde la cual quieres aplicar los cambios de tarificación, y confirmar.
Una vez configuradas y calculadas (tendrá que esperar un poco), las estadísticas pueden configurarse en el panel de energía en Ajustes > Paneles de control > Energía > Añadir consumo (Red Eléctrica)
:
NOTA: Esta integración hace un uso gracioso del panel de estadísticas de Home Assistant que, aunque lo permite, no está totalmente preparado para manipular estadísticas a pasado.
Se ofrecen una serie de tarjetas nativas que facilitan la representación de los datos y pueden configurarse desde la UI de Home Assistant, seleccionando la configuración que desee en el editor.
Las tarjetas disponibles son:
consumptions
), excedente (surplus
), o facturas (costs
); agrupados por hora/mes/día/año.maximeter
)summary-last-day
), mes en curso (summary-month
), o mes pasado (summary-last-month
).Adicionalmente, puedes cambiar los colores añadiendo el atributo colors
al YAML resultante:
type: custom:edata-card
...
colors: # opcional, para cambiar los colores
- '#e54304'
- '#ff9e22'
- '#9ccc65'
NOTA: en futuras versiones se contempla ampliar y mejorar las funcionalidades de la tarjeta, así como proporcionar traducciones.
A continuación se ofrece la configuración orientativa para visualizar los datos obtenidos mediante apexcharts-card, que también debe instalarse manualmente o mediante HACS. Siga las instrucciones de https://github.com/RomRider/apexcharts-card y recuerde tener el repositorio a mano para personalizar las gráficas a continuación.
IMPORTANTE: en las siguientes tarjetas deberá reemplazar TODAS las ocurrencias de
xxxx
por sus últimos cuatro caracteres de su CUPS.El nombre de las entidades puede ser distinto en su instalación. Revíselo.
Los datos descargados se almacenan en:
config/.storage/edata/edata_xxxx.json
Para acceder a los mismos, puede consumir la propia API de websockets que utilizan las tarjetas, bajo las definiciones a continuación
Nombre del WebSocket | Descripción | Endpoint | Parámetros |
---|---|---|---|
ws_get_consumptions |
Obtiene el historial de consumos. | /ws/consumptions |
scups (requerido): Identificador SCUPS (CUPS abreviado). aggr (opcional, por defecto: "day"): Nivel de agregación ("day", "hour", "week", "month"). records (opcional, por defecto: 30): Número de registros a obtener. tariff (opcional): Tramo ("p1", "p2", "p3"). |
ws_get_surplus |
Obtiene el historial de excedentes. | /ws/surplus |
scups (requerido): Identificador SCUPS. aggr (opcional, por defecto: "day"): Nivel de agregación ("day", "hour", "week", "month"). records (opcional, por defecto: 30): Número de registros a obtener. tariff (opcional): Tramo ("p1", "p2", "p3"). |
ws_get_cost |
Obtiene el historial de costes. | /ws/costs |
scups (requerido): Identificador SCUPS. aggr (opcional, por defecto: "day"): Nivel de agregación ("day", "hour", "week", "month"). records (opcional, por defecto: 30): Número de registros a obtener. tariff (opcional): Tramo ("p1", "p2", "p3"). |
ws_get_maximeter |
Obtiene el historial del maximetro. | /ws/maximeter |
scups (requerido): Identificador SCUPS. tariff (opcional): Tramo ("p1", "p2"). |
ws_get_summary |
Obtiene un resumen (atributos). | /ws/summary |
scups (requerido): Identificador SCUPS. |
¿Por qué no me funciona?
Hermosa pregunta:
- Si no ve los datos en datadis.es, no los verá aquí, trate de solucionar primero lo anterior. Si no ha leído o seguido las instrucciones, hágalo.
- Si no se ha creado el sensor
sensor.edata_xxxx
, algo ha fallado y posiblemente sea una mala configuración del sensor, revise el log y siga las instrucciones.- Si el sensor se ha creado, pero sólo el atributo CUPS está relleno, es posible que Datadis no esté operativo en ese instante, deje la integración funcionando y se recuperará sola.
- Si el sensor se ha creado, y el atributo CUPS no está relleno, ha debido introducir erróneamente (a) sus credenciales, (b) su CUPS. Copie y pegue todos los datos anteriores desde la web de Datadis.es. Insisto, copie y pegue, algunas distribuidoras ofrecen un número de CUPS con dos dígitos adicionales que no coinciden con el de Datadis.
- Si no tiene idea de qué ocurre, puede habilitar la depuración en la configuración del dispositivo. Si nada de lo anterior funciona, cree una issue en https://github.com/uvejota/homeassistant-edata/issues, indicando versión, sintomatología y aportando los logs del paciente, y trataré de ayudarle lo antes posible.
¿Por qué hay huecos en mis datos?
Respuesta corta: porque la API de datadis no te ha dado esos datos.
Respuesta larga: porque la API de datadis es impredecible y a veces responde datos vacíos
[]
, o códigos50X
.Lo mejor que puedes hacer es esperar, sé que quieres ver tus datos ya, pero confía en mí, recargar la integración o reiniciar HA sólo va a conseguir que saturemos la API de Datadis. La integración está preparada para consultar cada hora (lo cual me parece más que razonable) los datos que le faltan completando los huecos. Cuanto más datos te faltan (e.g., primera ejecución), más tarda.
Veo huecos o consumos duplicados
Desde la versión
2022.09.0
, puedes regenerar las estadísticas manualmente mediante un servicio (Herramientas para desarrolladores > Servicios > edata.recreate_statistics
).