Taka głupota i sie udało. Ustawiałem na poczatku celcjusze itp ale po tych eksperymentach i przywracaniu kopi zapasowej cos sie popierdzieliło i faktycznie było na Stany Zjednoczone ustawione. Dzieki wielkie czasem najprostsze rzeczy sa najbardziej pomocne.
Mi to różnie wysyła jak się okazało, podejrzewam ze ma to związek ze zużyciem wody. Wysyła raz na 2-3min ramki ale tez często je nie wysyła np przez 10 lub nawet 20 min. Może to jest tez związane z tym ze czujnik jest na pograniczu zasięgi wi-fi i radia z czujnika bo niestety w kotłowni nie mam wi-fi
Przywracanie kopii zapasowej jest rozwiązaniem typu ostatnia deska ratunku, jeśli się da, to zawsze należy wykorzystać wszelkie inne możliwe sposoby naprawienia sytuacji.
@oomichalekoo
Dzisiaj około godziny 15 włączyłem na chwilę logowanie i telegramy szły mniej więcej kilka razy na minutę, godzina 19 i poważniejsza cisza (ale włączona pralka/zmywarka więc na 100% coś się pojawi)
aaa i jeszcze jedno nie z każdego telegramu daje się odkodować wskazanie (więcej jest tych nie do odkodowania), ale te skutecznie odkodowywane mniej więcej co 5 minut (specjalnie czekałem na 2 identyczne wskazania), nie widzę jednak jednoznacznej reguły (możliwe, że pobór wody generuje serię telegramów, a potem dłuższa cisza).
U mnie idą od 2 minut do 1 godziny.Mysle że słaby zasięg jest ale wszystko działa a jak nie będzie zakupie od Szczepana kanapkę v4
U mnie identycznie jak u kolegi Jurek_M, tzn. 2x na minutę w “godzinach roboczych” i co ok. 20 minut poza tymi godzinami. Również nakładka jest własnością wodociągów; przychodzą wyłącznie pakiety dające się zdekodować (“data_len” = 63). Dokładność jest do 1 litra(!), gdyż m3 z 3 miejscami po przecinku.
Może doprecyzuję - u mnie pozornie wszystkie pakiety dają się dekodować, ale większość jest prawdopodobnie dekodowana błędnie (timestamp z1970 roku, co jest typowe dla nieprawidłowego klucza).
Czy wszystkie sa tego samego typu? T1 lub C1?
Spotkałem sie z nakładkami wysyłającymi dane T1 z kluczem “publicznym” oraz równocześnie C1 z innym kluczem (moze tylko dla wodociągów/wlasciciela nakladki/itp).
w logu nie ma informacji o C1 tylko, że to są ramki T1 A (używam Ultimatereader, więc nie ten wątek jak by co), jeśli może to Ci w czymkolwiek pomóc mogę nałapać ich więcej, nie zmienia to faktu, że informacja która mnie interesuje (stan licznika z dokładnością do litra) mnie w pełni zadowala więc nie wiem czy jest o co walczyć.
Kwestii błędnego dekodowania apator-08 niestety nie zgłosiłem jako isssue do wmbusmeters (a tamtych liczników już nie mam, jakkolwiek kilka logów mam nadal na dysku, tylko chyba tu też nie ma o co walczyć, bo skoro 16-2 właśnie wycofano z produkcji to w przypadku 08 było to pewnie co najmniej dawno).
Obojetnie który HW. Skoro to T1 A to uznajemy ze są na 100% poprawnie odebrane (CRC i 3z6 przeszło).
Nic nie potrzebuje i tez nic nie zrobię. Tu trzeba by kogoś z Apatora
jakie esp polecacie aby złozyć to tak fajnie razem z cc1101, jak bylo w przypadku wemos d1 mini ?
Jak “fajnie” to tylko UltimateReader
A jak samemu to zależy co jeszcze potrzebujesz. Na pewno minimum ESP32.
chodzi mi o to ze wemosa brałes, nakladałes na to cc1101 , lutowales i tyle
czy jest jakies esp32 aby to zrobic w takiej formie czy pozostaje dowolne esp32 i pająkologia?
przecież są płytki ESP32 mechanicznie zgodne z D1 mini
Aż tak łatwo to nie było. Najpopularniejszy CC1101 ma inny raster niż wemos.
Help
Zaktualizowałem teraz ESPHome do wersji 2025.2.0 i nie mogę zaktualizować licznika wody (ESP8266 od Pana Mariusza)
Do tej pory wszystko chodziło na wersji: source: github://SzczepanLeon/esphome-components@1.5.1
Chodziło, więc nie aktualizowałem.
Ale dzisiaj wysypało się. Przy próbie kompilacji mam błędy:
INFO ESPHome 2025.2.0
INFO Reading configuration /config/esphome/licznik-wody.yaml...
ERROR Unexpected exception while reading configuration:
Traceback (most recent call last):
File "/usr/local/bin/esphome", line 8, in <module>
sys.exit(main())
^^^^^^
File "/esphome/esphome/__main__.py", line 1049, in main
return run_esphome(sys.argv)
^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/__main__.py", line 1027, in run_esphome
config = read_config(dict(args.substitution) if args.substitution else {})
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/config.py", line 1095, in read_config
res = load_config(command_line_substitutions)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/config.py", line 949, in load_config
return _load_config(command_line_substitutions)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/config.py", line 939, in _load_config
return validate_config(config, command_line_substitutions)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/config.py", line 835, in validate_config
target_platform = core_config.preload_core_config(config, result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/core/config.py", line 222, in preload_core_config
if _is_target_platform(domain):
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/core/config.py", line 184, in _is_target_platform
if get_component(name, True).is_target_platform:
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/loader.py", line 205, in get_component
return _lookup_module(domain, exception)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/esphome/esphome/loader.py", line 181, in _lookup_module
module = importlib.import_module(f"esphome.components.{domain}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/data/external_components/929308dc/components/wmbus/__init__.py", line 60, in <module>
cv.Required(CONF_IP_ADDRESS): cv.ipv4,
^^^^^^^
AttributeError: module 'esphome.config_validation' has no attribute 'ipv4'
Trzeba czytac przed aktualizacją:
OK. udało mi się cofnąć aktualizację i przywrócić licznik do życia
pytanie co dalej, czy uda się w jakiś sposób poprawić kod licznika i zaktualizować esphome do aktualnej wersji?
Ale on nigdy nie umarł. Po prostu nie miałeś możliwości instalacji nowego softu oraz podglądu logów. “Licznik” nadal działał i wysyłał do HA dane.
Poczekaj do jutra i przejdź na jakąś nowszą wersję mojego komponentu. Nie ma sensu siedzieć na 1.5.
ps
Pchnąłem update do archiwalnych gałęzi:
external_components:
- source: github://SzczepanLeon/esphome-components@version_2
refresh: 0d
components: [ wmbus ]
oraz
external_components:
- source: github://SzczepanLeon/esphome-components@version_3
refresh: 0d
components: [ wmbus ]
oraz main (czyli obecna wersja 4) dostał odpowiedni update rano. Polecam korzystać z ścieżek powyżej – nic więcej nie jest utrzymywane.
Zainstalowałem wersję:
external_components:
- source: github://SzczepanLeon/esphome-components@3.2.3
components: [ wmbus ]
i działa.
Natomiast jak chcę zainstalować wersję:
external_components:
- source: github://SzczepanLeon/esphome-components@version_3
refresh: 0d
components: [ wmbus ]
to mam błędy:
> CytatINFO ESPHome 2024.12.4
INFO Reading configuration /config/esphome/licznik-wody.yaml...
ERROR Unable to load component wmbus:
Traceback (most recent call last):
File "/esphome/esphome/loader.py", line 177, in _lookup_module
module = importlib.import_module(f"esphome.components.{domain}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/data/external_components/89a00179/components/wmbus/__init__.py", line 62, in <module>
cv.Required(CONF_IP_ADDRESS): cv.ipv4address,
^^^^^^^^^^^^^^
AttributeError: module 'esphome.config_validation' has no attribute 'ipv4address'
Failed config
wmbus: [source /config/esphome/licznik-wody.yaml:48]
Component not found: wmbus.
frequency: 434.475
mosi_pin: GPIO13
miso_pin: GPIO12
clk_pin: GPIO14
cs_pin: GPIO2
gdo0_pin: GPIO5
gdo2_pin: GPIO4
Wszystko sie zgadza. Musisz zdecydowac sie na ktorym ESPHome chcesz to instalowac.