Apator, Izar, AT-WMBUS-16-2 odczyt wodomierza ESPHome + CC1101

frame = 6E4401061916630405077A3400608574917AF52A15F5FA8AA604D4849168A22D0C8E79F419D54C595F23884EE41E78E6748AC8B43848693D494D847498FDF48ACC5E254FE07080E7C0D9B41CB0BBCFAAFCD6A2398E9A3A55BBD5537E6B7B0A4F23D998555A07E5A86A8F460D5CFD16
id = 04631619
(TPL) num encrypted blocks 3 (48 bytes and remaining unencrypted 48 bytes)
(TPL) ivv 01061916630405073434343434343434
(TPL) key 00000000000000000000000000000000
(TPL) data 74917AF52A15F5FA8AA604D4849168A22D0C8E79F419D54C595F23884EE41E78E6748AC8B43848693D494D847498FDF4
(TPL) decr 2F2F0F54A4EC96080208436D00830001D954A4CC01ED830C10370000007B013700000037000000370000003700000000
(TPL) appended ...
value=55, pos-39
Ramka OK wysłana

zato w mosquito broker pokazuje sie


2022-12-04 21:37:30: Received PUBLISH from ESP32Client-e13a (d0, q0, r0, m0, ‘DataSoft/apator/04528318’, … (5 bytes))
2022-12-04 21:37:36: Received PUBLISH from ESP32Client-e13a (d0, q0, r0, m0, ‘DataSoft/apator/04573819’, … (6 bytes))
2022-12-04 21:37:38: Received PUBLISH from ESP32Client-e13a (d0, q0, r0, m0, ‘DataSoft/apator/Live’, … (23 bytes))

ale nie dodało nowej encji w HA

W HA z tego co pamiętam musisz sam dodać odpowiednią encję

mqtt:
  sensor:
    - name: "Wodomierz"
      state_topic: "topic/z/brokera"
      unit_of_measurement: m³
      device_class: water
      state_class: total_increasing
      icon: mdi:watering-can

1 polubienie

Ok mam i działa. Dzieki za pomoc.
dopisałem do configuration.yaml

mqtt:
  sensor:
    - name: "Wodomierz_ciepla"
      state_topic: "DataSoft/apator/04632337"
      unit_of_measurement: m³
      device_class: water
      state_class: total_increasing
      icon: mdi:watering-can
    - name: "Wodomierz_zimna"
      state_topic: "DataSoft/apator/04441230"
      unit_of_measurement: m³
      device_class: water
      state_class: total_increasing
      icon: mdi:watering-can

Jak dotrze apator, to będę próbował wrzucić odczyty do esphome.

Hej
Sorry za prawdopodobnie trywialne pytanie ale dopiero zaczynam przygode z ESP.
Jak to wrzucic/zainstalowac na ESP? Trzeba jakos kompilowac i wrzucac poza ESPHome? Jesli tak to oba repo osobno czy wystarczy to mariusza?

ESP juz ma podstawowa konfiguracje i lacze sie z nim z HA (testowalem proste wlaczenie diody na ESP).

Probowalem kopiowac kod bezposrednio ale krzyczy ze nie podoba mu sie skladnia :slight_smile:

edit
Dobra, juz znalazlem, prosciej sie chyba nie da :crazy_face:

Nie moge jeszcze dojsc gdzie znajde odczyty ID licznika i informacji jak z postu @Amigos
Jedyne co widze to w log z ESPhome:

[22:43:35][D][sensor:126]: ‘Water meter consumtion’: Sending state 540818.00000 l with 0 decimals of accuracy
[22:43:35][D][sensor:126]: ‘Id licznika wody’: Sending state 555344192.00000 with 0 decimals of accuracy
[22:43:58][D][sensor:126]: ‘Water meter consumtion’: Sending state 537724.00000 l with 0 decimals of accuracy
[22:43:58][D][sensor:126]: ‘Id licznika wody’: Sending state 555344128.00000 with 0 decimals of accuracy

Daj info jak wpadłeś na to żeby działało, może przyda się dla potomnych z podobnym problemem :slight_smile:

Generalnie moje repo jest do odczytów z nakładki IZAR, bezpośrednio przez esphome (z HA), czyli bez instalacji wmbusmeters, czy PlatformIO, które jest niezbędne do wgrania softu bezpośrednio do ESP.
Ja zdecydowałem się na esphome, ze względu na łatwość dokładania kolejnych czujników i bezproblemowego upgrade softu z HA. Nie trzeba też bawić się z MQTT, encjami, itp, bo HA wszystko robi sam.

Też jestem za tym aby zintegrować Apatora z ESPHome, wygodniejsza instalacja i konfiguracja. Ale dla rozszyfrowywania ramek było prościej badać w samym C z wykorzystaniem VSC i PlatformIO. Czekam teraz na Woszu i przejdę na ESPHome.
Dlatego mój projekt traktuje jako przejściowy i dlatego bez opisów.
Woszu - jak coś to pytaj, może pomogę.

Czekam cały czas na apatora, bo jeszcze idzie (chyba piechotą).
Generalnie na początek wywaliłem w PlatformIO całe mqtt i udało się skompilować bez błędów.
Wrzucę to do esp i zobaczę czy lecą dane z apatora. Jak będą, to zabieram się za przerzucanie do esphome.
Potem muszę to jeszcze scalić z IZAREM, bo mam tą nakładkę na liczniku głównym. Apatora chcę założyć na podliczniku wody ogrodowej, dlatego mi zależy, aby działały obie nakładki. Ciekawe czy ESP ogarnie:)

1 polubienie

Też jestem zainteresowany obsługą nakładki Apator 16-2 za pomocą ESPHome+CC1101, ponieważ posiadam właśnie nakładki Apator które odsługuję poprzez wmbusmeters.

Olek, masz tam w ciul bibliotek pozałączanych do projektu. To wszystko jest potrzebne?

Fajnie jakby od razu esphome przesyłał wszystkie dostępne informacje. Dla apatora to malutko, ale Izar wymiata z alarmami itp.

Informacja jak wrzucic na ESP jest w twoim readme

Gdy to czytałem za pierwszym razem jeszcze nie wiedzialem co to ESPhome :slight_smile:
Mam wlasnie IZAR i jedyne co widze w logach i tu wkleilem zgadza sie z odczytami wartosci ale nie widze nigdzie ID licznika (albo jest inne niz z wmbusmeters).

Gdzie lub kiedy zobacze takie ladne logi jak wklejane tutaj juz z wiadomosci z licznika, dopiero po konfiguracji konkretnego licznika czy gdzies juz sa widoczne wczesniej.

Z mojego repo leca tylko stan oraz ID licznika. W pliku h masz komentarze, co nalezy odkomentowac przy pierwszym uruchomieniu, zeby odczytywal wszystkie liczniki w zasiegu. Potem, jak juz zidentyfikujesz swój licznik (porownanie odczytów ze stanem rzeczywistym), to ograniczasz odczyt tylko do swojego ID.
Robiłem to na podstawie repo Maćka, a tam jest tylko odczyt stanu i ID Izara, bez alarmow, itp.

Jak juz lecą te dane w esphome, to wchodzisz w integracje i tam masz urzadzenia esphome. Wyciagasz tylko encje, ewentualnie robisz zliczanie zużycia za pomoca pomocnika licznik mediów

2 polubienia

Dzieki za informacje, to wiele wyjasnia.

Musialem usunac i dodac urzadzenie ESPhome, teraz pokazuje encje i juz widze ze bez sprecyzowania licznika jesli wykrywa kilka podmienia informacje o zuzyciu z innych licznikow.

Tak to widzialem i juz probowalem to wczesniej zmieniac tylko jedna rzecz mi nie pasowala.
uint32_t meterId = 0xFFFFFFFF;
To wyglada jak by wartosc miala byc hex a ta odczytana w logu 555344192.00000 hex nie jest, wczoraj zamienilem to na hex i oczywiscie nie dzialalo :slight_smile:
jak w moim przypadku powinienem podac ta wartosc, do kropki?

Dzieki

Tak, zamiast tych 0xFFFF… podajesz swoje ID w HEX. Esphome wyswietla ID dziesietnie

Ale… Ja swoje ID zapisałem jeszcze podczas testów z samym esp w platformIO i działa, ale kiedys zauwazylem, ze nie do końca sie to zgadza z przekonwertowanym z tej liczby dziesietnej z esphome. Musze sie temu jeszcze przyjrzeć. Najszybciej bedzie jak wrzucisz do esp repo Maćka i odczytasz sobie swoje id hex w platformIO

1 polubienie

To jest mały draft jak podłączyć odczyt CC1101 z esphome (bez dekodowania – tylko przesył do wmbusmeters):

Czy działa stabilnie to nie wiem, zawsze jakiś początek aby poskładać wszystkie klocki w całość.

Bingo!
To odczytane ESP to 555344192=0x2119E140
a odczytane z wmbusmeters 0x2119e135=555344181
Skopiowalem ID ktore odczytalem przez wmbusmeters i zaczelo dzialac wiec faktycznie jest cos nie tak z tymi ID.
Fajnie bylo by miec reszte danych z IZARa ale reszta to juz bajer :slight_smile:

Na bazie wmbusmeters Arduino mini (i UNO) + CC1101 u mnie jest niestety bardzo nie stabilnie. Nawet nie potrzebuje polaczenia wifi do odczytu licznika ale jak tamto rozwiązanie nie było stabilne to zacząłem szukać innych :slight_smile:

O to, to, wlasnie…

Dlaczego jest inne? Ktos cos?

Moje prawidłowe ID to 414FDFAC, czyli 1095753644, a esphome odczytuje mi 1095753600 :confused:

Wychodzi na to ze 2 ostatnie cyfry się różnią

Ustaliłeś, która część nie była stabilna? wmbusmeters u mnie jest bardzo stabilny, ale CC1101 czasami potrafi się zawiesić.

Niestety nie.
Na poczatku wieszalo mi sie arduino ale pomoglo podniesienie bootloadera (do optiboot) i w tej chwili log wmbusmeter nagle przestaje cokolwiek nowego pokazywac, pomaga restart dodatku (watchdog’a dla dodatku mam wlaczonego).

Jest teoria ze arduino obsluguje/wysyla stany logiczne dla 5v i jest potrzebny konwerter miedzy CC1101, ale wiem ze duzo osob uzywa bez i nie maja problemow wiec trudno mi powiedziec gdzie jest przyczyna.