Wsparcie dla liczników z nakładką wM-Bus

mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

[email protected] wrote: Thu Mar 19, 2026 3:48 pm @mh7

zobacz z kluczem 51728910E66D83F851728910E66D83F8

źle to wcześniej sprawdziłem i zamiast podać dwa razy tę samą połówkę klucza to podałem sklejone obie :/ co się naszukałem to moje ...
It's alive... alive... :D


Z pomocą żony (aktualnie znajdującej się w mieszkaniu)... poinstruuowałem, gdzie ma wkleić powyższy klucz i zapisać i restartnąć ESP32 :)

Na pewno pojawiła mi się wartość total_energy_consumption_kWh :) ...przy czym (jestem poza mieszkaniem) i na chwilę obecną widzę to co pokazane w aplikacji (wydaje mi się, że ta wartość jest prawidłowa ...oczywiście stała w cloudzie ustawiona na 1000):
sharky774_total_energy_consumption_kWh.jpg
Wieczorem postaram się zrobić loga co tam lata po UARTcie i go podrzucę tutaj :)
You do not have the required permissions to view the files attached to this post.
mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

mh7 wrote: Fri Mar 20, 2026 1:28 pm Wieczorem postaram się zrobić loga co tam lata po UARTcie i go podrzucę tutaj :)
Witam ponownie :)

Przesyłam obiecany log z UART...
ESP32C3_log_UART_sharky774_z_kluczem_51728910E66D83F851728910E66D83F8.zip

W mojej opinii jest super, ale być może będzie trzeba lekko "stuningować"...


To co udało mi się zauważyć...

Dane (zmienne), które zostały rozkodowane w moim ESP - z telegramu:
5E44A5111828058141046DF17AB80050053CB593472ACF5EE93F5984E86B4BBBF39FA2988D108299D5E8643A276A8C7E9089BA78F7C847B1B62F5E19614A82F8F8A5914F0E35599CBFCAA04A4BED32B519AC93ED40BE5B9A3487BA5D14337399EE751A51CC6D55D7983003A233

Wyglądają tak:

Code: Select all

  flow_temperature_c = 44.50
  operating_time_h = 0.00
  operating_time_in_error_h = 0.00
  power_kw = 0.00
  return_temperature_c = 37.80
  total_energy_consumption_kwh = 5421.39
  total_volume_m3 = 564.07
  volume_flow_m3h = 0.00
 
Z jakiegoś powodu kilka parametrów przyjęło wartości 0.00 - są to:

Code: Select all

  operating_time_h = 0.00
  operating_time_in_error_h = 0.00	  [ być może to 0 tutaj jest ok... ]
  power_kw = 0.00
  volume_flow_m3h = 0.00
 
Przy próbie rozkodowania tego telegramu na wmbusmeters:
https://wmbusmeters.org/analyze/5E44A51 ... 10E66D83F8

Wygląda to tak:

Code: Select all

019 C!: 17950100 ("total_energy_consumption_kwh":5421.388889)
025 C!: 66405600 ("total_volume_m3":564.066)
031 C!: 930000 ("volume_flow_m3h":0.093)
036 C!: 15070000 ("power_kw":0.715)
042 C!: 4504 ("flow_temperature_c":44.5)
046 C!: 7803 ("return_temperature_c":37.8)
050 C!: 384102 ("operating_time_h":24138)
056 C!: 0000 ("operating_time_in_error_h":0)

Porównując te dane z danymi rozkodowanymi w ESP - widać, że dane się pokrywają (poza tymi 0.00).
Gdy te dane odczytuję fizycznie (oczami) na moim sharkim - mogę potwierdzić, że są poprawne.

W razie potrzeby mogę pologować dłużej lub mogę potestować w zależności od tego czego potrzeba...


Mam pytanie - czy w przyszłości - planowane jest odczytywanie większej ilości liczników / parametrów niż 4 ?

Czy planowane jest dodanie w konfiguracji (sensor property) - takich rzeczy jak:
- total_volume_m3
- volume_flow_m3h
- power_kw
- operating_time_h

Nie wiem czy byłoby z tym dużo zachodu ?

Na chwilę obecną odczytuję za pomocą tego ESP32C3+CC1101 - 2x licznik Apator162 + tego Sharkiego774...
- zastanawiam się czy dla samego Sharkiego - nie przeznaczyć nowego ESP32C3 z kolejnym CC1101 :) - wtedy byłyby zbierane 4 parametry z tego ciepłomierza ( wydaje mi się, że total_volume_m3, total_energy_consumption_kwh, flow_temperature_c, return_temperature_c - byłyby najciekawsze ). Jeśli kiedyś będzie można dokonfigurować - volume_flow_m3h, power_kw - będzie jeszcze ciekawiej ;)


Jeszcze chwilę temu próbowałem odczytać za pomocą tego ESP - 2 różne parametry (temperatury) z tego samego licznika (w tym przypadku tego sharkiego... ) - jednak jak wynika z logu - ESP odczytuje poprawnie tylko ten parametr, który jest jako drugi ( być może takie są założenia ) - log poniżej:
proba_odczytu_2_roznych_property(temperatury)_z_1x_licznika.zip
Na teraz dziękuję za to co jest :) ...i gratuluję determinacji :D

Pozdrawiam
MH
You do not have the required permissions to view the files attached to this post.
[email protected]
Posts: 1585
Joined: Mon Feb 06, 2023 8:56 am
Has thanked: 18 times
Been thanked: 26 times

Post

@mh7

a zobacz najnowszą wersję mojego GG. Powinny wszystkie pola się dekodować. daj znać ;)

Co do opcji na więcej niż 4 liczniki/wartości, musze pomyśleć, tak samo jeśli chodzi o kilka pól z tego samego licznika - to drugie w sumie mam, ale muszę potestować ;) odezwę się bo mnie to ciekawi :D

EDIT: 6 liczników jest bez problemów, w sumie dodałem. Natomiast żeby zrobić 6 pól z tego samego licznika to powalczę ;)
mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

[email protected] wrote: Sat Mar 21, 2026 7:13 pm a zobacz najnowszą wersję mojego GG. Powinny wszystkie pola się dekodować. daj znać ;)
log_UART_all_parameteres.zip
...wydaje mi się, że powyższy log odpowie na wszystko :D

wydaje mi się, że parametry są hurtowo odczytywane poprawnie:

Code: Select all

----------------
wMBus-lib: Parsing frame.
wMBus-lib: Frame size: 95
wMBus-lib: (hex) without CRC: 5E44A5111828058141047A1B005005A98D7F97ADFE521221A6507D44FC2A8A961ACB88A3AE1475834C12715C5A66D066C157D59552B956396488C617F7D7E3A7C1E7B8717D0F83977C8BFCC48E0B3109D7CC3527695ACF67F3560CFFF92B78
wMBus-lib: Formatting as string.
wMBus-lib: Formatted telegram:
5E.44.A5.11.18.28.05.81.41.04.7A.1B.00.50.05.A9.8D.7F.97.AD.FE.52.12.21.A6.50.7D.44.FC.2A.8A.96.1A.CB.88.A3.AE.14.75.83.4C.12.71.5C.5A.66.D0.66.C1.57.D5.95.52.B9.56.39.64.88.C6.17.F7.D7.E3.A7.C1.E7.B8.71.7D.0F.83.97.7C.8B.FC.C4.8E.0B.31.09.D7.CC.35.27.69.5A.CF.67.F3.56.0C.FF.F9.2B.78 (95)
wMBus-lib: Removing helping characters.
wMBus-lib: Telegram after removing dots:
5E44A5111828058141047A1B005005A98D7F97ADFE521221A6507D44FC2A8A961ACB88A3AE1475834C12715C5A66D066C157D59552B956396488C617F7D7E3A7C1E7B8717D0F83977C8BFCC48E0B3109D7CC3527695ACF67F3560CFFF92B78 (95)
wMBus-lib: Getting meter id.
wMBus-lib: Getting sensor config.
wMBus-lib: Key provided, decrypting frame.
wMBus-lib: CI field value: 0x7A
wMBus-lib: CI matched Format A (short header)
wMBus-lib: Data offset set to: 15
wMBus-lib: tpl-cfg = 0x550, num_encr_blocks = 5
wMBus-lib: decrypt_TPL_AES_CBC_IV returned true
wMBus-lib: Decrypt check value: 0x2F2F (expected: 0x2F2F)
wMBus-lib: Decryption successful!
wMBus-lib: decrypted frame: 5E44A5111828058141047A1B0050052F2F0C0E389501000C13834856000B3B6900000C2B780200000A5A84040A5E48040B266441020AA6180000C2026C5C32CC020E68890100CC021306885300DB023B910000DC022B751900002F2F2F2F2F
wMBus-lib: Getting driver.
wMBus-lib: Property: flow_temperature_c
wMBus-lib: Available map values:
  flow_temperature_c = 48.40
  operating_time_h = 24164.00
  operating_time_in_error_h = 0.00
  power_kw = 0.28
  return_temperature_c = 44.80
  total_energy_consumption_kwh = 5427.22
  total_volume_m3 = 564.88
  volume_flow_m3h = 0.07
Meter id as string: 81052818
Meter id as number: 18280581
Value read: 48.40
wMBus-lib: Setting new value for sensor with id: 81052818 value: 48400

Mogę potwierdzić, że dane się pokrywają z odczytem wizualnym...

Jestem otwarty na kolejne testy :D


Pozdrawiam
MH
You do not have the required permissions to view the files attached to this post.
[email protected]
Posts: 1585
Joined: Mon Feb 06, 2023 8:56 am
Has thanked: 18 times
Been thanked: 26 times

Post

@mh7

Zaktualizuj proszę GG, powinieneś móc teraz ustawić do 6 "liczników".
Moje testy pokazały, że działa ale nie mam takiego licznika, który by podawał więcej niż jedną wartość.

Są jednak pewne reguły:
możesz mieć ten sam licznik nawet 6 razy, ale każdy wpis musi odczytywać inną wartość z tego licznika.
dla każdego musisz podać nr licznika i klucz (te same).
mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

[email protected] wrote: Sun Mar 22, 2026 10:33 am @mh7

Zaktualizuj proszę GG, powinieneś móc teraz ustawić do 6 "liczników".
Moje testy pokazały, że działa ale nie mam takiego licznika, który by podawał więcej niż jedną wartość.

Są jednak pewne reguły:
możesz mieć ten sam licznik nawet 6 razy, ale każdy wpis musi odczytywać inną wartość z tego licznika.
dla każdego musisz podać nr licznika i klucz (te same).
log_UART_2_parametry_z_1_licznika.zip
:D

Przesyłam log... - GGDB zaaktualizowany...

- mogę potwierdzić, że na pewno - z powodzeniem udaje się odczytać 2 parametry z tego ciepłomierza (temperatury)

Code: Select all

----------------
wMBus-lib: Parsing frame.
wMBus-lib: Telegram after removing dots:
5E44A5111828058141047A5C005005774F4B2A4C86AEA4EB2420F4D99AC3746294FD074EC3BED097297C2633D65223B77A42F0844510B9EA5BDFDA3435088FBE2ACC2C212FF2D7C01EC7504DEABDFBEFCB2C8D63DB3D3EB98571DC4A01356A (95)
wMBus-lib: Getting meter id.
wMBus-lib: Getting sensor config.
wMBus-lib: Key provided, decrypting frame.
wMBus-lib: CI field value: 0x7A
wMBus-lib: CI matched Format A (short header)
wMBus-lib: Data offset set to: 15
wMBus-lib: tpl-cfg = 0x550, num_encr_blocks = 5
wMBus-lib: decrypt_TPL_AES_CBC_IV returned true
wMBus-lib: Decrypt check value: 0x2F2F (expected: 0x2F2F)
wMBus-lib: Decryption successful!
wMBus-lib: decrypted frame: 5E44A5111828058141047A5C0050052F2F0C0E619501000C13525956000B3B7600000C2B570400000A5A81030A5E28030B268041020AA6180000C2026C5C32CC020E68890100CC021306885300DB023B910000DC022B751900002F2F2F2F2F
wMBus-lib: Getting driver.
wMBus-lib: Available map values:
  flow_temperature_c = 38.10
  operating_time_h = 24180.00
  operating_time_in_error_h = 0.00
  power_kw = 0.46
  return_temperature_c = 32.80
  total_energy_consumption_kwh = 5433.61
  total_volume_m3 = 565.95
  volume_flow_m3h = 0.08
wMBus-lib: Property: return_temperature_c
Meter id as string: 81052818
Value read: 32.80
wMBus-lib: Setting new value for sensor with id: 81052818 value: 32800
wMBus-lib: Property: flow_temperature_c
Meter id as string: 81052818
Value read: 38.10
wMBus-lib: Setting new value for sensor with id: 81052818 value: 38100
Channel(3) value changed to 38100
----------------



- z jakiegoś powodu nie mogę załączyć Meter 5 i 6 (w konfiguracji SPI na moim ESP) - w polu załącz dokonuję włączenia - gdy klikam "zapisz" to pole "załącz" znowu pozostaje puste / nieaktywne... być może trzeba będzie się temu przyjrzeć...

Meter_5i6_nie_mozna_zalaczyc.jpg

Może źle coś robię ? ...na pewno meter 5 i 6 ma ten sam ID oraz key - a rożne property...


Pozdrawiam :)
You do not have the required permissions to view the files attached to this post.
[email protected]
Posts: 1585
Joined: Mon Feb 06, 2023 8:56 am
Has thanked: 18 times
Been thanked: 26 times

Post

Sprawdzę wieczorem
[email protected]
Posts: 1585
Joined: Mon Feb 06, 2023 8:56 am
Has thanked: 18 times
Been thanked: 26 times

Post

@mh7 nie umiem w matematykę ... liczenie bajtów w pamięci to trudna sprawa :lol:

Ale teraz zmieniłem, że możesz spróbować ustawić do 10 właściwości, wrzuć co masz i zobaczymy co się stanie :)
Może to nie być kompatybilne wstecz niestety, więc ostrzegam.
mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

[email protected] wrote: Sun Mar 22, 2026 6:50 pm @mh7 nie umiem w matematykę ... liczenie bajtów w pamięci to trudna sprawa :lol:

Ale teraz zmieniłem, że możesz spróbować ustawić do 10 właściwości, wrzuć co masz i zobaczymy co się stanie :)
Może to nie być kompatybilne wstecz niestety, więc ostrzegam.
hmmm ;)

Na pewno widać poprawę... ale jest kilka uwag:

- po uruchomieniu ESP - trzeba na nowo było ustawić ID, key, property - dla meter'ów od 1 do 6 (część danych była ale klucze były za krótkie a properties jakby jakieś domyślne)

- w tej wersji - można już bez problemu włączyć meter 5 oraz meter 6

- w danych na UARTcie widać, że to działa :) ...dla przykładu:

Code: Select all

----------------
wMBus-lib: Parsing frame.
wMBus-lib: Telegram after removing dots:
5E44A5111828058141047A7C005005491E2BEBAB241CC3B6C07A376BD354F6721DFC0294AD12AE24ABC54EE84FA17935CD9EDAE925B1C46EABCAA16D02D9B41B91BEB7EE064B0F367142492CEDF8BEBEF44EDDD9C4B2A53E138F9CD3E454F0 (95)
wMBus-lib: Getting meter id.
wMBus-lib: Getting sensor config.
wMBus-lib: Key provided, decrypting frame.
wMBus-lib: CI field value: 0x7A
wMBus-lib: CI matched Format A (short header)
wMBus-lib: Data offset set to: 15
wMBus-lib: tpl-cfg = 0x550, num_encr_blocks = 5
wMBus-lib: decrypt_TPL_AES_CBC_IV returned true
wMBus-lib: Decrypt check value: 0x2F2F (expected: 0x2F2F)
wMBus-lib: Decryption successful!
wMBus-lib: decrypted frame: 5E44A5111828058141047A7C0050052F2F0C0E749501000C13176556000B3B4300000C2B570100000A5A27040A5E95030B268841020AA6180000C2026C5C32CC020E68890100CC021306885300DB023B910000DC022B751900002F2F2F2F2F
wMBus-lib: Getting driver.
wMBus-lib: Available map values:
  flow_temperature_c = 42.70
  operating_time_h = 24188.00
  operating_time_in_error_h = 0.00
  power_kw = 0.16
  return_temperature_c = 39.50
  total_energy_consumption_kwh = 5437.22
  total_volume_m3 = 566.52
  volume_flow_m3h = 0.04
wMBus-lib: Property: return_temperature_c
Meter id as string: 81052818
Value read: 39.50
wMBus-lib: Setting new value for sensor with id: 81052818 value: 39500
Channel(0) value changed to 39500
wMBus-lib: Property: flow_temperature_c
Meter id as string: 81052818
Value read: 42.70
wMBus-lib: Setting new value for sensor with id: 81052818 value: 42700
wMBus-lib: Property: power_kw
Meter id as string: 81052818
Value read: 0.16
wMBus-lib: Setting new value for sensor with id: 81052818 value: 157
Channel(4) value changed to 157
wMBus-lib: Property: total_volume_m3
Meter id as string: 81052818
Value read: 566.52
wMBus-lib: Setting new value for sensor with id: 81052818 value: 566517
Channel(5) value changed to 566517
----------------


- przesyłam log z UART:
UARTlog_6xMeter_-_Sharky_[4x_property]_i_2xApatory_.zip
Nie rozumiem tylko 1 rzeczy - w cloudzie - mam dodane wszystkie 6 liczników i bez problemu odczytują się dane z liczników 1(sharky), 2(apator), 3(apator), 4(sharky), 6(sharky) - z nieznanego mi powodu - licznik nr.5 tj. również sharky - wyświetla wartość 0 - obojętne czy na ESP w SPI ustawię tam total_energy czy total_volume czy cokolwiek...

Gdy ustawiłem sobie na meter 6 to co mi się nie chciało wyświetlić na meter 5 - to na meter6 - w cloudzie bez problemu się pojawiło...
- dodam, że gdy się zerknie w log z UART - widać, że wszystkie parametry które zostały wybrane w konfiguracji SPI - Meter - się pojawiają w trakcie logowania...

To takie spostrzeżenie... ( może coś umyka na etapie - przekazania danych z ESP do Clouda - jak chodzi o ten Meter5 )


Poza powyższym problemem nie zauważyłem nic innego - pozwolę temu popracować od teraz... jak mi się wydaje dane są w porządku.
Może jutro uda mi się przygotować ESP przeznaczony tylko dla Sharkiego :D - wtedy będę mógł potwierdzić czy da się odczytać wszystkie 5 lub 6 parametrów z tego ciepłomierza - za pomocą 1x ESP :)


Dziękuję za upgrade...


Dobrej Nocy
You do not have the required permissions to view the files attached to this post.
mh7
Posts: 40
Joined: Wed May 15, 2024 12:06 pm

Post

mh7 wrote: Sun Mar 22, 2026 9:49 pm Nie rozumiem tylko 1 rzeczy - w cloudzie - mam dodane wszystkie 6 liczników i bez problemu odczytują się dane z liczników 1(sharky), 2(apator), 3(apator), 4(sharky), 6(sharky) - z nieznanego mi powodu - licznik nr.5 tj. również sharky - wyświetla wartość 0 - obojętne czy na ESP w SPI ustawię tam total_energy czy total_volume czy cokolwiek...
Nie dawało mi to spokoju... usunąłem z clouda mojego ESP i dodałem go na nowo :)

Oczywiście - zaczytało wszystkie 6 liczników - ale z tą różnicą, że teraz widzę dane ze wszystkich 6 - z tego meter 5 również :D

Nie wiem - dlaczego poprzednim razem był problem, ale może była to moja wina, że nie usunąłem poprzednich liczników tylko dodałem kolejne tj. 5 i 6

Na teraz wygląda to tak :D :
supla_app_6_meters.jpg
...a w cloudzie:
cloud_supla_6_meters.jpg

- pozostaje tylko testować :D ...dam znać jak to się będzie sprawować...


Dziękuję za ten upgrade raz jeszcze...

Spokojnej Nocy i ...Dnia


Pozdrawiam
MH
You do not have the required permissions to view the files attached to this post.

Return to “GUI Generic”