logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Odczyt protokołu W-MBUS w wodomierzach APATOR - szyfrowanie i dokumentacja

mks 20 Lut 2017 09:00 56580 70
Najlepsze odpowiedzi LABEL_AI_GENERATED

Jak odczytać i zdekodować ramki W-MBUS z wodomierzy Apator, skoro transmisja jest szyfrowana, i czy producent udostępnia dokumentację lub klucz AES?

Apator szyfruje dane w ramce AES-128 w trybie CBC, a jawne pozostają głównie nagłówek, CRC i część pól identyfikacyjnych; reszta siedzi w polach „manufacture specific data” [#16996548][#18112678] Nowa nakładka ma domyślnie klucz składający się z 16 zer i przy takim kluczu udało się odczytać przynajmniej bieżące zużycie, m.in. przez wmbusmeters i odbiornik RTL2832U [#16996548][#18114758] Producent/operator nie chcą udostępniać dokumentacji ani klucza, bo pozwoliłoby to także zmieniać konfigurację nakładki i kasować alarmy; padło też, że klucz da się wyciągnąć tylko przez ingerencję w samą nakładkę [#16996548] Zrzuty pokazują, że format W-MBUS jest standardowy na poziomie nagłówka: długość, typ ramki, kod producenta APA, numer urządzenia, wersja, typ medium i krótki nagłówek 0x7A, ale interpretacja danych wymaga rozpracowania producenta [#17268764][#18112678] W praktyce do analizy używano m.in. ADEUNIS DONGLE USB WMBUS AMR, RTL-SDR oraz własnych zrzutów do porównywania różnych stanów licznika [#17268764][#18114758]
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
  • #1 16292625
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    Cześć,

    Czy ktoś z Was bawił się kiedyś w odczyt protokołu MBUS (W-MBUS / Wireless MBUS)? Szczególnie chodziłoby mi o odczyt wodomierzy polskich producentów z naciskiem na wodomierze firmy APATOR.

    Do tej pory patrzyłem na ramki wysyłane przez 2 różnych producentów wodomierzy i widzę znaczące różnice w ich długości.

    I drugie pytanie - czy korzystając z W-MBUS/MBUS i podpierając się normą producenci mogą szyfrować transmisję? I jak wygląda sprawa z dzieleniem się dokumentacją przez producentów? Macie jakieś doświadczenia w tym temacie?

    Edit: Po krótkim rekonesansie widzę, że:
    - Apator szyfruje część/całość ramki AES-128.
    - Producenci niechętnie dzielą się informacjami.

    W związku z tym pozwolę sobie zadać dodatkowe pytanie:
    - czy ktoś zna producenta, który chętnie dzieli się informacjami co i jak jego wodomierz wysyła?
    - czy ktoś z was ma jakieś informacje na temat ramek jakiegokolwiek producenta?

    Edit2: Być może zaoszczędzę komuś czas i pieniążki:
    - procek na nakładce radiowej jest zabezpieczony przed odczytem. Można się było tego spodziewać, ale i tak chciałem sprawdzić (rok ~2015).
    - najprawdopodobniej (99,9%) szyfrowanie i deszyfrowanie odbywa się na sprzęcie (nakładka/urządzenie do odczytywania). Oprogramowanie służy tylko do zbierania danych.
    - starsza wersja oprogramowania napisana w .NET i nie zabezpieczona przed dekompilacją (rok ~2009).
    - z niezaszyfrowanych informacji w ramce znajduje się numer nakładki
    - podobno... (kompletnie niesprawdzona informacja i nie do końca wiadomo do czego się odnosi) coś/ktoś/gdzieś/jakoś używał jako klucza AES-128 samych zer...
  • #2 16322385
    retrofood
    VIP Zasłużony dla elektroda
    Posty: 31317
    Pomógł: 1140
    Ocena: 4800
    mks napisał:

    - Producenci niechętnie dzielą się informacjami.

    Nie wiem jak wygląda sytuacja z wodomierzami, jednak temat liczników energii elektrycznej nie zachęca do optymizmu. Dostawcy energii niechętnie się dzielą nawet informacjami niezbędnymi dla użytkownika, a wiedza o pełnych możliwościach liczników jest bardziej tajna niż o broni wojskowej. Niewielu pracowników dostawcy ma do niej dostęp i koniec. Monopolu nie da się przełamać.
  • #3 16323207
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    Można jednak zrozumieć strach przed ingerencją w odczyt...
    Pozostaje również chęć zarobku na oprogramowaniu i sprzęcie do odczytu.
    W każdym razie gdyby ktoś chciał zobaczyć jak wygląda elektronika z nakładki radiowej to zdjęcia są w załączniku ;)
    Załączniki:
    • Odczyt protokołu W-MBUS w wodomierzach APATOR - szyfrowanie i dokumentacja 2.jpg (217.24 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Odczyt protokołu W-MBUS w wodomierzach APATOR - szyfrowanie i dokumentacja 1.jpg (117.26 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #4 16323304
    TvWidget
    Poziom 39  
    Posty: 4435
    Pomógł: 472
    Ocena: 700
    W jakim celu potrzebujesz te informacje ?
    Do większości liczników dostępne są zewnętrzne rozwiązania pozwalające zdublować układ radiowy znajdujący się wewnątrz.
  • #5 16323307
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    Do napisania oprogramowania do odczytywania wodomierzy. Niestety jestem zdany na apatora a tenn nie chce udostępnić danych.
  • #6 16425970
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    Producent deklaruje, że można zmienić klucz AES, gdy zna się ten wcześniejszy.
    W takim razie nowa nakładka, która kosztuje 93 netto, posiada klucz AES, który jest wyzerowany.

    Ciekawe, czy jest możliwość jakiegoś resetu klucza, gdy ma się fizyczny dostęp do nakładki... Pytałeś producenta ?

    P.S Sam przymierzam się do opanowania zdalnego odczytu.

    P.S 2 - możesz napisać symbol układu radiowego ? Wygląda mi na jakiś CC11xx

    P.S 3 - nie masz więcej takich działających nakładek ? Chętnie bym odkupił za niewielkie pieniądze :)
  • #7 16426033
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    ShEvU_elektro napisał:
    Ciekawe, czy jest możliwość jakiegoś resetu klucza, gdy ma się fizyczny dostęp do nakładki... Pytałeś producenta ?

    Nie, nie pytałem.

    ShEvU_elektro napisał:
    P.S Sam przymierzam się do opanowania zdalnego odczytu.

    Kiepsko to widzę po moich doświadczeniach niestety... Ale mam nadzieję, że się podzielisz informacjami, jakiekolwiek by one nie były :)

    ShEvU_elektro napisał:
    P.S 2 - możesz napisać symbol układu radiowego ? Wygląda mi na jakiś CC11xx

    Gdzieś go mam, sam pytałem na forum ST.

    ShEvU_elektro napisał:
    P.S 3 - nie masz więcej takich działających nakładek ? Chętnie bym odkupił za niewielkie pieniądze :)

    Tą co sobie kupiłem to "ucegliłem" (wyzerowałem program programatorem ST-Link). Ja kupiłem na najbardziej znanym portalu aukcyjnym za circa 50zł + przesyłka wraz z wodomierzem.

    Aktualnie sytuacja wygląda tak, że mam (i będę miał) dostęp zarówno do urządzenia odczytującego/programującego, jak i do programów. Jeśli się uzbroisz w cierpliwość to coś napiszę o tym jak znajdę czas żeby potestować. Raczej będzie to po majówce.

    Szczerze mówiąc nie wydaje mi się by domyślnym kluczem nakładki były same zera. Oczywiście mogę się mylić, ale mogę Ci dostarczyć przykładowe odczyty kilku tych samych nakładek, które różnią się jedynie datą/czasem. Jeśli by było tak jak mówisz to dałoby się odczytać te ramki.

    Jeśli będzie możliwość by rozgryźć jak to działa to spróbuję to zrobić. Myślę, że wtedy już z kawałkiem własnego softu.
  • #8 16426272
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    Z tego co widzę to jest to układ SPIRIT1 od ST.

    Już zamówiłem dwa liczniki. Szukam jeszcze jednego, aby nakładka posłużyła jako dev-board.
  • #9 16426302
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    ShEvU_elektro napisał:
    Z tego co widzę to jest to układ SPIRIT1 od ST.

    Tak, to ten. Przynajmniej tak mi napisali na forum ST.

    Edit:
    ShEvU_elektro napisał:
    W takim razie nowa nakładka, która kosztuje 93 netto, posiada klucz AES, który jest wyzerowany.

    Faktycznie, nowa nakładka ma domyślnie klucz AES składający się z samych zer.
  • #10 16432683
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    mks napisał:
    Szczerze mówiąc nie wydaje mi się by domyślnym kluczem nakładki były same zera. Oczywiście mogę się mylić, ale mogę Ci dostarczyć przykładowe odczyty kilku tych samych nakładek, które różnią się jedynie datą/czasem. Jeśli by było tak jak mówisz to dałoby się odczytać te ramki.

    Bardzo chętnie popatrzę na te dane.
  • #11 16432712
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    Te dane z załącznika to nakładki + wodomierze.
    Załączniki:
    • wodomierze_dom_20170219.xls (80 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #12 16432776
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    Super. Dzięki.
    Dorwałeś już może jakieś dokumentacje wm-bus ?

    Możesz podać ID nakładki, której ramki są w tym pliku ?

    Na dniach przyjdą moje liczniki, więc też powalczę :-)
  • #13 16432824
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    Tak z głowy Ci nie podam. Na innym przykładzie mogę, ale jak wrócę do domu.
    Ale generalnie jest to to żółte pole A-Field.
    Jak masz wartość: 53 83 07 01 05 07 to generalnie czyta się "od tyły". Coś w stylu 50 10 70 38 53. Numer nakładki masz na samej nakładce i na PCB (tam gdzie jest QR kod).

    Co do dokumentacji to cała jest w necie, ale próba rozszyfrowania tego bez znajomości co jest wysyłane to rzecz karkołomna. W Apatorze tych rzeczy jest bardzo dużo.
  • #14 16432851
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    Ok rozumiem. Czym zbierałeś ramki ?
  • #15 16432853
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    ADEUNIS DONGLE USB WMBUS AMR + soft tej samej firmy (za darmo, po wcześniejszym mailowym kontakcie)
    Równie dobrze można stosować byle terminal (np Termite) bo wszystko leci po COMie.
  • #16 16852759
    nyczz
    Poziom 2  
    Posty: 3
    Prośba do "mks" - czy można się skontaktować prywatnie? mam kilka pytań w temacie.
  • #17 16852920
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    nyczz napisał:
    Prośba do "mks" - czy można się skontaktować prywatnie? mam kilka pytań w temacie.

    Prywatnie można, ale jak będzie publicznie to może jeszcze ktoś skorzysta. Decyzję pozostawiam Tobie.
  • #18 16853966
    pol102
    VIP Zasłużony dla elektroda
    Posty: 3085
    Pomógł: 163
    Ocena: 370
    Nad tematem dopiero siadam, ale to chyba można rozpracować szybciej. Wiedząc, że zwykła nakładka potrzebuje konwertera na rs232... można wymuszać odczyt... nie sądzę, żeby wersja radiowa znacząco(jakkolwiek) różniła się od tej na kabelku.
  • #19 16854044
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    pol102 napisał:
    Nad tematem dopiero siadam, ale to chyba można rozpracować szybciej. Wiedząc, że zwykła nakładka potrzebuje konwertera na rs232... można wymuszać odczyt... nie sądzę, żeby wersja radiowa znacząco(jakkolwiek) różniła się od tej na kabelku.


    Rozwiniesz swoją myśl? Bo nie do końca rozumiem dwie rzeczy - jak można wymusić odczyt? i jak ma to być szybsze?
  • #20 16854293
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    pol102 napisał:
    Nad tematem dopiero siadam, ale to chyba można rozpracować szybciej. Wiedząc, że zwykła nakładka potrzebuje konwertera na rs232... można wymuszać odczyt... nie sądzę, żeby wersja radiowa znacząco(jakkolwiek) różniła się od tej na kabelku.

    Trochę się kolega myli. Sam protokół jest troszkę podobny do M-BUS, lecz tylko troszkę. WM-BUS rządzi się troszkę innymi prawami, jeśli chodzi o komunikację.
  • #21 16854306
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    A ja nadal nie mam pojęcia co ma znajomość RS232/M-BUS/WM-BUS do realnego odczytania (nie wspominając o komunikacji)? Znajomość protokołu nie jest tożsama z możliwością interpretacji danych.

    Najpierw trzeba wiedzieć jak wygląda ramka i co jest w niej zawarte. A to jest niewiadomą, bo ramka może się różnić w zależności od konfiguracji nakładki.

    Moim zdaniem można:
    - próbować rozszyfrować ramki zmieniając konfigurację nakładki (a do tego trzeba mieć ich narzędzia)
    - zdekompilować ich programy (w zasadzie to apkę na Androida) i próbować zobaczyć jak to wygląda w kodzie.

    Albo jedno i drugie. Tak czy siak nawet posiadając dostęp do urządzenia, nakładki i oprogramowania nie będzie to takie szybkie, że siądę w jeden wieczór i rozgryzę co jest czym.

    Mylę się gdzieś w moim rozumowaniu?
  • #22 16857215
    nyczz
    Poziom 2  
    Posty: 3
    Prośba do "mks" - proszę o kontakt na "a.polak18@onet.pl".
  • #23 16857443
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    nyczz napisał:
    Prośba do "mks" - proszę o kontakt na "a.polak18@onet.pl".


    Użyj prywatnej wiadomości.
  • #24 16994688
    tmf
    VIP Zasłużony dla elektroda
    Posty: 14318
    Pomógł: 2090
    Ocena: 2206
    Temat trochę jakby umarł, ale może warto go odświeżyć. Mam nakładkę na wodomierz z firmy Apator, chciałbym odczytywać z niego bieżące zużycie wody właśnie do celów HA i detekcji ew. problemów (rozszczelnienie instalacji, anomalie w zużyciu wody). Czy ta część informacji z licznika przekazywana jest w sposób nieszyfrowany, czy też jest szyfrowana AES?
    Jakieś postępy w dekodowaniu ramki i jej odbiorze? Czy moduły radiowe na 868 MHz odbiorą taką ramkę? Mam na mysli np. prosty RFM22 lub pokrewne?
    Zakładając wariant pesymistyczny - całość jest szyfrowana. Czy ktoś przerabiał otrzymanie klucza AES od dostawcy wody? W sumie wodomierz należy do właściciela nieruchomości, z czego by wynikało, że muszą się kluczem podzielić, bo to moje urządzenie.
  • #25 16996548
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    tmf napisał:
    Czy ta część informacji z licznika przekazywana jest w sposób nieszyfrowany, czy też jest szyfrowana AES?

    Nakładki mają zawsze włączone szyfrowanie AES CBC. Nowa nakładka ma klucz ustawiony na 16 zer.
    Wszystkie dane są szyfrowane - oczywiście nie dotyczy to nagłówka ramki oraz pól CRC.
    tmf napisał:
    Zakładając wariant pesymistyczny - całość jest szyfrowana. Czy ktoś przerabiał otrzymanie klucza AES od dostawcy wody?

    Dostawca, czy operator nie da Ci klucza, ponieważ wtedy mógłbyś zmieniać konfiguracje nakładki - kasować alarmy również (np. wykrycie pola magnetycznego).
    P.S. Klucz da się wyciągnąć - potrzebna jest jednak ingerencja w nakładkę.

    tmf napisał:
    Czy moduły radiowe na 868 MHz odbiorą taką ramkę? Mam na mysli np. prosty RFM22 lub pokrewne?

    W niedalekiej przyszłości mam zamiar podjąć próby odpalenia WMBUS-a na RFM69.
  • #26 16996562
    tmf
    VIP Zasłużony dla elektroda
    Posty: 14318
    Pomógł: 2090
    Ocena: 2206
    ShEvU_elektro napisał:
    tmf napisał:
    Zakładając wariant pesymistyczny - całość jest szyfrowana. Czy ktoś przerabiał otrzymanie klucza AES od dostawcy wody?

    Dostawca, czy operator nie da Ci klucza, ponieważ wtedy mógłbyś zmieniać konfiguracje nakładki - kasować alarmy również (np. wykrycie pola magnetycznego).
    P.S. Klucz da się wyciągnąć - potrzebna jest jednak ingerencja w nakładkę.


    To problem dostawcy. Zgodnie z prawem urządzenie należy do mnie, więc nie mają prawa mi odmówić, w szczególności mogę sobie sam bezpośrednio kupić taki moduł, założyć, a oni mi tylko założą plombę na licznik. Oczywiście zapewne sprawa może się skończyć z mojej strony pismem z kancelarii z powództwem i dopiero wtedy się ugną, ale oczywiście nie za bardzo chce mi się strzelać z armaty do muchy.
    Z drugiej strony, jak znam życie, to zapewne nikt nie zmienił domyślnego klucza :)

    ShEvU_elektro napisał:
    tmf napisał:
    Czy moduły radiowe na 868 MHz odbiorą taką ramkę? Mam na mysli np. prosty RFM22 lub pokrewne?


    W niedalekiej przyszłości mam zamiar podjąć próby odpalenia WMBUS-a na RFM69.


    Pochwal się postępami. Chętnie się przyłączę i w miarę możliwości i czasu pomogę.
  • #27 16997272
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    tmf napisał:
    Pochwal się postępami. Chętnie się przyłączę i w miarę możliwości i czasu pomogę.


    Pewnie. Postaram się dobrać konfigurację dla RFM69, bo na takich docelowo chciałbym to uruchomić.
    Najpierw chcę skończyć API do ich ramek.

    BTW. W przeciwieństwie do Apatora, nakładki WMBUS z BMeters widzę, że są zgodne z OMS, więc można łatwo zinterpretować z nich dane :)
  • #29 16997602
    mks
    Poziom 11  
    Posty: 57
    Ocena: 11
    ShEvU_elektro napisał:
    P.S. Klucz da się wyciągnąć - potrzebna jest jednak ingerencja w nakładkę.


    W jaki sposób?
  • #30 16998615
    ShEvU_elektro
    Poziom 25  
    Posty: 995
    Pomógł: 26
    Ocena: 22
    tmf napisał:
    Na jakim MCU piszesz obsługę?

    Na tą chwilę API jest pisane w Pythonie na PC - póki się "bawię" nakładkami.
    Jak już wszystko zrobię, to potem przepiszę na C, żeby je dorzucić do mojego urządzenia nad którym pracuje :) Oparte jest o STM32.

Podsumowanie tematu

LABEL_AI_GENERATED
W dyskusji poruszono temat odczytu protokołu W-MBUS w wodomierzach firmy APATOR, zwracając uwagę na kwestie szyfrowania danych oraz dostępności dokumentacji. Użytkownicy dzielili się doświadczeniami związanymi z różnicami w długości ramek przesyłanych przez różnych producentów oraz trudnościami w uzyskaniu kluczy szyfrujących. Wskazano, że APATOR stosuje szyfrowanie AES-128, a dostęp do dokumentacji jest ograniczony. Uczestnicy wymieniali się informacjami na temat narzędzi do odczytu, takich jak dongle ADEUNIS oraz konwertery MBUS, a także omawiali różne modele wodomierzy i nakładek. Pojawiły się również pytania o możliwość odczytu danych z innych producentów, takich jak BMeters, oraz o standardy komunikacji w kontekście Internetu Rzeczy (IoT).
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA