Licznik wody MBUS

User avatar
shimano73
Posts: 2014
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

Po kilku próbach udało się skompilować programik pod Arduino IDE 1.8.16, wgrany program działa na razie na tyle że moduł CC1101 jest poprawnie zainicjowany a esp zalogowało się do serwera.
Ja użyłem kompletnego urządzenia zakupionego na olx od Mariusza, w którym moduł radiowy jest podpięty w następujący sposób

Code: Select all

 WaterMeter(uint8_t mosi = 32, uint8_t miso = 19, uint8_t clk = 33, uint8_t cs = 23, uint8_t gdo0 = 22, uint8_t gdo2 = 21) : lastReadTime(0)
Jako że mój licznik wody to iPerl to będę chciał ten sof przerobić tak aby odczytywać swój licznik bo taki mi wodociągi założyły, z opisu urządzenia wynikało że powinno się udać.
Jeśli jest na forum ktoś kto próbował lub już mu się to udało będę wdzięczny za wskazówki.
You do not have the required permissions to view the files attached to this post.
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
rafalekkalwak@wp.pl
Posts: 635
Joined: Mon Feb 06, 2023 8:56 am

Post

Jeśli użyłeś mojego kodu to wydaje mi się , że wystarczy, że podmienisz:

https://github.com/rkalwak/cc1101_platf ... der.cpp#L5

na

https://github.com/SzczepanLeon/wmbus-d ... iver.h#L45

będzie działać , a jak nie to spojrzę dokładniej
User avatar
shimano73
Posts: 2014
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

No i coś się dzieje. Dokonałem modyfikacji o których wspomniał kolega rafalekkalwak i coś się pojawia,

Code: Select all

7:35:05.635 -> wMBus-lib: Processing T1 A frame
17:35:05.635 -> Found.
17:35:05.635 -> 1E44AE4C27093321680749A17A08001005CB0A67C6EFAE88B50E3B38FDBBB0AC620D192F5D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
17:35:05.676 -> ........................................
17:35:05.676 -> IV:
17:35:05.676 -> AE4C2709332168070808080808080808
17:35:05.676 -> Payload:
17:35:05.676 -> CB0A67C6EFAE88B50E3B38B0AC620D19
17:35:28.274 -> Send: [53 55 50 4C 41 14 53 00 00 00 28 00 00 00 10 00 00 00 C1 07 00 00 00 00 00 00 BF A1 04 00 00 00 00 00 ]
17:35:28.274 -> Send: [53 55 50 4C 41 ]
ta część telegramu do pierwszego "0" to prawidłowo odczytany telegram który po podstawianiu do dekodera na https://wmbusmeters.org/ z Decryption key E6C88800DEB868C0D6A84880CE982840 który znalazłem kiedyś gdzieś w sieci dekoduje na poprawny odczyt 288.911m3 :D
Niestety prawidłowy odczyt nie pojawia się zbyt często i nie zawsze rozpoznane czasem jest błąd

Code: Select all

18:11:20.094 -> wMBus-lib: Processing T1 A frame
18:11:20.094 -> wMBus-lib:  Error during decoding '3 out of 6'
18:11:29.713 -> wMBus-lib: Processing T1 A frame
18:11:29.713 -> wMBus-lib:  Error during decoding '3 out of 6'
No i na serwer nie leci prawidłowy odczyt. Gdzie powinienem wpisać ten Decryption key w sofcie ?
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
rafalekkalwak@wp.pl
Posts: 635
Joined: Mon Feb 06, 2023 8:56 am

Post

shimano73 wrote: Mon Oct 02, 2023 4:22 pm No i na serwer nie leci prawidłowy odczyt. Gdzie powinienem wpisać ten Decryption key w sofcie ?
Powinno zagrać tutaj:
https://github.com/rkalwak/cc1101_platf ... 4C2-L264C2

Może to kiedyś ogarnę tak, żeby nie trzeba było szukać po kodzie, ale wiem że Szczepan coś tam powoli działa, więc nie będę się wymądrzał :P

Swoją drogą moja implementacja nie wysyła na serwer jeśli odczyt jest błędny ;)
User avatar
shimano73
Posts: 2014
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

A jak to zapisać
key = E6C88800DEB868C0D6A84880CE982840
zapisałem tak

Code: Select all

 std::vector<unsigned char> key{0x14, 0x06, 0x12, 0x08, 0x08, 0x08, 0x00, 0x00, 0x13, 0x14, 0x11, 0x08, 0x06, 0x08, 0x12, 0x00, 0x013, 0x06, 0x10, 0x08, 0x04, 0x08, 0x08, 0x00, 0x12, 0x14, 0x09, 0x08, 0x02, 0x08, 0x04, 0x00};
 
ale poprawy nie widać, wręcz jest gorzej bo ani razu nie pojawił się rozpoznany telegram ;)
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
rafalekkalwak@wp.pl
Posts: 635
Joined: Mon Feb 06, 2023 8:56 am

Post

Wydaje mi się że parami tak jak hexy, 0xe6,0xc8 itd
User avatar
shimano73
Posts: 2014
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

Zrobiłem to tak bo pasowała mi ilość znaków kodu do ilości znaków w tablicy . sprawdzę to rano bo teraz czeka mnie nocka w robocie ;)
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
Lector
Posts: 1620
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań

Post

shimano73 wrote: Mon Oct 02, 2023 8:02 pmshimano73
Łap firmware - działa do końca miesiąca. Mam nadzieje ze później będzie nowa wersja.

Działał na tym samym module co Ty, tylko inny licznik.
Przy okazji byś napisał czy też tak zamula (chodzi wolno strona konfiguracji).

U mnie poprawnie odczytuje jak mam ESP w kotłowni przy licznikach, przez ściany (beton komórkowy) nie chciał łapać.
You do not have the required permissions to view the files attached to this post.
Niespełniony automatyk. :mrgreen:
https://www.youtube.com/@3D_Lamp.Photos
User avatar
shimano73
Posts: 2014
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

Lector wrote: Mon Oct 02, 2023 8:43 pm
shimano73 wrote: Mon Oct 02, 2023 8:02 pmshimano73
Łap firmware - działa do końca miesiąca. Mam nadzieje ze później będzie nowa wersja.

Działał na tym samym module co Ty, tylko inny licznik.
Przy okazji byś napisał czy też tak zamula (chodzi wolno strona konfiguracji).

U mnie poprawnie odczytuje jak mam ESP w kotłowni przy licznikach, przez ściany (beton komórkowy) nie chciał łapać.
A jak to wgrać ? , tam są cztery pliki :? Czy ten soft umożliwia zmianę typu licznika ?
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
Lector
Posts: 1620
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań

Post

Image
Image
Image

Jest to w pełni konfigurowalny firmware pod różne liczniki.
Wybierasz i uzupełniasz wszystko na stronie konfiguracyjnej.
Można ustawić do 4 liczników.

Jest to firmware od _Szczepan, mam nadzieje ze wyda kolejną wersję na przyszłe miesiące lub bez ograniczenia czasowego.
Niespełniony automatyk. :mrgreen:
https://www.youtube.com/@3D_Lamp.Photos

Return to “Projekty użytkowników”