Dostaje telegramy, jednak nie potrafię wpisać tego ID: 00033cab program przy nim się nie kompiluje .
Nakładka działa, wystarczyła wymiana baterii .
[11:20:16][C][ota:094]: Address: 192.168.1.118:8266
[11:20:16][C][api:138]: API Server:
[11:20:16][C][api:139]: Address: 192.168.1.118:6053
[11:20:16][C][api:143]: Using noise encryption: NO
[11:20:16][D][api:102]: Accepted 192.168.1.100
[11:20:16][D][api.connection:918]: Home Assistant 2022.12.6 (192.168.1.100): Connected successfully
[11:20:19][I][Info:073]: Package received. Meter ID = 00033CAB
[11:20:19][I][Info:074]: Signal strenght: -31 dB
[11:20:19][I][Info:109]: Incompatible ID
[11:22:03][I][Info:073]: Package received. Meter ID = 00033CAB
[11:22:03][I][Info:074]: Signal strenght: -37 dB
[11:22:03][I][Info:109]: Incompatible ID
[11:22:29][I][Info:073]: Package received. Meter ID = 00033CAB
[11:22:29][I][Info:074]: Signal strenght: -34 dB
[11:22:29][I][Info:109]: Incompatible ID
[12:06:56][I][Info:073]: Package received. Meter ID = 00033CAB
[12:06:56][I][Info:074]: Signal strenght: -36 dB
[12:06:56][I][Info:109]: Incompatible ID
int MeterID = atoi(dll_id);
ESP_LOGI("Info", "Package received. Meter ID = %d", MeterID);
Puść, odczytaj co wyświetli w konsoli i potem w następnej iteracji wpisz tę wartość jako ApatorID_1 (dokładnie tak jak wyświetli). Tak chyba najszybciej i najprościej na odległość wytłumaczyc.
[16:00:59][I][Info:074]: Package received. Meter ID = 00033CAB
[16:00:59][I][Info:075]: Signal strenght: -74 dB
[16:00:59][I][Info:115]: Incompatible ID
[16:04:52][I][Info:074]: Package received. Meter ID = 00033CAB
[16:04:52][I][Info:075]: Signal strenght: -74 dB
[16:04:52][I][Info:115]: Incompatible ID
[16:05:15][I][Info:074]: Package received. Meter ID = 00021290
[16:05:15][I][Info:075]: Signal strenght: -77 dB
[16:07:23][I][Info:074]: Package received. Meter ID = 00021290
[16:07:23][I][Info:075]: Signal strenght: -75 dB
[16:07:29][I][Info:074]: Package received. Meter ID = 00033CAB
[16:07:29][I][Info:075]: Signal strenght: -74 dB
[16:07:29][I][Info:115]: Incompatible ID
[16:09:10][I][Info:074]: Package received. Meter ID = 00033CAB
[16:09:10][I][Info:075]: Signal strenght: -74 dB
[16:09:10][I][Info:115]: Incompatible ID
Licznik wody pokazuje “Incompatible ID” w normalnie wersji.
W wersji przerobionej na “ID = %d", MeterID” zmienia się numer ID na “33”
[16:19:06][I][Info:074]: Package received. Meter ID = 33
[16:19:06][I][Info:076]: Signal strenght: -74 dB
[16:19:06][I][Info:116]: Incompatible ID
Po wpisaniu tak jak napisałeś wartość 33 w ApatorID_1 mam coś takiego jak poniżej i chyba ESP’ek się wysypuje.
[16:22:38][I][Info:074]: Package received. Meter ID = 33
INFO 192.168.1.118: Error while reading incoming messages: Error while reading data: [Errno 104] Connection reset by peer
INFO 192.168.1.118: Ping Failed: Error while reading data: [Errno 104] Connection reset by peer
INFO Disconnected from ESPHome API for 192.168.1.118
WARNING Disconnected from API
INFO Successfully connected to 192.168.1.118
[16:24:34][I][Info:074]: Package received. Meter ID = 33
INFO 192.168.1.118: Error while reading incoming messages: Error while reading data: [Errno 104] Connection reset by peer
INFO 192.168.1.118: Ping Failed: Error while reading data: [Errno 104] Connection reset by peer
INFO Disconnected from ESPHome API for 192.168.1.118
WARNING Disconnected from API
INFO Successfully connected to 192.168.1.118
[16:24:48][D][api:102]: Accepted 192.168.1.100
[16:24:48][D][api.connection:918]: Home Assistant 2022.12.6 (192.168.1.100): Connected successfully
Otrzyma pakiet = Package received. Meter ID = 33 i po paru sekundach = Error while reading incoming messages: Error while read…
Zapytam też o licznik gazu, wydaje mi się, że wszystko jest ok bo pakiety chyba odbiera prawidłowo ale nigdzie nie widzę stanu licznika.
Nie wiem jak Apator koduje dane w liczniku danych (pewnie inaczej niż w wodzie). Dlatego najwygodniej jest wykorzystać wmbusmeters do dekodowania (albo ręcznie przenieść driver’a do kodu Mariusza).
Co do tego błędu z ID licznika popraw kod w linii 65 na:
Tak, prawdopodobnie chodzi o niezgodności systemu liczbowego. Ja mam na naklejce same cyfry, wiec założyłem ze to DEC. Jak licznik nadaje Ci w HEX, to zrób jak napisał Szczepan
[17:26:15][D][api.connection:918]: Home Assistant 2022.12.6 (192.168.1.100): Connected successfully
[17:26:28][I][Info:074]: Package received. Meter ID = 135824
[17:26:28][I][Info:076]: Signal strenght: -77 dB
[17:27:03][I][Info:074]: Package received. Meter ID = 212139
INFO 192.168.1.118: Error while reading incoming messages: Error while reading data: [Errno 104] Connection reset by peer
INFO 192.168.1.118: Ping Failed: Error while reading data: [Errno 104] Connection reset by peer
INFO Disconnected from ESPHome API for 192.168.1.118
WARNING Disconnected from API
INFO Successfully connected to 192.168.1.118
[17:27:15][D][api:102]: Accepted 192.168.1.100
[17:27:15][D][api.connection:918]: Home Assistant 2022.12.6 (192.168.1.100): Connected successfully
Jak nie masz komunikatu Incompatible ID, to znaczy, że z ID jest już ok i wchodzi do dekodowania.
Resetowanie znaczy że dokodowanie nie daje rady przy tych licznikach.
Musisz w takim razie przejść na rozwiązanie Szczepana z wmbusmeters