Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024.07.X: hilo de discusión #247

Open
uvejota opened this issue Aug 13, 2024 · 41 comments
Open

2024.07.X: hilo de discusión #247

uvejota opened this issue Aug 13, 2024 · 41 comments

Comments

@uvejota
Copy link
Owner

uvejota commented Aug 13, 2024

IMPORTANTE: Esta versión introduce MUCHOS cambios, y tendrás que realizar cambios sobre la configuración de tus tarjetas. Se recomienda hacer un backup del fichero de almacenamiento de edata (/config/.storage/...).

Asímismo, a partir de ahora la ubicación del almacenamiento de edata será el directorio /config/.storage/edata.

Errores conocidos y su solución:

FAQ:

Errores conocidos pendientes de corregir:

Hace 14 meses desde la última release de edata... pero al fin ponemos el contador a cero. Han sido 6 meses de desarrollo que he preferido liberar en una única entrega, por diversos motivos, pero principalmente por mi disponibilidad y la inmensa cantidad de cambios que eran necesarios.

¿Por qué tantos cambios?

Principalmente, por tres motivos:

  1. El constante desarrollo de Home Assistant es abrumador. Esta integración fue una de las primeras que hacían uso de la base de datos de estadísticas (Long Term Statistics), incluso antes de que fuese documentada por el propio equipo de Home Assistant. Esto ha hecho que el código original haya sido marcado como obsoleto en cuestión de meses, y finalmente estos cambios, junto con un incremento en las restricciones de HA sobre la programación síncrona en operaciones de I/O, ha hecho que la versión 2024.8.0 de HA fuese incompatible con la versión anterior de edata.

  2. La configuración de edata era terriblemente complicada, lo sé. Depender de ApexCharts-Card (que por cierto, es una maravilla) era un parche, y no una solución; ya que suponía una barrera significativa para los usuarios con menos conocimientos. Esto ha hecho que el panel de issues se haya desbordado completamente, tanto es así que he perdido el hilo de los "problemas de verdad" durante meses.

  3. La inmadurez del código original de edata. Yo desarrollé esta integración para mi y para un amigo, de modo que la calidad original del código distaba mucho de la actual. Antes quería una manera rápida de ver mis datos, y ahora a eso se suma que sea fácil de configurar (o autoconfigurable), que sea resistente a errores, que sea eficiente, que esté al día de la última versión de HA...

La solución

Evolucionar el código a las nuevas recomendaciones de Home Assistant (adiós al exceso de atributos sobre un único sensor, y hola a los dispositivos con varios sensores), cambiar el back-end de edata para que sea más eficiente, implementar tests en en el back-end para tener más cuidadito con los cambios... y aún sin tener ni puñetera idea de front-end, me he animado a crear mis propias tarjetas inspirado en lo que teníamos antes. Mi intención no es eliminar la compatibilidad con las viejas (aunque requiere cambios en la configuración de las tarjetas), pero sí eliminar el soporte activo, que era un problema por depender de las actualizaciones de la propia ApexCharts-Card.

¿Significa esto que ahora la integración es una roca?

Me temo que no. Habrá errores, seguro, ¿Pero quién usa Home Assistant que no le guste cacharrear?

El futuro

Primero, un descanso acompañado de pequeñas correcciones de lo que vaya surgiendo, aunque no mantendré el ritmo del último mes, ya que la ilusión por mantener la integración se basa en mi diversión por programar, y para no perder esa motivación, tiene que seguir pareciéndome divertido :)

Le seguirán nuevas funcionalidades sencillas:

  • Añadir acciones sobre el dispositivo para corregir las estadísticas (en lugar del servicio) [Esto está disponible desde 2024.07.5]
  • Cambiar el número de meses obtenidos en el primer inicio [Esto está disponible desde 2024.07.5]

Después, nuevas funcionalidades más complejas, ya que al tener el control total sobre las tarjetas, y al haber implementado el retorno por generación, las posibilidades que se me ocurren son enormes:

  • Más tarjetas, incluso con predicciones del consumo, o evaluación de tendencias
  • Fórmulas de tarificación más potentes, la posibilidad de definir variables de batería virtual e incluir el retorno en la estimación del coste
  • Cambiar el día de inicio del ciclo de facturación
  • Extender el soporte a tarifas 6.1TD

Lo que no podemos controlar

  • Muchos me escribís preguntando por los datos de ayer. Veréis, no es tan sencillo. La API de Datadis sólo te permite hacer una misma petición cada 24 horas, de modo que si a vuestra integración le toca a las 17h (por ejemplo), y tu distribuidora sube tus datos de ayer a las 19h, nunca dispondrás de los datos de ayer. Esto puede mitigarse con un pequeño algoritmo que vaya retrasando la petición una hora cada día hasta encontrar la franja en la que encuentres los datos, de modo que al final "sincronices" la hora de tu descarga con una hora próxima a la de la adición de los datos, o indicando una ventana para la actualización (y que cada uno investigue cuál le viene bien a su CUPS).

  • Los datos que sí aparecen en la web de Datadis, pero no en edata. Nosotros consumimos la API privada de Datadis, pero ellos en sus gráficos no utilizan la misma API (o tienen distintos privilegios). Esto no es tan raro, ni una mala práctica (de hecho es buena). Este es el motivo por el cual la disponibilidad de los datos varía entre ambas fuentes.

  • Los datos del mes de inicio de un nuevo contrato no aparecen, porque no los devuelve la API de Datadis. Desconozco el motivo pero es así.

Por favor, evitemos inundar las issues de estas cuestiones, ya que me despistan de los cambios de las especificaciones de la API de desarrollo de Home Assistant, y puede acabar dejándonos sin "servicio" durante semanas.


Sin más, agradezco a los usuarios que participan en las issues aportando soluciones, me ahorráis mucho trabajo, y a los desarrolladores de Datadis

Novedades y correcciones

  • Tarjeta edata-card, ¡Nativa y más fácil de configurar!
  • Registro del retorno a la red
  • Fórmulas de tarificación personalizadas (expresiones jinja2)
  • Al día con la última versión de Home Assistant
  • Creación de un 'dispositivo' por cada CUPS, y reemplazo (agrupación) de los atributos por sensores
  • Otras muchas mejoras...

image

Resumen de cambios

✅ Corregir código obsoleto (#214)
✅ Corregir errores en el menú de configuración (#210, #215)
✅ Mejorar y arreglar recreación de estadísticas para que no borre todo el histórico y sólo el reciente (#198)
✅ Reducir coste computacional de la integración y reducir uso de memoria (#199)
✅ Utilizar IDs únicos en sensores (#223)
✅ Reemplazar el sensor maestro por distintos sensores según categorías, agrupados bajo un mismo dispositivo (uno por CUPS)
✅ Mejorar interfaz websockets para leer cualquier tipo de dato desde las tarjetas
✅ Mejorar proceso para la validación de datos en general.
✅ Mejorar manejo de estadísticas
✅ Restaurar opción de mensajes de depuración
✅ Implementar caché en python-edata para corregir error que impide guardar datos de un mes en ciertas situaciones.
✅ Mejorar procedimiento de almacenamiento/caché
✅ Implementar código para migrar versiones previas
✅ Incorporar métricas sobre el excedente/retorno a la red
✅ Reemplazar uso de componente apexcharts-card por tarjetas propias (convivirán por un tiempo)
✅ Modernización del código para ajustarse a las nuevas recomendaciones de Home Assistant
✅ Permitir fórmulas (jinja2) de tarificación personalizadas para costes (#207, #204)
✅ Actualizar documentación

@QuaKim
Copy link

QuaKim commented Aug 13, 2024

Lo acabo de instalar, de momento tengo cosas para arreglar en las tarjetas.

Las nuevas tarjeta de "edata" la de consumo mes anterior, el consumo sale con decimales infinitos.

@uvejota
Copy link
Owner Author

uvejota commented Aug 13, 2024

Lo acabo de instalar, de momento tengo cosas para arreglar en las tarjetas.

Las nuevas tarjeta de "edata" la de consumo mes anterior, el consumo sale con decimales infinitos.

Corregido, y estará solucionado en la próxima release. Voy a esperar un par de días a que salgan más cositas.

¡Gracias!

@cvc90
Copy link

cvc90 commented Aug 13, 2024

Buenas @uvejota,

Estoy intentando añadir edata en un nuevo Home Assistant, no consigo acceder y cargar los datos, esta misma cuenta la tengo en otros dos dispositivos y están cargados y funcionando correctamente en otras instancias de Home Assistant, puede ser algún error de la API que este no funcionando correctamente o es algún otro tipo de error?

image

ACTUALIZADO: Después de varios días, con intentos a todas horas, hace unos minutos he podido conseguir añadirlo!

@JokeRsevilla
Copy link

JokeRsevilla commented Aug 13, 2024

Ante todo gracias por el gran trabajo!!

En las nuevas tarjetas, si refresco el panel (F5), sale el siguiente error en el registro, 1 vez por cada tarjeta que tengo creada, en este caso son tarjetas de consumos y costo, unas de días, otras de meses y otras de años:

2024-08-13 18:38:10.239 WARNING (MainThread) [custom_components.edata.utils] Not a valid aggr method 'year'

Edito: He hecho alguna prueba más, solo sale en las tarjetas que selecciono 'year', 3 errores por cada tarjeta de ese tipo.

Edito2: Creo que el problema es en la línea 131 de utils.py, en estas líneas, falta agregar 'year'

if aggr == "hour":
    dt_unit = timedelta(hours=1)
elif aggr == "day":
    dt_unit = timedelta(days=1)
elif aggr == "month":
    dt_unit = relativedelta.relativedelta(months=1)
else:
    _LOGGER.warning("Not a valid aggr method '%s'", aggr)

@terrino
Copy link

terrino commented Aug 13, 2024

Gracias y enhorabuena por tu trabajo y gracias también por la traducción al gallego. _(Muchas horas paso traduciendo HA)
He puesto todas las tarjetas desde el editor visual y salvo el fallo que se citas anterior de los decimales, todo bien para mi.

Añadir las fechas esta genial, Solo hecho de menos las medias diarias (last_month_daily_kWh) que antes usaba en mis tarjetas. Se agradecería su inclusión si es posible.

La tarjeta (gráfico) Maxímetro tiene el mínimo en 0, El gráfico queda un poco vacío.

max2

Muchas Gracias!!

@txespirito
Copy link

Buenos dias,
en primer lugar enhorabuena y gracias por el gran trabajo.
Pero una cosa, quizas llevo muchos dias sin dorir por el calor.... no consigo encontrar las nuevas tarjetas nativas ¿hay que descargargas de HACS u otro sitio?
Gracias

@juanxu101
Copy link

Muchas gracias, eres un crack, yo por ahora bien, lo unico aun no me muestra nada de lo vertido a la red, el resto si que lo ha leido bien. En datadis lo veo correctamente. Te dejo un par de capturas, la primera para que veas lo que carga la integracion, y la otra con un ejemplo del datadis del 6 de agosto que deberia haber leido

Captura de pantalla 2024-08-14 112219
Captura de pantalla 2024-08-14 112310

@frgalan
Copy link

frgalan commented Aug 14, 2024

Buenos dias, en primer lugar enhorabuena y gracias por el gran trabajo. Pero una cosa, quizas llevo muchos dias sin dorir por el calor.... no consigo encontrar las nuevas tarjetas nativas ¿hay que descargargas de HACS u otro sitio? Gracias

Para añadir las tarjetas nativas:

Te vas a dashboard le das a crear una tarjeta nueva y en custom buscas edata

@txespirito
Copy link

Gracias, es lo que hacia pero no me parecida.
He tenido que reinstalar el repositorio de HACS y reiniciar y ahora si me aparecen. Lo comento por si le pasa a mas personas.

Un saludo

@uvejota
Copy link
Owner Author

uvejota commented Aug 14, 2024

Os voy a responder a todos de una.

Buenas @uvejota,

Estoy intentando añadir edata en un nuevo Home Assistant, no consigo acceder y cargar los datos, esta misma cuenta la tengo en otros dos dispositivos y están cargados y funcionando correctamente en otras instancias de Home Assistant, puede ser algún error de la API que este no funcionando correctamente o es algún otro tipo de error?

image

He cambiado el proceso de instalación de la integración para que lea los cups disponibles desde Datadis. No he podido probar demasiado (sólo 2 viviendas), así que el fallo puede estar de mi mano, o de la API. ¿Puedes probar en otro momento a ver si te detecta correctamente tu suministro?

En caso de que tengas un NIF autorizado, asegúrate de que está correctamente, ya que también daría ese error que te indica.

Ante todo gracias por el gran trabajo!!

En las nuevas tarjetas, si refresco el panel (F5), sale el siguiente error en el registro, 1 vez por cada tarjeta que tengo creada, en este caso son tarjetas de consumos y costo, unas de días, otras de meses y otras de años:

2024-08-13 18:38:10.239 WARNING (MainThread) [custom_components.edata.utils] Not a valid aggr method 'year'

Edito: He hecho alguna prueba más, solo sale en las tarjetas que selecciono 'year', 3 errores por cada tarjeta de ese tipo.

Edito2: Creo que el problema es en la línea 131 de utils.py, en estas líneas, falta agregar 'year'

if aggr == "hour":
    dt_unit = timedelta(hours=1)
elif aggr == "day":
    dt_unit = timedelta(days=1)
elif aggr == "month":
    dt_unit = relativedelta.relativedelta(months=1)
else:
    _LOGGER.warning("Not a valid aggr method '%s'", aggr)

Afirmativo, puedes ignorar el warning de momento. El código intenta cargar los datos desde la memoria, si los tiene ahí (p.ej. el último año), y en caso contrario pregunta a la BD de estadísticas. Los datos anuales tienen que sacarse sí o sí de esta última, ya que en memoria nunca vamos a guardar más de un año. Lo corrijo en la próxima release. Voy a prepararme una issue para su seguimiento.

Gracias y enhorabuena por tu trabajo y gracias también por la traducción al gallego. _(Muchas horas paso traduciendo HA) He puesto todas las tarjetas desde el editor visual y salvo el fallo que se citas anterior de los decimales, todo bien para mi.

Añadir las fechas esta genial, Solo hecho de menos las medias diarias (last_month_daily_kWh) que antes usaba en mis tarjetas. Se agradecería su inclusión si es posible.

Debería aparecer como un atributo (con el mismo nombre de antes) en el sensor del consumo del último mes (o del mes en curso).

Cada sensor tiene varios atributos (los splits en p1, p2, p3; el número de días...).

La tarjeta (gráfico) Maxímetro tiene el mínimo en 0, El gráfico queda un poco vacío.

max2

Muchas Gracias!!

Afirmativo, queda vacío ;) Tengo pensado, además de ajustar los límites, añadir líneas para la potencia contratada en p1/p2.

Muchas gracias, eres un crack, yo por ahora bien, lo unico aun no me muestra nada de lo vertido a la red, el resto si que lo ha leido bien. En datadis lo veo correctamente. Te dejo un par de capturas, la primera para que veas lo que carga la integracion, y la otra con un ejemplo del datadis del 6 de agosto que deberia haber leido

Captura de pantalla 2024-08-14 112219 Captura de pantalla 2024-08-14 112310

Lo vertido se irá añadiendo desde el día que lo actualizaste como medida de seguridad para no destrozar Datadis. Si quieres recuperar los vertidos del último año, deberás borrar/renombrar el directorio de almacenamiento de edata (/config/.storage/edata) y reiniciar tu instalación, con lo que eso conlleva (esperar, y perder los datos recientes hasta pasadas 24h...).

En cualquier caso, la imagen que me adjuntas de HA tiene filtrado un día diferente al 6/8, y no corresponde a la BD en la que se almacenan los datos, ya que edata utiliza la de estadísticas (Long Term Statistics), para poder inyectar datos a pasado.

@QuaKim
Copy link

QuaKim commented Aug 14, 2024

Veo que de la entidad edata_XXXX han desparecido:

  • Last registered date
  • Max power kW
  • Max power mean kW
  • Max power 90perc kW
  • Max power 90perc kW

Captura de pantalla 2024-08-14 144702
4)

@uvejota
Copy link
Owner Author

uvejota commented Aug 14, 2024

Veo que de la entidad edata_XXXX han desparecido:

  • Last registered date
  • Max power kW
  • Max power mean kW
  • Max power 90perc kW
  • Max power 90perc kW

Captura de pantalla 2024-08-14 144702 4)

Están, pero han cambiado de sitio. Ahora están repartidos en distintos sensores (puedes verlo buscando el dispositivo edata que se te ha creado):

image

Y cada sensor tiene algunos atributos relacionados:

image

@QuaKim
Copy link

QuaKim commented Aug 14, 2024

Es verdad, perfecto!

Muchísimas gracias y enhorabuena por este trabajazo que te metes

@ravlar
Copy link

ravlar commented Aug 15, 2024

Hola! En primer lugar muchísimas gracias por tu trabajo. Hace años que uso tu desarrollo y siempre me ha ido fenomenal para llevar un poco el control.

Por otra parte he buscado bastante por si ya estaba preguntado pero no lo he encontrado... Tienes pensado integrar de alguna forma la corrección por bono social?

Gracias!

@zeehio
Copy link

zeehio commented Aug 17, 2024

Muchas gracias!

Gracias a tu integración me he animado a aprender como funcionan las tarjetas para crear gráficos (no me animaba con el apex charts y prefería quedarme en lo nativo).

Por ejemplo (por si alguien lo quiere) este es el yaml para hacer un diagrama de barras de cada mes de los últimos 365 días donde la longitud de la barra muestra el consumo de ese mes. Queda así:

Screenshot_20240817-053432

type: statistics-graph
chart_type: bar
period: month
entities:
  - edata:te0f_consumption
stat_types:
  - change
days_to_show: 365
title: Consumo energía mensual
hide_legend: true

(Por si hay otros aprendiendo como yo, para usar ésto lo más fácil es editar un panel del frontend, dar a "añadir tarjeta", elegir una tarjeta, la que sea, y pulsar en "mostrar editor de código", entonces borrar el código que aparece, pegar este y volver al editor visual)

@lanzadorpeso
Copy link

Hola.

Lo primero felicitarte por la integración. Es una maravilla.

He actualizado y al ir a añadir un nuevo CUPS de un usuario distinto me lo añade sin problema pero luego no actualiza. Al mirar los errores me sale mi CUP 048BK y dos adicionales que no son mios

Registrador: edata.helpers
Fuente: /usr/local/lib/python3.12/site-packages/edata/helpers.py:264
Ocurrió por primera vez: 12:14:06 (5 ocurrencias)
Último inicio de sesión: 12:20:27

048BK: CUPS not found, please check configured CUPS
595NN: CUPS not found, please check configured CUPS
185QT: CUPS not found, please check configured CUPS

Si necesitas algo mas me dices como sacarlo y te lo mando.

@uvejota
Copy link
Owner Author

uvejota commented Aug 17, 2024

Hola! En primer lugar muchísimas gracias por tu trabajo. Hace años que uso tu desarrollo y siempre me ha ido fenomenal para llevar un poco el control.

Por otra parte he buscado bastante por si ya estaba preguntado pero no lo he encontrado... Tienes pensado integrar de alguna forma la corrección por bono social?

Gracias!

Sí, espero que pronto :)

Hola.

Lo primero felicitarte por la integración. Es una maravilla.

He actualizado y al ir a añadir un nuevo CUPS de un usuario distinto me lo añade sin problema pero luego no actualiza. Al mirar los errores me sale mi CUP 048BK y dos adicionales que no son mios

Registrador: edata.helpers Fuente: /usr/local/lib/python3.12/site-packages/edata/helpers.py:264 Ocurrió por primera vez: 12:14:06 (5 ocurrencias) Último inicio de sesión: 12:20:27

048BK: CUPS not found, please check configured CUPS
595NN: CUPS not found, please check configured CUPS
185QT: CUPS not found, please check configured CUPS

Si necesitas algo mas me dices como sacarlo y te lo mando.

Hola, esto me interesa depurarlo. ¿A qué te refieres con que son "dos adicionales que no son tuyos"?

Es posible que pasadas 24h empiece a funcionar adecuadamente, pero esto me ha hecho descubrir un pequeño bug que puede afectar a los que tienen más de un usuario/cups configurado. Intentaré corregirlo pronto.

@JokeRsevilla
Copy link

Ayer, me salieron errores en el registro, entiendo que es porque datadis daba error:

2024-08-16 05:54:46.622 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:46.598+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/09&endDate=2023/10&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:47.885 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:47.861+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/10&endDate=2023/10&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:48.713 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:48.688+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/10&endDate=2023/11&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:49.811 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:49.787+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/11&endDate=2023/11&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:52.050 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:52.027+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/12&endDate=2023/12&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:52.853 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:52.830+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/01&endDate=2024/01&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:54.190 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:54.167+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/01&endDate=2024/02&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:55.005 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:54.981+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/02&endDate=2024/02&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:56.110 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:56.086+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/02&endDate=2024/03&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:56.912 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:56.888+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/03&endDate=2024/03&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:58.052 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:58.028+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/03&endDate=2024/04&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:58.869 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:58.846+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/04&endDate=2024/04&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:59.890 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:59.866+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/04&endDate=2024/05&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:00.718 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:00.695+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/05&endDate=2024/05&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:01.826 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:01.802+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/06&endDate=2024/06&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:02.680 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:02.656+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/06&endDate=2024/07&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:03.450 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:03.426+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/07&endDate=2024/07&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:04.540 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:04.516+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/08&endDate=2024/08&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart

@lanzadorpeso
Copy link

Hola! En primer lugar muchísimas gracias por tu trabajo. Hace años que uso tu desarrollo y siempre me ha ido fenomenal para llevar un poco el control.
Por otra parte he buscado bastante por si ya estaba preguntado pero no lo he encontrado... Tienes pensado integrar de alguna forma la corrección por bono social?
Gracias!

Sí, espero que pronto :)

Hola.
Lo primero felicitarte por la integración. Es una maravilla.
He actualizado y al ir a añadir un nuevo CUPS de un usuario distinto me lo añade sin problema pero luego no actualiza. Al mirar los errores me sale mi CUP 048BK y dos adicionales que no son mios
Registrador: edata.helpers Fuente: /usr/local/lib/python3.12/site-packages/edata/helpers.py:264 Ocurrió por primera vez: 12:14:06 (5 ocurrencias) Último inicio de sesión: 12:20:27

048BK: CUPS not found, please check configured CUPS
595NN: CUPS not found, please check configured CUPS
185QT: CUPS not found, please check configured CUPs

Hola, esto me interesa depurarlo. ¿A qué te refieres con que son "dos adicionales que no son tuyos"?
Ni el 595N ni el 185QT son mios pero en el error del home assistant aparece.
Es posible que pasadas 24h empiece a funcionar adecuadamente, pero esto me ha hecho descubrir un pequeño bug que puede afectar a los que tienen más de un usuario/cups configurado. Intentaré corregirlo pronto.
Ya han pasado 48 horas y nada. Tengo 2 usuarios y 3 CUPs funcionado desde las versiones anteriores y con la nueva es cuando he introducido el cuarto CUPs del tercer usuario y no funciona. Si necesitas algún log me dices cómo sacarlo y lo hago.

@diegofrances
Copy link

diegofrances commented Aug 20, 2024

Hola,

Primero que nada agradecer el trabajo realizado. Leyendo las cosas que no puedes controlar, yo soy uno de esos usuarios que no es capaz de ver los datos de ayer.

Lo que no podemos controlar

Muchos me escribís preguntando por los datos de ayer. Veréis, no es tan sencillo. La API de Datadis sólo te permite hacer una misma petición cada 24 horas, de modo que si a vuestra integración le toca a las 17h (por ejemplo), y tu distribuidora sube tus datos de ayer a las 19h, nunca dispondrás de los datos de ayer. Esto puede mitigarse con un pequeño algoritmo que vaya retrasando la petición una hora cada día hasta encontrar la franja en la que encuentres los datos, de modo que al final "sincronices" la hora de tu descarga con una hora próxima a la de la adición de los datos, o indicando una ventana para la actualización (y que cada uno investigue cuál le viene bien a su CUPS).

Comentas arriba que se puede solucionar con un algoritmo para elegir la hora de la petición de datos. Eso es algo que vas a implementar en futuras versiones o es algo que podemos crear/integrar nosotros mismos?

Gracias de antemano.

@uvejota
Copy link
Owner Author

uvejota commented Aug 21, 2024

Ayer, me salieron errores en el registro, entiendo que es porque datadis daba error:

2024-08-16 05:54:46.622 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:46.598+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/09&endDate=2023/10&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:47.885 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:47.861+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/10&endDate=2023/10&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:48.713 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:48.688+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/10&endDate=2023/11&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:49.811 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:49.787+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/11&endDate=2023/11&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:52.050 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:52.027+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2023/12&endDate=2023/12&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:52.853 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:52.830+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/01&endDate=2024/01&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:54.190 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:54.167+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/01&endDate=2024/02&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:55.005 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:54.981+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/02&endDate=2024/02&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:56.110 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:56.086+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/02&endDate=2024/03&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:56.912 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:56.888+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/03&endDate=2024/03&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:58.052 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:58.028+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/03&endDate=2024/04&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:58.869 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:58.846+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/04&endDate=2024/04&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:54:59.890 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:54:59.866+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/04&endDate=2024/05&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:00.718 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:00.695+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/05&endDate=2024/05&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:01.826 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:01.802+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/06&endDate=2024/06&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:02.680 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:02.656+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/06&endDate=2024/07&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:03.450 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:03.426+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/07&endDate=2024/07&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart
2024-08-16 05:55:04.540 WARNING (SyncWorker_43) [edata.connectors.datadis] 500 {"status":500,"error":"INTERNAL_SERVER_ERROR","timestamp":"2024-08-16T05:55:04.516+0200"} at https://datadis.es/api-private/api/get-consumption-data?cups=ESXXXXXXXXXXXXXXXXXX&distributorCode=2&startDate=2024/08&endDate=2024/08&measurementType=0&pointType=5&. Query temporary disabled. Future 500 code errors for this query will be silenced until restart

Afirmativo

Hola,

Primero que nada agradecer el trabajo realizado. Leyendo las cosas que no puedes controlar, yo soy uno de esos usuarios que no es capaz de ver los datos de ayer.

Lo que no podemos controlar

Muchos me escribís preguntando por los datos de ayer. Veréis, no es tan sencillo. La API de Datadis sólo te permite hacer una misma petición cada 24 horas, de modo que si a vuestra integración le toca a las 17h (por ejemplo), y tu distribuidora sube tus datos de ayer a las 19h, nunca dispondrás de los datos de ayer. Esto puede mitigarse con un pequeño algoritmo que vaya retrasando la petición una hora cada día hasta encontrar la franja en la que encuentres los datos, de modo que al final "sincronices" la hora de tu descarga con una hora próxima a la de la adición de los datos, o indicando una ventana para la actualización (y que cada uno investigue cuál le viene bien a su CUPS).

Comentas arriba que se puede solucionar con un algoritmo para elegir la hora de la petición de datos. Eso es algo que vas a implementar en futuras versiones o es algo que podemos crear/integrar nosotros mismos?

Gracias de antemano.

Mi intención es implementarlo yo, pero voy a intentar sacar un rato para resolver los bugs primero, antes de añadir más funcionalidades.

@Guabic
Copy link

Guabic commented Aug 21, 2024

Buenas. Muchas gracias por la implementación.
Sin embargo, tengo el problema de que no me ha actualizado los datos de Datadis desde que la instalé. he probado con una nueva CUPS a ver cómo me va, pero por el momento la anterior solo me da datos fijos, sin actualizar.
He probado a reinstalar, reconfigurar, etc. Y sigo con los datos del 15 de agosto como último día. Más allá nada.
Gracias de antemano

@zeehio
Copy link

zeehio commented Aug 24, 2024

¿Alguien sabe cómo combinar la integración https://www.home-assistant.io/integrations/pvpc_hourly_pricing con esta para sacar el precio?

@diegofrances
Copy link

¿Alguien sabe cómo combinar la integración https://www.home-assistant.io/integrations/pvpc_hourly_pricing con esta para sacar el precio?

Pero si la propia integración lo tiene:

https://github.com/uvejota/homeassistant-edata?tab=readme-ov-file#configurar-la-tarificaci%C3%B3n

@zeehio
Copy link

zeehio commented Aug 25, 2024

¿Alguien sabe cómo combinar la integración https://www.home-assistant.io/integrations/pvpc_hourly_pricing con esta para sacar el precio?

Pero si la propia integración lo tiene:

https://github.com/uvejota/homeassistant-edata?tab=readme-ov-file#configurar-la-tarificaci%C3%B3n

Gracias. Confundía PVPC con Tarifa 2.0TD, con otras opciones si hay más o menos tramos. Si he entendido bien, desde 2021 solo existe una tarifa regulada y esa es la "PVPC 2.0TD" que ya está implementada en edata bajo la opción PVPC, y con esa opción edata ya sabe sacar los precios regulados dinámicamente, así que no necesito ninguna otra integración. Disculpad mi confusión.

@Vicente-Ch
Copy link

Hola, no se en otros paises pero aquí en España los precios de los impuestos varían de unos meses a otros.
En mi factura de julio: impuesto eléctrico=5.11269632% y el iva=10%
en cambio en Mayo: impuesto eléctrico=3.80000% y el iva=21%

Si editas los precios en la configuración afecta a las estadísticas pasadas, o solo a los cálculos siguientes?
Podrías hacer que estos impuestos se ajustasen automáticamente?

También tengo dudas con el dato a poner en la casilla:
image

ej.1.05 para un 5% => por regla de 3, para un impuesto de 3.8% me da 0.798

ej.1.21 para un 21% => por regla de 3, para un impuesto de 10% me da 0.576

otra forma de entenderlo seria:
1.05 para un 5% y 1.21 para un 21% => para un 10% será 1.10 y para un 3.8% seria 1.038 supongo que la correcta es la de arriba.

Por cierto, Genial la integración y veo que ya aparecen datos de exportación Urra! por esto
Saludos

@zeehio
Copy link

zeehio commented Sep 1, 2024

Solo soy un usuario pero aporto lo que puedo a tu comentario:

Hola, no se en otros paises pero aquí en España los precios de los impuestos varían de unos meses a otros. En mi factura de julio: impuesto eléctrico=5.11269632% y el iva=10% en cambio en Mayo: impuesto eléctrico=3.80000% y el iva=21%

Solo por aportar contexto:

Los tipos impositivos están regulados por https://www.boe.es/eli/es/rdl/2023/12/27/8

Artículo 21. Tipo impositivo del Impuesto sobre el Valor Añadido aplicable temporalmente a determinadas entregas, importaciones y adquisiciones intracomunitarias de productos energéticos.

1. Con efectos desde el 1 de enero de 2024 y vigencia hasta el 31 de diciembre de 2024, se aplicará el tipo del 10 por ciento del Impuesto sobre el Valor Añadido a [...]

– Titulares de contratos de suministro de electricidad, cuya potencia contratada (término fijo de potencia) sea inferior o igual a 10 kW, con independencia del nivel de tensión del suministro y la modalidad de contratación, cuando el precio medio aritmético del mercado diario correspondiente al último mes natural anterior al del último día del periodo de facturación haya superado los 45 euros/MWh.

La ley hace variar el impuesto en función del mes y del precio medio. Y además es vigente en 2024, porque seguramente hagan modificaciones en función de como evolucione el mercado energético.

Si editas los precios en la configuración afecta a las estadísticas pasadas, o solo a los cálculos siguientes?
Podrías hacer que estos impuestos se ajustasen automáticamente?

Estaría bien saber cómo se aplican, teniendo en cuenta que los impuestos varían tanto y ponemos una constante en la configuración.

Implementar un ajuste automático estaría genial, pero como depende de las leyes aprobadas y se aprueban en el ultimo minuto no tengo claro que se pueda implementar con facilidad. A ver cómo lo ve @uvejota...

También tengo dudas con el dato a poner en la casilla: image

ej.1.05 para un 5% => por regla de 3, para un impuesto de 3.8% me da 0.798

ej.1.21 para un 21% => por regla de 3, para un impuesto de 10% me da 0.576

otra forma de entenderlo seria: 1.05 para un 5% y 1.21 para un 21% => para un 10% será 1.10 y para un 3.8% seria 1.038 supongo que la correcta es la de arriba.

Un impuesto del x% es "1+x/100".

  • Para un impuesto del 10%, hay que escribir 1+0.1=1.1.
  • Para un impuesto del 3.8% hay que escribir 1.038
  • Para un impuesto del 21% hay que escribir 1.21
  • Para un impuesto del 0% (si lo quitasen) hay que escribir un 1.

@uvejota
Copy link
Owner Author

uvejota commented Sep 1, 2024

@Vicente-Ch @zeehio

A ver, por partes.

  1. Los cambios sobre la tarificación aplican desde la fecha que indicáis en el último paso (el de la simulación del mes anterior). De esta forma podéis hacer los cambios que consideréis oportuno y con carácter retroactivo. Cuidado con borrar las estadísticas, que perdéis estos datos.
  2. No encuentro mucha motivación en monitorizar el boe e ir actualizando consecuentemente los impuestos, la verdad, casi que prefiero que cada uno los aplique como corresponda cuando le apetezca. Por dos motivos: los cambios de impuestos son "raros" (aunque hemos tenido un par de años raros), y creo que el IVA cambia según la comunidad/ciudad autónoma. Sería un esfuerzo con poco beneficio, y sería involucrar a otra fuente de datos con las "particularidades" que ello conlleva.
  3. Para aplicar un incremento porcentual con las fórmulas actuales, se dice que 1.02*val sería un incremento del 2% sobre val, aunque realmente, da lo mismo si modificáis la fórmula en el siguiente paso al criterio que os interese.

En cualquier caso, puede haber fallos sin detectar aún en la parte de tarificación... y seguramente cambiará su formato cuando encuentre un procedimiento menos tedioso.

Un saludo!

@zeehio
Copy link

zeehio commented Sep 1, 2024

@Vicente-Ch @zeehio

A ver, por partes.

1. Los cambios sobre la tarificación aplican desde la fecha que indicáis en el último paso (el de la simulación del mes anterior). De esta forma podéis hacer los cambios que consideréis oportuno y con carácter retroactivo. Cuidado con borrar las estadísticas, que perdéis estos datos.

2. No encuentro mucha motivación en monitorizar el boe e ir actualizando consecuentemente los impuestos, la verdad, casi que prefiero que cada uno los aplique como corresponda cuando le apetezca. Por dos motivos: los cambios de impuestos son "raros" (aunque hemos tenido un par de años raros), y creo que el IVA cambia según la comunidad/ciudad autónoma. Sería un esfuerzo con poco beneficio, y sería involucrar a otra fuente de datos con las "particularidades" que ello conlleva.

3. Para aplicar un incremento porcentual con las fórmulas actuales, se dice que `1.02*val` sería un incremento del 2% sobre `val`, aunque realmente, da lo mismo si modificáis la fórmula en el siguiente paso al criterio que os interese.

En cualquier caso, puede haber fallos sin detectar aún en la parte de tarificación... y seguramente cambiará su formato cuando encuentre un procedimiento menos tedioso.

Perfecto y totalmente de acuerdo. Solo decir que el error de esta integración al estimar mi factura eléctrica este último mes es tan pequeño que creo que depende de la hora de corte que aplique mi compañía eléctrica al sacar la factura, así que tanto en el consumo como en el coste lo has clavado, felicidades y muchas gracias!

Un saludo!

@juananmartinez
Copy link

Muchas gracias por el gran trabajo que realizas, desde que actualicé edata a la versión 2024.07.1 y a las posteriores 2024.07.4 y 2024.07.5, no me recoge los datos de uno de mis 2 CUPS, se quedó en fecha 16/08, en el otro sin embargo los recoge correctamente, con la versión 2024.07.5 he intentado, con el control disponible Import all available data pero nada, también he tratado de hacer un reset y entonces el sensor edata_xxxx se me queda en fecha 2024-07-01 01:00:00, con el último consumo a 0,4kWh y ahí se queda, alguna idea?, la versión de HA es 204.08.03. Muchas gracias.

@diegofrances
Copy link

Muchas gracias por el gran trabajo que realizas, desde que actualicé edata a la versión 2024.07.1 y a las posteriores 2024.07.4 y 2024.07.5, no me recoge los datos de uno de mis 2 CUPS, se quedó en fecha 16/08, en el otro sin embargo los recoge correctamente, con la versión 2024.07.5 he intentado, con el control disponible Import all available data pero nada, también he tratado de hacer un reset y entonces el sensor edata_xxxx se me queda en fecha 2024-07-01 01:00:00, con el último consumo a 0,4kWh y ahí se queda, alguna idea?, la versión de HA es 204.08.03. Muchas gracias.

La última versión de la integración tiene muchos cambios, entre ellos la inclusión de nuevas entidades, por lo que tienes que adaptar las tarjetas; o bien actualizas las nativas o bien actualizas las custom.

He creado una entrada con unas cards Custom: #262

@uvejota
Copy link
Owner Author

uvejota commented Sep 3, 2024

@juananmartinez

Para ver qué ocurre necesitaría que activases el log de depuración (en las Opciones del dispositivo afectado), y luego me lo pegaras por aquí anonimizado.

¡Un saludo!

@ahycka
Copy link

ahycka commented Sep 3, 2024

Hola

Desde que he actualizado la versión no consigo ver más de 12 meses en una gráfica.
Por ejemplo, estando en septiembre de 2024, antes veía el consumo desde septiembre de 2023 y podía ver como iba subiendo la gráfica de septiembre de 2024.

Si utilizo las gráficas de edata-card solo veo desde enero de 2024
Si utilizo la tarjeta de apexcharts el primer mes que me aparece es octubre 2023.
Si utilizo la tarjeta de apexcharts con el código que hay de ejemplo y en vez de poner
records: 12
Pongo
records: 13

Las gráficas dejan de empezar en octubre de 2023 y empiezan en enero de 2024

¿Qué estoy haciendo mal?

Un saludo!

@diegofrances
Copy link

Hola

Desde que he actualizado la versión no consigo ver más de 12 meses en una gráfica. Por ejemplo, estando en septiembre de 2024, antes veía el consumo desde septiembre de 2023 y podía ver como iba subiendo la gráfica de septiembre de 2024.

Si utilizo las gráficas de edata-card solo veo desde enero de 2024 Si utilizo la tarjeta de apexcharts el primer mes que me aparece es octubre 2023. Si utilizo la tarjeta de apexcharts con el código que hay de ejemplo y en vez de poner records: 12 Pongo records: 13

Las gráficas dejan de empezar en octubre de 2023 y empiezan en enero de 2024

¿Qué estoy haciendo mal?

Un saludo!

Has instalado la última versión edata? Si lo has instalado, verás que ahora tienes 1 dispositivo y unas 14 entidades. Si te fijas en las últimas notas del autor, verás que tienes que adaptar las apexcards con las nuevas entidades.

Date una vuelta por las discusiones y verás que he puesto un hilo con las apexcards y las nuevas entidades adaptadas.

Saludos

@uvejota
Copy link
Owner Author

uvejota commented Sep 3, 2024

Hola

Desde que he actualizado la versión no consigo ver más de 12 meses en una gráfica. Por ejemplo, estando en septiembre de 2024, antes veía el consumo desde septiembre de 2023 y podía ver como iba subiendo la gráfica de septiembre de 2024.

Si utilizo las gráficas de edata-card solo veo desde enero de 2024 Si utilizo la tarjeta de apexcharts el primer mes que me aparece es octubre 2023. Si utilizo la tarjeta de apexcharts con el código que hay de ejemplo y en vez de poner records: 12 Pongo records: 13

Las gráficas dejan de empezar en octubre de 2023 y empiezan en enero de 2024

¿Qué estoy haciendo mal?

Un saludo!

Los 12 últimos meses se sirven directamente desde la memoria, si le pides más se obtiene de las estadísticas de HA. Parece que hay algún fallo en la lectura desde este último. A este otro usuario también le ocurre en el excedente #263.

Trataré de replicarlo y solucionarlo.

Por descartar... ¿Te aparecen todos los meses en el Panel de Energía de Home Assistant?

@ahycka
Copy link

ahycka commented Sep 4, 2024

Hola
Desde que he actualizado la versión no consigo ver más de 12 meses en una gráfica. Por ejemplo, estando en septiembre de 2024, antes veía el consumo desde septiembre de 2023 y podía ver como iba subiendo la gráfica de septiembre de 2024.
Si utilizo las gráficas de edata-card solo veo desde enero de 2024 Si utilizo la tarjeta de apexcharts el primer mes que me aparece es octubre 2023. Si utilizo la tarjeta de apexcharts con el código que hay de ejemplo y en vez de poner records: 12 Pongo records: 13
Las gráficas dejan de empezar en octubre de 2023 y empiezan en enero de 2024
¿Qué estoy haciendo mal?
Un saludo!

Los 12 últimos meses se sirven directamente desde la memoria, si le pides más se obtiene de las estadísticas de HA. Parece que hay algún fallo en la lectura desde este último. A este otro usuario también le ocurre en el excedente #263.

Trataré de replicarlo y solucionarlo.

Por descartar... ¿Te aparecen todos los meses en el Panel de Energía de Home Assistant?

En la panel de energía solo me aparece desde diciembre de 2023, que es justo cuando hice la instalación limpia de este HA. Supongo que si sacas los datos desde esa base de datos, me quedan unos cuantos meses hasta poder conseguir la gráfica que quiero o tendré que investigar como decirle al HA que consiga datos anteriores a su instalación

Muchas gracias

@ahycka
Copy link

ahycka commented Sep 4, 2024

Hola
Desde que he actualizado la versión no consigo ver más de 12 meses en una gráfica. Por ejemplo, estando en septiembre de 2024, antes veía el consumo desde septiembre de 2023 y podía ver como iba subiendo la gráfica de septiembre de 2024.
Si utilizo las gráficas de edata-card solo veo desde enero de 2024 Si utilizo la tarjeta de apexcharts el primer mes que me aparece es octubre 2023. Si utilizo la tarjeta de apexcharts con el código que hay de ejemplo y en vez de poner records: 12 Pongo records: 13
Las gráficas dejan de empezar en octubre de 2023 y empiezan en enero de 2024
¿Qué estoy haciendo mal?
Un saludo!

Los 12 últimos meses se sirven directamente desde la memoria, si le pides más se obtiene de las estadísticas de HA. Parece que hay algún fallo en la lectura desde este último. A este otro usuario también le ocurre en el excedente #263.
Trataré de replicarlo y solucionarlo.
Por descartar... ¿Te aparecen todos los meses en el Panel de Energía de Home Assistant?

En la panel de energía solo me aparece desde diciembre de 2023, que es justo cuando hice la instalación limpia de este HA. Supongo que si sacas los datos desde esa base de datos, me quedan unos cuantos meses hasta poder conseguir la gráfica que quiero o tendré que investigar como decirle al HA que consiga datos anteriores a su instalación

Muchas gracias

Leyendo el hilo que me has pasado, le he pedido a la integración que se descargue todos los datos desde datadis y ahora en el panel de energía tengo datos desde septiembre de 2023, pero no anteriores aunque en la web de datadis veo datos desde enero de 2022

De hecho, ahora mismo en las tarjetas al pedir más de 12 meses ya aparece desde septiembre de 2023, nunca antes. Vamos mejorando! 😄

Por si ayuda en algo, el panel de energía lo tengo configurado así
imagen

@uvejota
Copy link
Owner Author

uvejota commented Sep 4, 2024

@ahycka ¿Le diste a "Importar todos..." o a "Restablecer"?

Con el primero debería completar dos años de datos (está limitado por Datadis).

Con el segundo, el último año (y se realizan más tareas).

Necesitaría ver los logs de depuración para saber mejor qué ocurre (puedes activarlo en las Opciones del Dispositivo). En especial durante la ejecución de "Importar todos...".

@ahycka
Copy link

ahycka commented Sep 4, 2024

@ahycka ¿Le diste a "Importar todos..." o a "Restablecer"?

Con el primero debería completar dos años de datos (está limitado por Datadis).

Con el segundo, el último año (y se realizan más tareas).

Necesitaría ver los logs de depuración para saber mejor qué ocurre (puedes activarlo en las Opciones del Dispositivo). En especial durante la ejecución de "Importar todos...".

A importar, menos mal que está el log, porque ya lo dudaba
imagen

@juananmartinez
Copy link

@juananmartinez

Para ver qué ocurre necesitaría que activases el log de depuración (en las Opciones del dispositivo afectado), y luego me lo pegaras por aquí anonimizado.

¡Un saludo!

Desde ayer tarde ya recoge correctamente los datos el CUPS que llevaba semanas sin recogerlos
Muchas gracias, un saludo.

@ahycka
Copy link

ahycka commented Sep 4, 2024

Necesitaría ver los logs de depuración para saber mejor qué ocurre (puedes activarlo en las Opciones del Dispositivo). En especial durante la ejecución de "Importar todos...".

Acabo de leer lo de los logs, he encendido los logs, le he dado al boton ed importar y he esperado 10min por si necesita mucho tiempo,
A los 3min han dejado de aparecer logs de edata, asi que supongo que estará completo

home-assistant_edata_2024-09-04T08-15-35.706Z.log

Viendo los logs, he visto esta línea:
2024-09-04 09:50:44.590 INFO (SyncWorker_5) [edata.helpers] 793MA: missing consumptions: from 2022-10-01T01:00:00 to 2023-09-01T01:00:00, from 2024-09-03T00:00:00 to 2024-09-03T23:59:00

que supongo que es el motivo por el que no me aparecen esos consumos, pero en datadis sí están

imagen

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests