Sonoff Pow wydanie R2 - firmware

djack2017
Posts: 321
Joined: Mon Nov 27, 2017 7:36 am

Sun Jan 13, 2019 6:59 pm

pzygmunt wrote:
Thu Dec 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 ...
User avatar
pzygmunt
Posts: 7053
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

Sun Jan 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
Posts: 321
Joined: Mon Nov 27, 2017 7:36 am

Sun Jan 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ś.
User avatar
pzygmunt
Posts: 7053
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

Mon Jan 14, 2019 5:51 am

To słuchaj innych.
djack2017
Posts: 321
Joined: Mon Nov 27, 2017 7:36 am

Mon 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) Viewed 990 times
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 wrote:
Thu Feb 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.
User avatar
pzygmunt
Posts: 7053
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

Mon Mar 04, 2019 5:55 pm

djack2017 wrote:
Mon 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
Posts: 321
Joined: Mon Nov 27, 2017 7:36 am

Mon 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.
User avatar
pzygmunt
Posts: 7053
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

Tue 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
Posts: 321
Joined: Mon Nov 27, 2017 7:36 am

Sun 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' ?
User avatar
pzygmunt
Posts: 7053
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

Sun 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.
Post Reply