maciekn / izar_mbus_reader

MIT License
5 stars 2 forks source link

decoder table length #1

Open KLatuszek opened 12 months ago

KLatuszek commented 12 months ago

Im working on receiving data from energy meter which can send long messeges like 0x4E or 0x44 (L-field). Do you think that i need to enlarge decoder[]: const uint8_t decoder[] = { 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0x03,0xFF,0x01,0x02,0xFF, 0xFF,0xFF,0xFF,0x07,0xFF,0xFF,0x00,0xFF, 0xFF,0x05,0x06,0xFF,0x04,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0x0B,0xFF,0x09,0x0A,0xFF, 0xFF,0x0F,0xFF,0xFF,0x08,0xFF,0xFF,0xFF, 0xFF,0x0D,0x0E,0xFF,0x0C,0xFF,0xFF,0xFF, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF };

Will be great if you can explain those values. Do you have any extra tips to adapt your project to other meters? There is any way to contact you privately?

SzczepanLeon commented 12 months ago

Hi Please try to use this

KLatuszek commented 12 months ago

hej, Jesteś też autorem repozytorium "maciekn"? Mam potrzebę odebrania ramek z licznika energii AMIplus (bez deszyfrowania) i wysłania ich przez MQTT. Nie za bardzo mam przestrzeń we flashu na większy projekt, więc potrzebuje tylko tej funkcjonalności

pon., 24 lip 2023 o 19:10 SzczepanLeon @.***> napisał(a):

HI please try to use this https://github.com/SzczepanLeon/esphome-components

— Reply to this email directly, view it on GitHub https://github.com/maciekn/izar_mbus_reader/issues/1#issuecomment-1648289268, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARK73PURVYPIKCF25JW7G7TXR2T7NANCNFSM6AAAAAA2V3GCUI . You are receiving this because you authored the thread.Message ID: @.***>

SzczepanLeon commented 12 months ago

Jesteś też autorem repozytorium "maciekn"?

Nie.

KLatuszek commented 12 months ago
  1. Wdrażałeś rozwiązanie z tamtego repozytorium?
  2. Tak jak wspominałem z licznkiem energii. Byłbyś wstanie pomóc z pokrojeniem Twojego repo zostawiając tylko kod pod na ESP w C++. Jeśli tak, to jakie byłyby Twoje oczekiwania co do zapłaty :)

pon., 24 lip 2023 o 21:47 SzczepanLeon @.***> napisał(a):

Jesteś też autorem repozytorium "maciekn"?

Nie.

— Reply to this email directly, view it on GitHub https://github.com/maciekn/izar_mbus_reader/issues/1#issuecomment-1648510484, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARK73PRKCBTZL5OXGRANE73XR3GOJANCNFSM6AAAAAA2V3GCUI . You are receiving this because you authored the thread.Message ID: @.***>

SzczepanLeon commented 12 months ago

Ad. 1) Cała historia zaczyna się tutaj

Ad. 2) Kod w C++ jest na tyle czytelny że spokojnie wytniesz to co potrzebujesz. Ja sam do "wycinania" nie mam czasu.

To co potrzebujesz to jest tylko ta biblioteka. Wypluwa ona ramkę wM-Bus, którą CC1101 odebrało. Jedyne parametry to piny do CC1101. Tutaj masz jakiś staroć jako przykład.

KLatuszek commented 11 months ago

użyłem main z Twojego https://github.com/SzczepanLeon/wMbus-gateway/ i dodałem tę bibliotekę, o której wspomniałeś. Jest wiele nieścisłości. Na przykład nie ma funkcji jak rf_mbus_init czy rf_mbus_task. są tylko te należace do klasy rf_mbus więc stworzyłem obiekty tej klasy typu rf_mbus reader a potem reader.init. Dalej, w tym mainie te funkcje przyjmują parametry, których nie w deklaracjach funkcji. ogólnie podsyłam Ci tutaj tę przeróbkę w main, bo mam problem dotyczący tego, że wyświetlają mi się same zera. [image: image.png]

Proszę rzuć okiem i się dogadamy na postawienie kawki :)

pon., 24 lip 2023 o 22:11 SzczepanLeon @.***> napisał(a):

Ad. 1) Cała historia zaczyna się tutaj https://www.elektroda.pl/rtvforum/topic3818090.html

Ad. 2) Kod w C++ jest na tyle czytelny że spokojnie wytniesz to co potrzebujesz. Ja sam do "wycinania" nie mam czasu.

To co potrzebujesz to jest tylko ta https://github.com/SzczepanLeon/wMbus-lib biblioteka. Wypluwa ona ramkę wM-Bus, którą CC1101 odebrało. Jedyne parametry to piny do CC1101.

— Reply to this email directly, view it on GitHub https://github.com/maciekn/izar_mbus_reader/issues/1#issuecomment-1648538357, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARK73PS5GI6RB22ZD5MOGFTXR3JINANCNFSM6AAAAAA2V3GCUI . You are receiving this because you authored the thread.Message ID: @.***>

SzczepanLeon commented 11 months ago

Jest wiele nieścisłości.

Tak jak napisałem, podany przykład to staroć. Coś nowszego to powycinaj z obecnego komponentu.

A sprawa jest prosta:

1) obiekt: rf_mbus myRfMbus;

2) inicjalizacja: myRfMbus.init(spiMosiPin, spiMisoPin, spiClkPin, spiCsPin, gdo0Pin, gdo2Pin);

3) a w loop'ie odczytujesz i obrabiasz:

if (myRfMbus.task()) {
  WMbusFrame wMbusData = myRfMbus.get_frame();
  std::vector<unsigned char> frame = wMbusData.frame;
  // i dalej jedziesz z tymi danymi co chcesz
}

btw Jak odpowiadasz poprzez mejla to żadne obrazki nie są tutaj widoczne.