Komponent wM-Bus do ESPHome (SzczepanLeon) wersja 4.x - wątek ogólny

ja musze logi widziec a nie same ramki

Czy ktoś miże wie dlaczego prześle swój stan, że nie da zie zauważyć i znika na niedostępny. Wmbus heltec lora32 v1.0 - odczytuję licznik gamma 350


w sekcji mqtt masz wpisane ?

mqtt:
  discovery_retain: true

Dopisałem, ale to nic nie daje, czytnik rozłącza się od wifi i powraca za chwilę, nie wiem czy to moze jest problem i jak go rozwiązać

A korzystasz z MQTT czy z HA api?
Sproboj zainstalować na ESPHome 2025.8.x

U mnie dzieje się podobnie, pojawiają się i znikają na zmianę dwa liczniki elektryczne. Poniżej log i kod.

INFO ESPHome 2025.9.3
INFO Reading configuration /config/esphome/wmbus-reader-v2.yaml...
INFO Updating https://github.com/SzczepanLeon/esphome-components.git@version_4
INFO Detected timezone 'Europe/Warsaw'
INFO Starting log output from 192.168.100.77 using esphome API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.123s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.112s
[20:34:13.633][I][app:185]: ESPHome version 2025.9.3 compiled on Oct  5 2025, 21:19:12
[20:34:34.411][I][wmbus:094]: Using selected driver amiplus (detected driver was amiplus)
[20:34:34.412][I][wmbus:100]: amiplus [0x55172400] RSSI: -79dBm T: CE4401060024175501027A0300C0051349EA8A5AD746EC5FD287E72256F95630DEEB281BD5C30E16FA58B1B309C4E4338742234589613ADD165D30DC7DC003B26AA7C32A4049B1464ED028A9D4A8289198C0AEE9A812AF560DFF9C67839D4C57C4FFCEB0FD6D4F95841C9C78F49A60FDD9086F3E4CB7BAD4BB5D5D74A554A61F3FE16CD7E4A8F0FD7163013F5B78D143063C2C1332AE7448ACD0644AAEB755EB003F3B320F997CA65637350A9979FF49BB16DF1B47592D2E0394143F2D425A47F5F18DD1D8FCFFEC8B4B1421C5869A (207) T1 A
INFO Processing unexpected disconnect from ESPHome API for wmbusreaderv4 @ 192.168.100.77
WARNING Disconnected from API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.006s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.101s
[20:35:17.600][I][wmbus:094]: Using selected driver amiplus (detected driver was )
[20:35:17.602][I][wmbus:100]: amiplus [0x13891185] RSSI: -27dBm T: BE44ED148511891302027A6400B005BA720A5E88C31F57715577D082BE98938DDA6372A63154525F70334BB462EE05D313972A928C63C7F7EB96DBDFA7A664F83581DD92D5CB27C2AE2854B2BE5F1900B47220DD57A2EB556B37F955CD7F7973A40A543245045EDA64CA8887C5BB05E21978566077C813448EBBEA6A1CF72785865D424F56E2248F9FE26C011B382CA23906C2EB1803A558C8D2DB5C597589F448498EC4A2D2508694F0FAF0C93A39D00588A9219D38D086F0524FB544CAA7 (191) T1 A
INFO Processing unexpected disconnect from ESPHome API for wmbusreaderv4 @ 192.168.100.77
WARNING Disconnected from API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.098s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.155s
[20:36:18.450][I][safe_mode:042]: Boot seems successful; resetting boot loop counter
[20:36:52.239][I][wmbus:094]: Using selected driver amiplus (detected driver was )
[20:36:52.241][I][wmbus:100]: amiplus [0x13891185] RSSI: -27dBm T: BE44ED148511891302027A6700B005AF23740AC77AF90F92EDDCA7C68D6CED31610FEAB8B999C83D7EEAC46791FDD5AE44EA4D397A38ACAFDDAD8C13190B7C41A0B60EC11BDB5C170D7A87DFF8223AAEDFD17B96AFD33BC291EA6DC94668E9C4C75A38AE33D30CC407269297C853C21A04A17A08B99145A90A189D9C46873855529207C25A005DE01D886FAE39F7FD3CC3A0D407323D01BBBA27B5BC4214113855824277D0BDC7F4FA2EF352781F5A1DE5C19EB095BDD4AE209781DD4E2EE6 (191) T1 A
Dziennik
6 października 2025
Wmbusreaderv4 Adress IP nastąpiła zmiana stanu na "192.168.100.77"
20:42:46 - 7 sekund temu
Wmbusreaderv4 Nazwa sieci nastąpiła zmiana stanu na "g00pher"
20:42:46 - 7 sekund temu
Wmbusreaderv4 Restart WMBus Reader stał się nieznany
20:42:46 - 7 sekund temu
Wmbusreaderv4 Firmware nastąpiło wyłączenie
20:42:46 - 7 sekund temu
Wmbusreaderv4 Restart WMBus Reader encja stała się niedostępna
20:42:46 - 8 sekund temu
Wmbusreaderv4 Adress IP encja stała się niedostępna
20:42:46 - 8 sekund temu
Wmbusreaderv4 Nazwa sieci encja stała się niedostępna
20:42:46 - 8 sekund temu
Wmbusreaderv4 Firmware encja stała się niedostępna
20:42:46 - 8 sekund temu
Wmbusreaderv4 Adress IP nastąpiła zmiana stanu na "192.168.100.77"
20:41:46 - 1 minutę temu
esphome:
  name: wmbusreaderv4

esp32:
  board: lolin_s2_mini
  framework:
    type: arduino

external_components:
  - source: github://SzczepanLeon/esphome-components@version_4
    refresh: 0d
    components: [ wmbus ]

# Enable logging
logger:
  level: INFO
 
# Enable Home Assistant API
api:
  encryption:
    key: "D0KKR80TBX3z2sx+Pejf1BBJ/+jaj5dQZXNZuwD/s8k="
  reboot_timeout: 600s

ota:
  platform: esphome
  password: "xxxxxxxxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

time:
  - platform: sntp
    id: time_sntp

wmbus:
  mosi_pin: GPIO35
  miso_pin: GPIO37
  clk_pin: GPIO36
  cs_pin: GPIO34
  gdo0_pin: GPIO2
  gdo2_pin: GPIO1

  led_pin: GPIO15
  led_blink_time: "1s"

#  frequency: 868.950
  all_drivers: False
  sync_mode: True
  log_all: True

sensor:
###
## mieszkanie sensor Gama150 (electricity)
  - platform: wmbus
    meter_id: 0x13891185
    type: amiplus
    key: "52C55949D1C2172177A03FC1D5D0CE82"
    sensors: 
      - name: "P1 My RSSI"
        field: "rssi"
        accuracy_decimals: 0
        unit_of_measurement: "dBm"
        device_class: "signal_strength"
        state_class: "measurement"
#
      - name: "P1 My consumption in kWh"
        field: "total_energy_consumption"
        accuracy_decimals: 3
        unit_of_measurement: "kWh"
        device_class: "energy"
        state_class: "total_increasing"
#
      - name: "P1 My current power consumption in kW"
        id: p1_power_kw
        field: "current_power_consumption"
        accuracy_decimals: 1
        unit_of_measurement: "kW"
        device_class: "power"
        state_class: "measurement"
#
      - name: "P1 My total energy production in kWh"
        field: "total_energy_production"
        accuracy_decimals: 3
        unit_of_measurement: "kWh"
        device_class: "energy"
        state_class: "total_increasing"
#
      - name: "P1 My current power production in kW"
        field: "current_power_production"
        accuracy_decimals: 1
        unit_of_measurement: "kW"
        device_class: "power"
        state_class: "measurement"
###
## klatka sensor Otus1 (electricity)
  - platform: wmbus
    meter_id: 0x55172400
    type: amiplus
    key: "5A4A25D920E78DF46F95C009821E4723"
    sensors:
      - name: "P2 My RSSI"
        field: "rssi"
        accuracy_decimals: 0
        unit_of_measurement: "dBm"
        device_class: "signal_strength"
        state_class: "measurement"

      - name: "P2 My consumption in kWh"
        field: "total_energy_consumption"
        accuracy_decimals: 3
        unit_of_measurement: "kWh"
        device_class: "energy"
        state_class: "total_increasing"

      - name: "P2 My current power consumption in kW"
        id: p2_power_kw
        field: "current_power_consumption"
        accuracy_decimals: 1
        unit_of_measurement: "kW"
        device_class: "power"
        state_class: "measurement"

      - name: "P2 My V1"
        field: "voltage_at_phase_1"
        accuracy_decimals: 0
        unit_of_measurement: "V"
        device_class: "voltage"
        state_class: "measurement"

  - platform: wifi_signal
    name: "Siła sygnału WiFi"
    update_interval: 60s
    entity_category: "diagnostic"
    icon: mdi:wifi

  - platform: template
    name: "P1 My current power consumption in W"
    unit_of_measurement: "W"
    device_class: power
    state_class: measurement
    accuracy_decimals: 0
    lambda: |-
      if (isnan(id(p1_power_kw).state)) {
        return NAN;
      }
      return id(p1_power_kw).state * 1000.0;
    update_interval: 10s

  - platform: template
    name: "P2 My current power consumption in W"
    unit_of_measurement: "W"
    device_class: power
    state_class: measurement
    accuracy_decimals: 0
    lambda: |-
      if (isnan(id(p2_power_kw).state)) {
        return NAN;
      }
      return id(p2_power_kw).state * 1000.0;
    update_interval: 10s

text_sensor:
  - platform: wifi_info
    ip_address:
      name: 'Adress IP'
      icon: mdi:wifi
    ssid:
      name: 'Nazwa sieci'
      icon: mdi:wifi-strength-2

button:
  - platform: restart
    name: "Restart WMBus Reader"
    entity_category: "diagnostic"

Na wersji ESPHome 2025.6 dokładnie to samo.

pokaż logi z 2025.6.3
Ewentualne podłącz do działającego zasilacza, ale na pierwszy rzut oka to wygląda na restarty z braku RAMu (= cofaj wersję aż do takiej, która działa stabilnie).

Log z ESP Home 2025.6.3

INFO ESPHome 2025.6.3
INFO Reading configuration /config/esphome/wmbus-reader-v2.yaml...
INFO Updating https://github.com/SzczepanLeon/esphome-components.git@version_4
INFO Detected timezone 'Europe/Warsaw'
INFO Starting log output from wmbusreaderv4.local using esphome API
INFO Successfully resolved wmbusreaderv4.local in 0.484s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.039s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.131s
[21:48:55][I][app:185]: ESPHome version 2025.9.3 compiled on Oct  5 2025, 21:19:12
[21:49:16][I][wmbus:094]: Using selected driver amiplus (detected driver was )
[21:49:16][I][wmbus:100]: amiplus [0x13891185] RSSI: -27dBm T: BE44ED148511891302027AF100B005592F503CD751DC7B3CAA1ABEA61339F3E61AB0400074D72A32ACF7ED4155343C99A3EC26FB9A66C9A5747D490D85FB4D96471B4FA0DF83D2353DDAE9B5503D1BD978B6007EC550342F65AC8F5AC1E2D8FBD43CA23CC8291372C590380A6AA42A7D060BFFD6F7F84D56537473AB3644DF0EF6992EEFA5A838C54249226A7ED8D64D80B8C413F00B68983A84DEDB1B42A95060CA29E59F1CC06AD3B09E36B4DEA679405CD7FD01E637AFA9B2B2D280AAEB (191) T1 A
WARNING wmbusreaderv4 @ 192.168.100.77: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for wmbusreaderv4 @ 192.168.100.77
WARNING Disconnected from API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.022s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.169s
[21:50:17][I][safe_mode:042]: Boot seems successful; resetting boot loop counter
[21:50:34][I][wmbus:094]: Using selected driver amiplus (detected driver was amiplus)
WARNING wmbusreaderv4 @ 192.168.100.77: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for wmbusreaderv4 @ 192.168.100.77
WARNING Disconnected from API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.031s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.150s
[21:51:22][I][wmbus:094]: Using selected driver amiplus (detected driver was )
[21:51:22][I][wmbus:100]: amiplus [0x13891185] RSSI: -27dBm T: BE44ED148511891302027AF500B0056E9D4F6595F898485E5471B48E74552332235BDD7EB4DCB8F973464294FA244EA2B41F3CB9346E3DA1BA5717548C126988EB6F1ACCF3AE43AB099FD26E6A0ABF437B0D24E8206A27E2E965DA21AFE8AB44B55CD7A34AA9E003F1AEDEBC9774D0C108FCCF56899C47E77D0019120AE01EFF86DD7A91354BF912FD215A265A8B1EA4735B66B887FE534B875885D246EDBC2355F287AE33D848A911D8524A7BC58E280EE7FE6359749C692B6D33C083D4EB (191) T1 A
WARNING wmbusreaderv4 @ 192.168.100.77: Connection error occurred: [Errno 104] Connection reset by peer
INFO Processing unexpected disconnect from ESPHome API for wmbusreaderv4 @ 192.168.100.77
WARNING Disconnected from API
INFO Successfully resolved wmbusreaderv4 @ 192.168.100.77 in 0.000s
INFO Successfully connected to wmbusreaderv4 @ 192.168.100.77 in 0.018s
INFO Successful handshake with wmbusreaderv4 @ 192.168.100.77 in 0.158s

Testowałem na trzech różnych zasilaczach oraz przewodach bo też myślałem, że to problem z zasilaniem ale na każdym to samo. Jutro spróbuję na innych wersjach ewentualnie sformatować płytkę i na pustym układzie zapisać program.

Zapewne może być problem z wersją esp, narazie pomogło mi ustawienie loggera na info bo miałem debudowanie

Przede wszystkim Clean Build Files, flasher wbudowany w ESPHome powinien sobie radzić, ale owszem możesz wyczyścić flash jeśli masz ochotę.

Z tym, że tym razem w logach masz

co jest typowym objawem pracy na granicy zasięgu WiFi

1 polubienie

Parę dni temu wspólnota wymieniła wodomierze. Poprzednie i teraz zamontowane to Techem. Ze starymi nie miałem problemu - wszystko działało.

Myślałem że podmienię meter_id I będzie ok, ale zonk

Ramkę odbieram, ale pojawia się komunikat:

11:58:20.844][W][wmbus:156]: Can't get requested field 'total' with unit 'm³'
[11:58:20.845][W][component:443]: wmbus took a long time for an operation (78 ms)
[11:58:20.858][W][component:446]: Components should block for at most 30 ms

Z kodu usunięte wszystkie inne zbędne komponenty bajery.

- platform: wmbus
  meter_id: 0x03462230
  #add_prefix: false
  type: mkradio4a
  #key: "00000000000000000000000000000000"

  sensors:
  - name: "Zimna woda"
    field: "total"
    accuracy_decimals: 4
    unit_of_measurement: "m³"
    device_class: "water"
    state_class: "total_increasing"
    icon: "mdi:water"

A my mamy zgadnąć co ten wodomierz wysyła?

[12:20:58.000][I][wmbus:094]: Using selected driver mkradio4a (detected driver was )
[12:20:58.045][I][wmbus:100]: mkradio4a [0x03462230] RSSI: -60dBm T: 6E4468503022460352378C00A5900F002C259F130000F2E86C8209BA54A27239802352A85CFE07E4004007102343EB0CFD554182BD94D7C06606C552700A63E4735E78AD9E20868B59DDAD5256C1557E6E20ECF8F6BBE4A87F8951335E53E1B47E8EE237611D29434523B2760F49D2 (111) C1 A
[12:20:58.071][W][wmbus:156]: Can't get requested field 'total' with unit 'm³'

Złap surowe telegramy i spróbuj je odkodować tam
https://wmbusmeters.org/

Generalnie to jest tendencja by telegramy radiowe były szyfrowane (nie wiem czy to wymaganie RODO, ale cel jest właśnie taki - ochrona prywatności odbiorcy mediów).
Oczywiście w przypadku szyfrowania musisz uzyskać klucz od dostawcy mediów (tutaj wody).

Po czym można poznać że potrzebny jest klucz do odszyfrowania ?
Nie wiem czemu jak dam Auto, to rozpoznaje mi jako weh_07. Jak dam mkradio4a to też mam takie same rozkodowanie.

telegram=|6E4468503022460352378C00A5900F002C259F130000F2E86C8209BA54A27239802352A85CFE07E4004007102343EB0CFD554182BD94D7C06606C552700A63E4735E78AD9E20868B59DDAD5256C1557E6E20ECF8F6BBE4A87F8951335E53E1B47E8EE237611D29434523B2760F49D2_|

Auto driver    : weh_07
Similar driver : unknown 00/00
Using driver   : weh_07 00/00
000   : 6e length (110 bytes)
001   : 44 dll-c (from meter SND_NR)
002   : 6850 dll-mfct (TCH)
004   : 30224603 dll-id (03462230)
008   : 52 dll-version
009   : 37 dll-type (Radio converter (meter side))
010   : 8c ell-ci-field (ELL: Extended Link Layer I (2 Byte))
011   : 00 ell-cc (slow_resp)
012   : a5 ell-acc
013   : 90 afl-ci-field (AFL: Authentication and Fragmentation Sublayer)
014   : 0f afl-len (15)
015   : 002c afl-fc (0 MACInFragment MessCounterInFragment MessControlInFragment LastFragment)
017   : 25 afl-mcl (AES_CMAC_128_8 MessCounter)
018   : 9f130000 afl-counter (5023)
022   : F2E86C8209BA54A2 afl-mac 8 bytes
030   : 72 tpl-ci-field (EN 13757-3 Application Layer (long tplh))
031   : 39802352 tpl-id (52238039)
035   : a85c tpl-mfct (WEH)
037   : fe tpl-version
038   : 07 tpl-type (Water meter)
039   : e4 tpl-acc-field
040   : 00 tpl-sts-field (OK)
041   : 4007 tpl-cfg 0740 (AES_CBC_NO_IV )
043   : 10 tpl-cfg-ext (KDFS=1)
044 CE: 2343EB0CFD554182BD94D7C06606C552700A63E4735E78AD9E20868B59DDAD5256C1557E6E20ECF8F6BBE4A87F8951335E53E1B47E8EE237611D29434523B2760F49D2 encrypted mac failed

{
    "_":"telegram",
    "media":"water",
    "meter":"weh_07",
    "name":"",
    "id":"52238039",
    "timestamp":"2025-10-12T10:45:14Z"
}

Wynik możesz udostępnić tak (chociaż ta metoda nie będzie działała wiecznie, więc zamieszczenie wyniku “jak jest” jest słusznym posunięciem)
https://wmbusmeters.org/analyze/6E4468503022460352378C00A5900F002C259F130000F2E86C8209BA54A27239802352A85CFE07E4004007102343EB0CFD554182BD94D7C06606C552700A63E4735E78AD9E20868B59DDAD5256C1557E6E20ECF8F6BBE4A87F8951335E53E1B47E8EE237611D29434523B2760F49D2
widzę że już próbowałeś wybrać ręcznie sterownik, ale problem leży raczej tutaj

więc wygląda na to, że telegram jest zaszyfrowany, musisz mieć klucz

Dzięki za info.

Orientujesz się może czy spółdzielnia/wspólnota mająca dostęp do Portal klienta Techem może pobrać stamtąd klucze odszyfrowujące ?
Czy tylko Techem posiada te informacje ?

ps. komuś z forumowiczów udało się uzyskać klucz odszyfrowujący od Techem ?

Nie mam bladego pojęcia, ale spółdzielnia/wspólnota musi znać klucze każdej nakładki jeśli samodzielnie zajmuje się odbiorem danych.
(mam inne nakładki, przygotowywałem się do walki ze spółdzielnią, ale zgadłem klucze stosowane w moich nakładkach)

Dowiedz się kto robi rozliczenie, jak robi je firma zewnętrzna (tak jak w moim przypadku - to ta firma odczytuje liczniki i ma klucze).

Jeat też cien szansy ze spółdzielnia / zarządca w ogóle nie używa odczytu zdalnego i spisują na kartkę :smiley:

To nie jest tak że się komuś chcę czy nie chcę, spółdzielnie mają nakaz wymiany wszystkich mierników na zdalne do któregoś roku, nikt nie powinien łazić Ci po domu.

1 polubienie