Elektroda.pl
Elektroda.pl
X
Relpol
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Apator - Odczyt radiowy wodomierza APATOR W-MBUS

mks 20 Lut 2017 09:00 8547 39
  • #1 20 Lut 2017 09:00
    mks
    Poziom 10  

    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...

    0 29
  • Relpol
  • #2 04 Mar 2017 14:55
    retrofood
    Moderator

    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ć.

    0
  • Relpol
  • #3 04 Mar 2017 21:30
    mks
    Poziom 10  

    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 ;)

    1
  • #4 04 Mar 2017 22:14
    TvWidget
    Poziom 32  

    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.

    0
  • #5 04 Mar 2017 22:18
    mks
    Poziom 10  

    Do napisania oprogramowania do odczytywania wodomierzy. Niestety jestem zdany na apatora a tenn nie chce udostępnić danych.

    0
  • #6 21 Kwi 2017 08:46
    ShEvU_elektro
    Poziom 25  

    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 :)

    0
  • #7 21 Kwi 2017 09:39
    mks
    Poziom 10  

    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.

    0
  • #8 21 Kwi 2017 11:48
    ShEvU_elektro
    Poziom 25  

    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.

    0
  • #9 21 Kwi 2017 12:07
    mks
    Poziom 10  

    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.

    0
  • #10 24 Kwi 2017 07:50
    ShEvU_elektro
    Poziom 25  

    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.

    0
  • #12 24 Kwi 2017 09:04
    ShEvU_elektro
    Poziom 25  

    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ę :-)

    0
  • #13 24 Kwi 2017 09:25
    mks
    Poziom 10  

    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.

    0
  • #14 24 Kwi 2017 09:51
    ShEvU_elektro
    Poziom 25  

    Ok rozumiem. Czym zbierałeś ramki ?

    0
  • #15 24 Kwi 2017 09:54
    mks
    Poziom 10  

    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.

    0
  • #16 27 Lis 2017 17:18
    nyczz
    Poziom 2  

    Prośba do "mks" - czy można się skontaktować prywatnie? mam kilka pytań w temacie.

    0
  • #17 27 Lis 2017 18:17
    mks
    Poziom 10  

    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.

    1
  • #18 28 Lis 2017 03:19
    pol102
    VIP Zasłużony dla elektroda

    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.

    0
  • #19 28 Lis 2017 07:48
    mks
    Poziom 10  

    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?

    0
  • #20 28 Lis 2017 11:26
    ShEvU_elektro
    Poziom 25  

    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ę.

    0
  • #21 28 Lis 2017 11:34
    mks
    Poziom 10  

    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?

    0
  • #22 29 Lis 2017 18:06
    nyczz
    Poziom 2  

    Prośba do "mks" - proszę o kontakt na "a.polak18@onet.pl".

    0
  • #23 29 Lis 2017 19:51
    mks
    Poziom 10  

    nyczz napisał:
    Prośba do "mks" - proszę o kontakt na "a.polak18@onet.pl".


    Użyj prywatnej wiadomości.

    0
  • #24 28 Sty 2018 15:09
    tmf
    Moderator Mikrokontrolery Projektowanie

    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.

    0
  • #25 29 Sty 2018 09:12
    ShEvU_elektro
    Poziom 25  

    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.

    1
  • #26 29 Sty 2018 09:25
    tmf
    Moderator Mikrokontrolery Projektowanie

    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ę.

    0
  • #27 29 Sty 2018 14:53
    ShEvU_elektro
    Poziom 25  

    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 :)

    0
  • #29 29 Sty 2018 17:14
    mks
    Poziom 10  

    ShEvU_elektro napisał:
    P.S. Klucz da się wyciągnąć - potrzebna jest jednak ingerencja w nakładkę.


    W jaki sposób?

    0
  • #30 29 Sty 2018 22:23
    ShEvU_elektro
    Poziom 25  

    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.

    0