Iberdrola Distribución (i-DE) - Energy Monitor (Custom Integration Released)

Hooola, perdona que no te contesté al final.
Efectivamente, no tenía la integración PVPC instalada siquiera. La instalé y configuré con los datos de mi potencia aquella noche nada mas ver tu mensaje.

Ya ha pasado un tiempo y ahora creo que ya tengo mediciones en esa entidad… pero todavía tengo dudas de que se estén cogiendo bien, si te soy sincero (cabe recordar que no tengo mucha idea de esto la verdad) parece cómo si siempre se registrase el mismo dato:

¿Lo ves normal?

He actualizado a la última versión de hacs y desde entonces no hay forma que se cargue la integración, no sé si a alguien más le pasa. Ya llevo como 4 o 5 veces reiniciando. Lo seguiré intentando en distintas horas, es una putada porque así me va a descuadrar todo pero bueno, es lo que hay.
Ya lo he vuelto a reiniciar y después de 6 o 7 veces por fin se ha cargado la integración. No sé cuál era el problema

A mi tambien me falla el coste y consume por hora, los demas si que funcionan… Si que tengo el módulo del pvpc.

Me salen estos errores en el log:

 Entity sensor.ide_meter_reading (<class 'custom_components.ide.sensor.IDESensor'>) implements device_state_attributes. Please report it to the custom component author. 
Error while processing template: Template("{% if is_state_attr('sensor.pvpc', 'period', 'P1') %} {% set peaje=states('input_number.peaje_energia_p1') | float %} {% elif is_state_attr('sensor.pvpc', 'period', 'P2') %} {% set peaje=states('input_number.peaje_energia_p2') | float %} {% elif is_state_attr('sensor.pvpc', 'period', 'P3') %} {% set peaje=states('input_number.peaje_energia_p3') | float %} {% endif %} {{ (( states('sensor.home_energy_hourly') | float * (peaje + states('sensor.pvpc') | float) ) * (1 - states('input_number.bono_social') | float) * states('input_number.impuesto_energia') | float * states('input_number.iva_energia') | float) | round(3) }}")

Traceback (most recent call last):
  File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/template.py", line 406, in async_render
    render_result = _render_with_context(self.template, compiled, **kwargs)
  File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/homeassistant/helpers/template.py", line 1771, in _render_with_context
    return template.render(**kwargs)
  File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/jinja2/environment.py", line 1291, in render
    self.environment.handle_exception()
  File "/home/homeassistant/.pyenv/versions/3.9.9/lib/python3.9/site-packages/jinja2/environment.py", line 925, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "<template>", line 1, in top-level template code
jinja2.exceptions.UndefinedError: 'peaje' is undefined
Template warning: 'float' got invalid input 'unavailable' when rendering template '{% if is_state_attr('sensor.pvpc', 'period', 'P1') %} {% set peaje=states('input_number.peaje_energia_p1') | float %} {% elif is_state_attr('sensor.pvpc', 'period', 'P2') %} {% set peaje=states('input_number.peaje_energia_p2') | float %} {% elif is_state_attr('sensor.pvpc', 'period', 'P3') %} {% set peaje=states('input_number.peaje_energia_p3') | float %} {% endif %} {{ (( states('sensor.home_energy_hourly') | float * (peaje + states('sensor.pvpc') | float) ) * (1 - states('input_number.bono_social') | float) * states('input_number.impuesto_energia') | float * states('input_number.iva_energia') | float) | round(3) }}' but no default was specified. Currently 'float' will return '0', however this template will fail to render in Home Assistant core 2022.1

¿Igual es por este?

The normalized unit of sensor.home_energy_hourly (kWh) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None
The unit of sensor.home_energy_cost_hourly (€) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None

Ese mismo error me sale a mí también…

Buenas,

Esto está solucionado en la última versión beta que está disponible en HACS.

De esto:
jinja2.exceptions.UndefinedError: 'peaje' is undefined

Me parece que te falta algo, ya que no está cogiendo el valor para peaje.

Saludos

1 Like

Hay veces que el contador tarda en contestar y, muchas otras, que el mismo servidor de i-DE tiene problemas con los accesos. Eso no es algo que se pueda controlar.

En versiones futuras, cuando consiga algo de tiempo, el sensor cargará el último valor hasta que pueda actualizar después.

Saludos

1 Like

No le veo problema. Entre cada lectura horaria, se ve que el sensor identifica el incremento y que no supera 1 kWh.

Te pongo un ejemplo del mío, en que si quitas los picos, sale muy parecido:

Buenas a todos,

Acabo de crear una nueva versión beta (v0.2.0-beta.1) de la integración.

En esta nueva versión, al reiniciar HA, en el caso que la lectura falle o haya algo que impida que el sensor se actualice, se carga la última lectura que había antes de reiniciar.

Si esto pasa, al menos la integración se carga y no queda como “indisponible”; el sensor se seguirá actualizando posteriormente cada 60 minuto como normal.

Si lo queréis probar, en HACS, lo podéis instalar seleccionando la opción de “Redownload” y “Show beta versions”.

Si preferís descargar directamente, tenéis todo aquí: https://github.com/ad-ha/ide_api/releases/tag/v0.2.0-beta.1

Como nota adicional. Si alguien quisiera contribuir al proyecto y pudiera echar una mano con alguno de los issues abiertos (https://github.com/ad-ha/ide_api/issues), la ayuda será bienvenida.

Saludos

1 Like

A raíz de la actualización a la beta, me ha dejado de medir… puede ser por justo lo que subrayas… Pero me parece raro que antes funcionaba

Te ha vuelto a funcionar?

A mi me está funcionando sin problemas…

Si, parece que si que esta funcionando bien ya. Revise todos los campos y la fórmula y sensores…

Me siguen saliendo estos warnings:

The normalized unit of sensor.home_energy_hourly (kWh) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None. Go to https://my.home-assistant.io/redirect/developer_statistics to fix this
The unit of sensor.home_energy_cost_hourly (€) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None. Go to https://my.home-assistant.io/redirect/developer_statistics to fix this

Sigue las instrucciones que te aparecen (ir a Link to Developer tools: statistics – My Home Assistant y pulsar Fix) y lo puedes solucionar.

Mas info en este tópico y el anterior: Iberdrola Distribución (i-DE) - Energy Monitor (Custom Integration Released) - #48 by titobustillo

1 Like

Hecho, y solucionado.

Muchas gracias!

Expediente X!

Hola, me he puesto a configurar esta magnífica integración de iDE(mil gracias @VaReTaS ) y todo iba más o menos bien, me salían todos los sensores de consumo hora/día/mes y coste hora/día/mes, pero he estado trasteando y cuando he vuelto a pegar los sensores en configuration.yaml, de repente me han desaparecido los sensores de día y hora y misteriosamente sólo me aparecían los sensores de mes. He probado a borrar, reiniciar, volver a ponerlo y reiniciar, mil veces, pero nada. Pasado un rato y sin tocar nada de repente me han aparecido también los de hora, pero los del día siguen sin aparecer. Ahora sólo me aparecen los sensores del mes/hora.

Dejo captura de pantalla para que veáis lo que digo.

Esto es en el configuration yaml

Y estas son todas las entidades que me salen

¿alguna idea de que puedo estar haciendo mal o cómo solucionarlo?

Mil gracias por anticipado

Hola!
Enhorabuena, ¡trabajo brutal!

Me está dando el siguiente error, ¿sabéis a qué puede ser debido?

Gracias!

2022-02-18 13:24:25 ERROR (MainThread) [homeassistant.components.sensor] ide: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 431, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 718, in async_device_update
    await task
  File "/config/custom_components/ide/sensor.py", line 175, in async_update
    raise exception
  File "/config/custom_components/ide/sensor.py", line 172, in async_update
    self._state = await connection.current_kilowatt_hour_read()
  File "/usr/local/lib/python3.9/site-packages/oligo/asyncio/asynciber.py", line 95, in current_kilowatt_hour_read
    return (await self.measurement())["meter"]
  File "/usr/local/lib/python3.9/site-packages/oligo/asyncio/asynciber.py", line 84, in measurement
    data = await self.__request(WATTHOURMETER_URL)
  File "/usr/local/lib/python3.9/site-packages/oligo/asyncio/asynciber.py", line 58, in __request
    raise NoResponseException
oligo.exception.NoResponseException

Hola,

Los sensores de Utility Meter se actualizan con tiempos distintos en HA la primera vez que se ponen en marcha. Al cabo de un rato, cuando el sistema ya tiene datos, es cuando empiezan a aparecer valores.

Mi recomendación es que lo montes todo, confirmes que la configuración es válida, reinicias HA y a esperar que empiece a cuadrar todo.

Un saludo

1 Like

Tenías razón, a priori todo funcionando correctamente.

Mil gracias por esta pedazo de integración. Mis dieses 1010101010!!!

1 Like

Buenas @VaReTaS , una cosilla a ver si me sabes y puedes ayudar, en los 2 sitios donde se ve el precio de los kw consumidos, me salen distintos precios.

En el widget de las estadísticas me sale esto:

En el panel de Energia me aparece esto:

Uso esta fórmula que me ayudaste a crear para aplicar el bono social. Y la cosa es que aun así no me sale el mismo precio que las facturas.

{{ (( states('sensor.home_energy_hourly') | float * (peaje + states('sensor.pvpc') | float) ) * (1 - states('input_number.bono_social') | float) * states('input_number.impuesto_energia') | float * states('input_number.iva_energia') | float) | round(3) }}

He hecho una simulacion de una factura de 7 días, y me sale que por 28kwh con mi csv de la distribuidora serían 5,72€ y como ves, en HA salen valores superiores los 2.

Muchas gracias por tu ayuda!

@VaReTaS , impresionante trabajo con esta integración.

No sé qué estoy haciendo mal, pero no consigo que funcione. He instalado el repositorio desde HACS, he metido en el config.yaml la info del sensor/plataforma:

sensor:

  • platform: ide
    username: xxx
    password: xxx

(donde el usuario el el DNI, que es el mismo usuario que uso al entrar en mi área cliente de iberdrola), he creado los input_number como helpers, y he creado como template el home_energy_cost sensor…

pero me aparece un error en el log que es el siguiente:

Logger: homeassistant.components.sensor
Source: custom_components/ide/ide_api.py:135
Integration: Sensor (documentation, issues)
First occurred: 23:07:20 (1 occurrences)
Last logged: 23:07:20

ide: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 431, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 719, in async_device_update
    await task
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/ide/sensor.py", line 148, in update
    ides.login()
  File "/config/custom_components/ide/ide_api.py", line 135, in login
    raise LoginException("Login error, bad login")
custom_components.ide.ide_api.LoginException: Login error, bad login

Por más que lo intento, no consigo que acceda, ni me aparezca ningún otro sensor que no sean los creados por mi y los helpers… alguna idea de qué puedo estar haciendo mal???

Muchas gracias por adelantado!!!

Buenas,

El login para i-DE es el e-mail. Con el DNI no funciona. Prueba con eso y debería funcionar.

Un saludo