Closed travnick closed 1 year ago
Integracja notuje skokowe zużycie (zamiast ładnego rozkładu na godziny) mniej więcej o tej samej godzinie każdego dnia (powiedzmy, że około południa).
To jest normalne zachowanie (ze względu na to, że Tauron wrzuca dane paczkami, a nie na żywo)
Ponadto odczyt, który jest ze wczoraj (08.06, jest odnotowany jako dzisiejszy 09.06)
Tak jak napisałem, Tauron nie wrzuca danych na żywo, tylko wstecz, za dzień poprzedni.
W odczytach są dziury, tj. brakuje dni:
Prawdopodobnie w danym dniu nie ma kompletu danych w eLiczniku
Brakuje odczytów sprzed 17 maja
Tutaj już nie jestem w stanie powiedzieć, co się stało. Dane można uzupełnić dla dowolnego okresu wstecz używając usługi tauron_amiplus.download_statistics
Tylko tak jak pisałem, wcześniej były dane ładnie na godziny porozbijane a teraz zamiast na godziny, to zużycie z całego dnia jest skumulowane w jednej godzinie.
Ponadto, zużycie z poprzedniego dnia nie powinno być wpisywane w dniu bieżącym - tak nigdy nie było.
Dane w e-liczniku wyglądają nienagannie. Wziąłem dla przykładu 05.06, jest komplet odczytów na każdą godzinę, niestety w HA brak danych w panelu energii.
Jak mogę pomóc zdebugować te cuda?
Tylko tak jak pisałem, wcześniej były dane ładnie na godziny porozbijane a teraz zamiast na godziny, to zużycie z całego dnia jest skumulowane w jednej godzinie.
Ponadto, zużycie z poprzedniego dnia nie powinno być wpisywane w dniu bieżącym - tak nigdy nie było.
Akszuali, to zawsze było tak, jak piszesz. Dane rozbite na godzinne zużycie są (i zawsze były) dostępne tylko jako statystyki "tauron_importer".
Dane w e-liczniku wyglądają nienagannie. Wziąłem dla przykładu 05.06, jest komplet odczytów na każdą godzinę, niestety w HA brak danych w panelu energii.
Jak mogę pomóc zdebugować te cuda?
Możesz mi przesłać dane diagnostyczne, ale zanim to zrobisz, to spróbuj użyć usługi tauron_amiplus.download_statistics
No to jednak ja się zgubiłem, przy ilości tych sensorów z licznika i w ich pokrętnych nazwach. Faktycznie, używając tauron_importer
do panelu energii dane pokazywane są tam pokazywane prawidłowo i nie ma dziur.
Jedyne co zostało, to brak danych sprzed 1 maja, ale to pewnie tym download_statistics
załatwię.
Jedyne co zostało, to brak danych sprzed 1 maja, ale to pewnie tym
download_statistics
załatwię.
Tylko uważaj, bo pobieranie może chwilę potrwać przy dłuższych okresach, także nie puść tego 2x.
btw. z tymi nazwami. Ustawiłem sobie krótszą nazwę licznika, żeby móc coś widzieć w polach wyboru, i większość id się zmieniła, ale dla okresów z ostatnich 12 miesięcy nazwa ma przedrostek Tauron AMIplus <Nazwa Ulicy> <numer>
. Dla porównania "dobra nazwa" u góry i "niezbyt dobra" na dole:
To dlatego, że balans 12 miesięczny został dodany w późniejszych wersjach i trochę się zmieniło nazewnictwo, więc musisz po prostu zmienić ręcznie nazwy osobno dla tej encji.
(po długich wędrówkach po kodzie) Wydaje mi się, że różnica wynika z tego:
tutaj jest zdefiniowana bazowa nazwa, widoczna jako ta prostsza u mnie na screenie: https://github.com/PiotrMachowski/Home-Assistant-custom-components-Tauron-AMIplus/blob/6177e28df46c21f80d905d24a5c9177b33364079/custom_components/tauron_amiplus/sensor.py#L134
a tutaj jest nadpisana: https://github.com/PiotrMachowski/Home-Assistant-custom-components-Tauron-AMIplus/blob/6177e28df46c21f80d905d24a5c9177b33364079/custom_components/tauron_amiplus/sensor.py#L303
Schemat nazwy by się zgadzał. Czy to przeciążenie jest konieczne?
Wszystkie Twoje sensory korzystają z tej przeciążonej wersji. Różnica w nazwach wynika ze zmian w generowaniu encji pomiędzy wersjami integracji. Encje zachowują nazwy i ID, więc jeśli stare encje zostały utworzone przed zmianą, to mają starą nazwę. Gdybyś od nowa dodał integrację, to wszystkie by miały nową wersję nazwy.
A te przedłużone nazwy są konieczne? Bo powodują one, że większość nazwy sensora to powtarzające się i niepotrzebne Tauron AMIPlus Równa 18
. Co utrudnia sprawdzenie, o którą zmienną chodzi
Jaką masz nazwę urządzenia i nazwy pozostałych encji?
Ustawiłem sobie nazwę na Prąd Równa
, żeby właśnie krócej było. Encje wyglądają tak:
Na dashboardzie:
encje:
To w tych pozostałych też możesz zmienić bez najmniejszego problemu
Pewnie gdzieś tam mogę ręcznie klikać i edytować, ale chodzi o to, że te sensor.prad_rowna_
zmieniają się automatycznie w zależności od nazwy integracji, nie muszę chodzić po encjach i ich zmieniać. Niestety te dla 12 miesięcy są niewzruszone na te zmiany nazwy (integracji Tauron AMIPlus).
Jak je zmienisz ręcznie raz w taki sposób, żeby pasowały do pozostałych encji, to potem będą się zmieniać. Możesz też zmienić resztę, żeby pasowały do tych 12-miesięcznych, a potem zmienić jeszcze raz, wtedy te też się zmienią.
Hmmm, no coś nawet automatycznie zmieniło. Ale przy wyłączeniu w konfiguracji np. tych 12 miesięcy, usunięciu encji i powtórnym włączeniu tworzą się te domyślne nazwy obok tych zmienionych. Co w rezultacie takie taki miks jak na załączonych screenach.
No ta to nic nie poradzę. Jak już usuwasz encje, to równie dobrze możesz usunąć integrację i dodać od nowa, wtedy będziesz miał wszystko spójnie.
To samo będzie gdy od początku nie wybiorę np. statystyk dla tych 12 miesięcy, zmienię sobie nazwę, a potem stwierdzę, że jednak je chce i włączę w konfiguracji.
Nie da się tego zrobić, żeby te encje dodawały się zgodnie z aktualną nazwą integracji?
To samo będzie gdy od początku nie wybiorę np. statystyk dla tych 12 miesięcy, zmienię sobie nazwę, a potem stwierdzę, że jednak je chce i włączę w konfiguracji.
To jest standardowe zachowanie HA, zmiany w ID i nazwach są stosowane per encja. Możesz sobie każdą encję zmienić na inną nazwę/identyfikator. Nie jestem w stanie tego obsłużyć po stronie integracji.
ok, dzięki a obszerne wyjaśnienia!
Może powinienem jednak otworzyć nowy wątek... W skócie:
Uruchomiłem tauron_amiplus.download_statistics
(w tym wątku znalazłem jak) z datą 2 dni do tyłu i dostałem komunikat o nieznanym błędzie, a w logu:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 26, in _handle_async_response
await func(hass, connection, msg)
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 795, in handle_execute_script
script_result = await script_obj.async_run(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1600, in async_run
return await asyncio.shield(run.async_run())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 435, in async_run
await self._async_step(log_exceptions=False)
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 487, in _async_step
self._handle_exception(
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 512, in _handle_exception
raise exception
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 485, in _async_step
await getattr(self, handler)()
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 723, in _async_call_service_step
response_data = await self._async_run_long_action(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 685, in _async_run_long_action
return long_task.result()
^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2319, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2356, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/tauron_amiplus/services.py", line 42, in async_handle_service
[config_entry_id] = device.config_entries
^^^^^^^^^^^^^^^^^
ValueError: too many values to unpack (expected 1)
Wtyczki używam od dzisiaj, więc może HA nie pozwala pobrać danych starszych niż czas działania wtyczki?
To brzmi jak osobny problem. Swoją drogą integracja po dodaniu pobiera dane rok wstecz, więc nie powinno być potrzebne ręczne wywoływanie synchronizacji
U mnie nic się nie pobrało archiwalngo. HA używam od 2 dni. AMIplusa od wczoraj, a dokładniej od dzisiaj bo wczoraj miałem "too many logins". No i tak mnie naszło, żeby pobrać dane sprzed 2 dni i skończyło się "Nie udało się wywołać usługi tauron_amiplus.download_statistics. Unknown_error" i logiem jak powyżej. Dane z licznika są, wczorajsze, ale to chyba norma na eLiczniku.
Dane historyczne są widoczne tylko w panelu Energia, po wybraniu pozycji "tauron_importer", nie są widoczne w historii encji.
OK. Historia z roku faktycznie się pobrała i w panelu energia jest (aczkolwiek chwilę mi zeszło znalezienie jak się używa _tauronimporter). Dzisiaj w środku dnia uzupełniło sobie dane o wczorajszy dzień.
Usługa _downloadstatistics pewnie nie jest mi potrzebna, ale ciągle nie działa tylko generuje wspomniany błąd.
A tak ogólnie: Jak sprawdzałem w eLiczniku, to mam statystyki od 1 stycznia 2021. Mogę to jakoś pobrać do HA?
Mogę to jakoś pobrać do HA?
Dokładnie tą usługą, która nie działa 😄 możesz zrobić na to osobne issue?
Zauważyłem, że od około tygodnia (przy próbach jak i czy działa bilansowanie godzinowe), coś jest bardzo nie halo z odczytami. Wcześniej w zasadzie wyglądało to w porządku. Dane godzinowe były, historyczne też - nie wiem jedynie, czy od początku historii licznika, czy nie.
Moja konfiguracja:![obraz](https://github.com/PiotrMachowski/Home-Assistant-custom-components-Tauron-AMIplus/assets/619590/9bda5979-58c1-48ef-82d8-9de1ea86671f)