Sonoff Pow wydanie R2 - firmware

djack2017
Posty: 351
Rejestracja: pn lis 27, 2017 7:36 am

ndz sty 13, 2019 6:59 pm

pzygmunt pisze:
czw gru 20, 2018 7:42 am
Wymyśliłeś sobie własny sposób przesyłania tego typu danych, który po stronie serwera jest inaczej niż byś chciał obsługiwany. Nie czytasz też tego co do Ciebie pisze to co Ci będę tłumaczył.
Firmware dla Sonoff-Pow dla systemu Supla pobrało z mojej strony do tej pory 490 osób, dla Sonoff-Pow_R2 pobrały 234 osoby. Myślę, że te prawie pół tysiąca osób jest bardzo rozczarowanych, że twórca systemu Supla uparcie odmawia (nie chcę wyciągać pochopnych wniosków) wprowadzenia obsługi kanałów napięcia, prądu, mocy i energii. Szczególnie, że jak pisałem, i potwierdziło to kilka osób w innych miejscach forum, byłyby to identyczne kanały jak THERMOMETERDS18B20. Wystarczyłoby powielić ten sam kod jak dla kanału THERMOMETERDS18B20 i zmienić jedynie nazwy, numery typów kanałów, jednostkę i ikonę. Tobie zajęłoby to, myślę, maximum godzinę, góra dwie. Szczególnie teraz, kiedy wprowadzana jest wersja serwera 2.3 ...
Awatar użytkownika
pzygmunt
Posty: 7675
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz sty 13, 2019 9:32 pm

Co za głupoty wypisujesz? Może raczysz się dostosować do istniejącego kodu zamias wymagać aby kod dostosował się do Ciebie.

viewtopic.php?p=24098#p24098
djack2017
Posty: 351
Rejestracja: pn lis 27, 2017 7:36 am

ndz sty 13, 2019 10:48 pm

To dlaczego inni wypisują odpowiedzi na moje posty, abym użył do pomiaru napięcia czy prądu kanału THERMOMETERDS18B20, bo innego kanału po prostu nie ma. Przy deklaracji kanału rozszerzonego (który wcześniej mi sugerowałeś) otrzymuję kanał licznika energii elektrycznej, gdzie mogę jedynie wybrać jeszcze licznik gazu i wodu i cenę za kWh. Dlaczego też nie ma kanału typu "General purpose", który jak się okazuje, inni też wcześniej sugerowali, a który rozwiązałby tego rodzaju problemy.
Poza tym, ja się dokładnie dostosowałem do istniejącego kodu i przesyłam wartości napięcia, prądu i mocy dokładnie tak samo jak robi to sonoff z czujnikiem temperatury DS18B20, ale trudno wyświetlać wartość napięcia z jednostkami w stopniach Celsjusza.
Przyjrzę się bliżej linkowi, który podałeś.
Awatar użytkownika
pzygmunt
Posty: 7675
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

pn sty 14, 2019 5:51 am

To słuchaj innych.
djack2017
Posty: 351
Rejestracja: pn lis 27, 2017 7:36 am

pn mar 04, 2019 5:46 pm

Jest nowa wersja firmware dla Sonoff_POW_R2:
http://djack.com.pl/modules.php?name=Do ... it&lid=326
Współdziała ona z wersjami serwera Zabbix: 2.0, 3.0 oraz najnowszą wersją 4.0
Szerszy opis funkcjonalności jest w podanym wyżej pliku.

Na serwerze SUPLA urządenie rejestruje się w postaci pięciu kanałów:
Sonoff_R2_1.png
Sonoff_R2_1.png (73.45 KiB) Przejrzano 1187 razy
Niestety, na dzień dzisiejszy, jeśli chodzi o serwer SUPLA, obsługa kanałów "licznik impulsów" jest nieskończona i według moich testów praktycznie nic nie działa (działają harmonogramy i obsługa przekaźnika).
Jak napisłał pzygmunt o obsłudze tego typu kanału:
pzygmunt pisze:
czw lut 21, 2019 12:56 pm
Gdzieś przy okazji to dodamy. Nie było ciśnienia z tym
Tak więc, jeśii ktoś chciałby używać tego typu urządzenia w pełnej funkcjonalności również z serwerem SUPLA, musi "wytworzyć ciśnienie" na autorach SUPLI.
Awatar użytkownika
pzygmunt
Posty: 7675
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

pn mar 04, 2019 5:55 pm

djack2017 pisze:
pn mar 04, 2019 5:46 pm
Tak więc, jeśii ktoś chciałby używać tego typu urządzenia w pełnej funkcjonalności również z serwerem SUPLA, musi "wytworzyć ciśnienie" na autorach SUPLI.
Głupoty opowiadasz. Zresztą nie pierwszy raz. Serwery mają pełną funkcjonalność odnośnie liczników. Brakuje jedynie funkcjonalności po stronie aplikacji klienckich. Moja wypowiedź odnosiła się do linków bezpośrednich.
djack2017
Posty: 351
Rejestracja: pn lis 27, 2017 7:36 am

pn mar 04, 2019 10:19 pm

Dlaczego więc wyniki pomiarów pojawiają się w historii pomiarów jedynie w kanale 1 i 2, a w 3 i 4 już nie (tylko zera). I nie jest to problem kodu bo wystarczy zamienić w kodzie numer kanału np. 1 z 3 i już wyniki są tylko zerowe. Wyniki w historii pomiarów sa podawane co 10 minut (skąd akurat taka wartość) więc wszystkie pomiary pomiędzy, choćby różniły się między sobą znacząco, są tracone. Poza tym obsługa tego typu kanału, po stronie SUPLI sprowadza się zasadniczo tylko do linków bezpośrednich i historii pomiarów - a zarówno jedno jak i drugie albo nie działa w ogóle albo nie do końca tak jak powinno. Twierdzisz, że piszę głupoty - jeśli prześledzić moje posty i Twoje odpowiedzi na nie (lub ich brak), to właśnie do takich wniosków, jak podaję, można by dojść. Przyznaję, że moje opinie są trochę przesadzone (i celowo trochę prowokacyjne i złośliwe), ale komunikacja z Tobą, jeśli chodzi o stronę merytoryczną, nie jest łatwa.
Awatar użytkownika
pzygmunt
Posty: 7675
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

wt mar 05, 2019 7:57 am

Przeczytaj jeszcze raz kod. Później jeszcze raz. Znowu masz swoją koncepcje jak coś powinno działać, a to działa trochę inaczej.
djack2017
Posty: 351
Rejestracja: pn lis 27, 2017 7:36 am

ndz mar 10, 2019 9:36 pm

Wytłumacz mi bo nie rozumiem.
Mam 3 identyczne kanały: kanał1 ma ID51, kanał2 ma ID52, kanał3 na ID53
Wykonuję testowo kod:

last_voltage = (int)(napiecie);
//---------------------------------
channel_number = 1;
icv.counter = last_voltage;
memset(value, 0, SUPLA_CHANNELVALUE_SIZE);
memcpy(value, &icv, sizeof(TDS_ImpulseCounter_Value));
supla_esp_channel_value__changed(channel_number, value);

channel_number = 2;
icv.counter = last_voltage;
memset(value, 0, SUPLA_CHANNELVALUE_SIZE);
memcpy(value, &icv, sizeof(TDS_ImpulseCounter_Value));
supla_esp_channel_value__changed(channel_number, value);

channel_number = 3;
icv.counter = last_voltage;
memset(value, 0, SUPLA_CHANNELVALUE_SIZE);
memcpy(value, &icv, sizeof(TDS_ImpulseCounter_Value));
supla_esp_channel_value__changed(channel_number, value);

I w bazie danych pojawia mi się wpis:
LOCK TABLES `supla_ic_log` WRITE;
/*!40000 ALTER TABLE `supla_ic_log` DISABLE KEYS */;
INSERT INTO `supla_ic_log` VALUES (5877,51,'2019-03-10 20:35:43',2249,224900),(5878,52,'2019-03-10 20:35:43',2249,224900),(5879,53,'2019-03-10 20:35:43',0,0);
/*!40000 ALTER TABLE `supla_ic_log` ENABLE KEYS */;
UNLOCK TABLES;

Dlaczego dla kanałów 51 i 52 jest prawidłowa wartość '2249' , a dla kanału 53 jest '0' ?
Awatar użytkownika
pzygmunt
Posty: 7675
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz mar 10, 2019 11:01 pm

Prześledź sobie w jaki sposób serwer zapisuje logi.
https://github.com/SUPLA/supla-core/blo ... er.cpp#L82

Jeżeli coś nie gra to po stronie urządzenia wykonawczego.
ODPOWIEDZ