Licznik wody MBUS

rafalekkalwak@wp.pl
Posts: 658
Joined: Mon Feb 06, 2023 8:56 am

Post

shimano73 wrote: Sat Oct 14, 2023 5:17 pm Poszło. Ja to odpalam w Arduino IDE 2.0 może tu jest problem. To dekodowanie na początku u mnie działa dla wszystkich trzech liczników. na początku myślałem że to aktualny odczyt :lol:
Dzięki!
To muszę popatrzeć jutro dokładnie , ale na pierwszy rzut oka to w pliku *.ino jest :

Code: Select all

#include "Drivers/drivers.h"
A na poziomie plików nie ma katalogu, ale ciekawe, że to się w ogóle zbudowało... Muszę sprawdzić na innym komputerze, bo nie mam Arduino IDE tylko VS Code i PlatformIO.

Na jakim ESP to odpalasz? I jaka wersja supla device?
rafalekkalwak@wp.pl
Posts: 658
Joined: Mon Feb 06, 2023 8:56 am

Post

@shimano73

Próbowałem to odpalić przez 2h na ArduinoIDE i nie wiem jak Ty to odpaliłeś bo:
-1. Użyłem ostatniej wersji SuplaDevice i najnowszej wersji ArduinoIDE i najnowszej wersji dla płytki DevKit 1C
0. Budowało się dobre 20 min...
1. Kod się nie buduje przez odwołania do katalogu "#include "Drivers/drivers.h"" - poprawiłem
2. W wielu miejscach jest użyty typ "std::string" . którego też nie widzi bez jawnego podania w plikach nagłówkowych. - też poprawiłem
3. Wspominałem że się buduje kilkaście minut? No to przebudowuje cały projekt zamiast zmienionych plików.
4. Finalnie się nie buduje przez jakieś funkcje w supla\control\rgb_leds.
5. Jak możesz to użyj PlatformIO bo ArduinoIDE to masochizm :P I prawdę mówiąc to chce przerobić projekt i pozbyć się pliku *.ino na rzecz main.cpp wtedy tylko PlatformIO wchodzi w grę.
rafalekkalwak@wp.pl
Posts: 658
Joined: Mon Feb 06, 2023 8:56 am

Post

@shimano73
Chyba znalazłem i jestem debilem...

Nie zauważyłem wcześniej co masz wstawione jako ID licznika:

Code: Select all

21330927
gdzie ja w przykładach wkleiłem Twoje ID licznika i to działało

Code: Select all

27093321
Wmbusmeters pokazuje :

Code: Select all

004   : 27093321 dll-id (21330927)
Także chyba czeski błąd :P Skapnąłem się dopiero teraz jak chciałem Ci przygotować gotową binarkę zbudowaną po mojemu ...
User avatar
shimano73
Posts: 2019
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

Super, poprawiłem i pojawił sie pierwszy poprawny odczyt

Code: Select all

18:28:38.375 -> wMBus-lib: Processing T1 A frame
18:28:38.375 -> Found.
18:28:38.375 -> 1E44AE4C27093321680749A17A590010050F49C2426CBC551D2E4C17D3B08ADAF9D58F80AE0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
18:28:38.455 -> Getting frame.
18:28:38.455 -> ........................................
18:28:38.455 -> Parsing frame.
18:28:38.455 -> Formatting as string.
18:28:38.455 -> Removing helping characters.
18:28:38.455 -> Getting meter id as number.
18:28:38.456 -> Getting meter id as string.
18:28:38.456 -> Meter id as number: 556992807
18:28:38.456 -> Meter id as string: 27093321
18:28:38.456 -> 292.07m3

ale w cloudzie i aplikacji nadal 0 , słownie : zero :lol:
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

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

Post

shimano73 wrote: Mon Oct 16, 2023 4:37 pm Super, poprawiłem i pojawił sie pierwszy poprawny odczyt

Code: Select all

18:28:38.375 -> wMBus-lib: Processing T1 A frame
18:28:38.375 -> Found.
18:28:38.375 -> 1E44AE4C27093321680749A17A590010050F49C2426CBC551D2E4C17D3B08ADAF9D58F80AE0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
18:28:38.455 -> Getting frame.
18:28:38.455 -> ........................................
18:28:38.455 -> Parsing frame.
18:28:38.455 -> Formatting as string.
18:28:38.455 -> Removing helping characters.
18:28:38.455 -> Getting meter id as number.
18:28:38.456 -> Getting meter id as string.
18:28:38.456 -> Meter id as number: 556992807
18:28:38.456 -> Meter id as string: 27093321
18:28:38.456 -> 292.07m3

ale w cloudzie i aplikacji nadal 0 , słownie : zero :lol:
A to akurat kwestia nie zaktualizowania innych plików :P

Zobacz do SensorInfo.h i weź moją wersję i będzie git.

Sukces :D teraz @sixkiller Twoja kolej żeby to zagrało :D
User avatar
shimano73
Posts: 2019
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

Zastanawiam co sie stało z tym ID , wpisałem to twoje w miejsce mojego i zaczęło działać ale w/g https://wmbusmeters.org , powinno być moje :lol: To twoje to jakiś anagram mojego 27093321 -> 21330927.
Takie przemyślenia w czasie oczekiwania na nowy 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: 658
Joined: Mon Feb 06, 2023 8:56 am

Post

Wmbusmeters podaje dwa jak wkleiłem, jedno jest tak jak stoją bajty w ramce a drugie to jest anagram bajtow który po zamianie z hex na dziesiętne jet tym co widać na liczniku
sixkiller
Posts: 48
Joined: Mon Aug 16, 2021 7:59 pm

Post

Przyglądam się tematowi, niestety do końca tygodnia jestem poza domem, więc usiądę do tematu dopiero w weekend. Informacyjnie, używam do kompilacji i wgrania PlatformIO.
progmar
Posts: 5
Joined: Mon Oct 16, 2023 7:57 pm

Post

cześć, ja również uruchomiłem twoje przykłady - u mnie jest trochę inaczej. Jak wykorzystuje ramkę, którą ręcznie wprowadziłeś dekoduje poprawnie gdy odbiorę ramkę z moich liczników jest reboot:(... wykorzystuje esp8266 - chyba to nie jest przyczyna? :)


Found.
6E44010602934101050761ED7AB5006085926B8B7384B92BFDFA150C39FE800068055F46ECD610487583781090BB2648FD2B614212B0D3FAAB97B83401E4E996944BD651CCFB410D5833E3EC813EC7162D58A49953011E1B6EE916E2AB5255D68EBFDF31C11948FC9B5EB6E53D1505CF4EEE4F8E5FA92149CED8AE2511AEC00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Getting frame.
........................................
Parsing frame.
Formatting as string.
Removing helping characters.
Getting meter id as number.
Getting meter id as string.

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (28):
epc1=0x40205f37 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000008 depc=0x00000000
User avatar
shimano73
Posts: 2019
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

progmar wrote: Mon Oct 16, 2023 8:04 pm cześć, ja również uruchomiłem twoje przykłady - u mnie jest trochę inaczej. Jak wykorzystuje ramkę, którą ręcznie wprowadziłeś dekoduje poprawnie gdy odbiorę ramkę z moich liczników jest reboot:(... wykorzystuje esp8266 - chyba to nie jest przyczyna? :)


Found.
6E44010602934101050761ED7AB5006085926B8B7384B92BFDFA150C39FE800068055F46ECD610487583781090BB2648FD2B614212B0D3FAAB97B83401E4E996944BD651CCFB410D5833E3EC813EC7162D58A49953011E1B6EE916E2AB5255D68EBFDF31C11948FC9B5EB6E53D1505CF4EEE4F8E5FA92149CED8AE2511AEC00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Getting frame.
........................................
Parsing frame.
Formatting as string.
Removing helping characters.
Getting meter id as number.
Getting meter id as string.

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (28):
epc1=0x40205f37 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000008 depc=0x00000000
możliwe że twój id licznika jest błędny, tak jak to było w m moim przypadku , zobacz kilka postów wyżej
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)

Return to “Projekty użytkowników”