Aktualizacja SuplaDevice

krycha88
Posty: 645
Rejestracja: pt lis 16, 2018 7:25 am

wt paź 22, 2019 6:57 am

Zauważyłem, że wczoraj @pzygmunt wrzuciłeś poprawki dotyczące kolejki, czy napiszesz coś więcej na temat tej poprawki?

https://github.com/SUPLA/arduino/tree/develop
Awatar użytkownika
pzygmunt
Posty: 7695
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

wt paź 22, 2019 9:29 am

To są póki co eksperymenty z usunięciem kolejki dla Arduino.
Awatar użytkownika
klew
Posty: 532
Rejestracja: czw cze 27, 2019 12:16 pm

wt paź 22, 2019 11:26 am

W najbliższym czasie będzie robione trochę zmian w bibliotece SuplaDevice na Arduino IDE. Zaczynamy od poprawek uciążliwych miejsc i błędów. Potem interfejs biblioteki będzie zmieniony na bardziej "ludzki". I na końcu dodamy nowe brakujące funkcjonalności, sensory itd.

Jeśli ktoś ma jakieś uwagi i życzenia, to piszcie śmiało, albo linkujcie tutaj tematy z problemami/pomysłami, które by się Wam przydały w bibliotece.
krycha88
Posty: 645
Rejestracja: pt lis 16, 2018 7:25 am

wt paź 22, 2019 12:06 pm

klew pisze:
wt paź 22, 2019 11:26 am
W najbliższym czasie będzie robione trochę zmian w bibliotece SuplaDevice na Arduino IDE. Zaczynamy od poprawek uciążliwych miejsc i błędów. Potem interfejs biblioteki będzie zmieniony na bardziej "ludzki". I na końcu dodamy nowe brakujące funkcjonalności, sensory itd.

Jeśli ktoś ma jakieś uwagi i życzenia, to piszcie śmiało, albo linkujcie tutaj tematy z problemami/pomysłami, które by się Wam przydały w bibliotece.
A czy mógłbyś chociaż w krótkim skrócie opisać problemy, które udało Ci się namierzyć? Pomijając problem buffora.

Patrzyłeś się na moją modyfikację? Nie wiem czy jest sens robić kolejną wersję, która lata po forum. Może warto w końcu to uspójnić i utrzymywać jedną?
https://github.com/krycha88/SuplaDevice
Awatar użytkownika
klew
Posty: 532
Rejestracja: czw cze 27, 2019 12:16 pm

wt paź 22, 2019 1:02 pm

krycha88 pisze:
wt paź 22, 2019 12:06 pm
A czy mógłbyś chociaż w krótkim skrócie opisać problemy, które udało Ci się namierzyć? Pomijając problem buffora.

Patrzyłeś się na moją modyfikację? Nie wiem czy jest sens robić kolejną wersję, która lata po forum. Może warto w końcu to uspójnić i utrzymywać jedną?
https://github.com/krycha88/SuplaDevice
Na Arduino Mega (nie wspominając o UNO) były problemy z pamięcią (tam jest 8 kB RAM-u). Na ESP one się nie pojawiały i tam też dało się kolejkę zwiększyć. Kolejnym problemem był zbyt mały rozmiar kolejki, przez co przy większej ilości czujników wszystko się sypało. Usunięcie kolejek rozwiąże te problemy.

Drugi zestaw problemów to interfejs SuplaDevice. Aktualnie definiowanie interfejsu sieciowego (np Ethernet Shield albo konifguracja Wifi na EPS) jest mocno nahakowane ;). Dodawanie drugiego (i kolejnych) termometrów (i innych sensorów) wymaga przepisywania callbacków do odczytu tych wartości.
Prowadzi to do mało eleganckich rozwiązań w projektach użytkowników. Będzie to zmienione tak, że interfejsy sieciowe będziesz wybierał "jedną linijką kodu". Dodawanie kolejnych DHT, czy DSów będzie też bez konieczności pisania kodu do ich odczytu. Po prostu dodajesz metodę "addDHT(pin, ...)" i po sprawie (tak jak to zrobiłem w moim forku biblioteki https://github.com/klew/arduino/blob/ma ... ld_DHT.ino)

Trzeci temat to brakujące funkcjonalności - między innymi to co dorzuciłeś u siebie do biblioteki (np. relay button, zapisywanie stanów to eeprom).
Docelowo oficjalna biblioteka powinna ogarnąć potrzeby użytkowników i robienie własnych forków nie będzie potrzebne. Programy pisane na bazie starej biblioteki będą wymagały aktualizacji (w większości polegającej na usuwaniu niepotrzebnego kodu).
krycha88
Posty: 645
Rejestracja: pt lis 16, 2018 7:25 am

wt paź 22, 2019 1:27 pm

klew pisze:
wt paź 22, 2019 1:02 pm
krycha88 pisze:
wt paź 22, 2019 12:06 pm
A czy mógłbyś chociaż w krótkim skrócie opisać problemy, które udało Ci się namierzyć? Pomijając problem buffora.

Patrzyłeś się na moją modyfikację? Nie wiem czy jest sens robić kolejną wersję, która lata po forum. Może warto w końcu to uspójnić i utrzymywać jedną?
https://github.com/krycha88/SuplaDevice
Na Arduino Mega (nie wspominając o UNO) były problemy z pamięcią (tam jest 8 kB RAM-u). Na ESP one się nie pojawiały i tam też dało się kolejkę zwiększyć. Kolejnym problemem był zbyt mały rozmiar kolejki, przez co przy większej ilości czujników wszystko się sypało. Usunięcie kolejek rozwiąże te problemy.

Drugi zestaw problemów to interfejs SuplaDevice. Aktualnie definiowanie interfejsu sieciowego (np Ethernet Shield albo konifguracja Wifi na EPS) jest mocno nahakowane ;). Dodawanie drugiego (i kolejnych) termometrów (i innych sensorów) wymaga przepisywania callbacków do odczytu tych wartości.
Prowadzi to do mało eleganckich rozwiązań w projektach użytkowników. Będzie to zmienione tak, że interfejsy sieciowe będziesz wybierał "jedną linijką kodu". Dodawanie kolejnych DHT, czy DSów będzie też bez konieczności pisania kodu do ich odczytu. Po prostu dodajesz metodę "addDHT(pin, ...)" i po sprawie (tak jak to zrobiłem w moim forku biblioteki https://github.com/klew/arduino/blob/ma ... ld_DHT.ino)

Trzeci temat to brakujące funkcjonalności - między innymi to co dorzuciłeś u siebie do biblioteki (np. relay button, zapisywanie stanów to eeprom).
Docelowo oficjalna biblioteka powinna ogarnąć potrzeby użytkowników i robienie własnych forków nie będzie potrzebne. Programy pisane na bazie starej biblioteki będą wymagały aktualizacji (w większości polegającej na usuwaniu niepotrzebnego kodu).
Dzisiaj przetestuję, rozwiązanie usunięcia kolejki zaproponowane przez @pzygmunt może jeden problem się rozwiąże :D

Biorąc pod uwagę, że ta bibliotek ma być przebudowana na nowo to czy jest sens obecnie pchać się w tak duży jej rozwój...a może nie nastąpi to w najbliższym roku ;)
Awatar użytkownika
klew
Posty: 532
Rejestracja: czw cze 27, 2019 12:16 pm

wt paź 22, 2019 1:34 pm

krycha88 pisze:
wt paź 22, 2019 1:27 pm
Dzisiaj przetestuję, rozwiązanie usunięcia kolejki zaproponowane przez @pzygmunt może jeden problem się rozwiąże :D

Biorąc pod uwagę, że ta bibliotek ma być przebudowana na nowo to czy jest sens obecnie pchać się w tak duży jej rozwój...a może nie nastąpi to w najbliższym roku ;)
Aktualnej wersji z deva nie testuj, bo nie działa ;P

Prawdopobnie nic związanego z GUI do bibiloteki nie trafi. Także jest co rozwijać ;P
Awatar użytkownika
pzygmunt
Posty: 7695
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

wt paź 22, 2019 1:44 pm

To na dev-ie powinno już działać.
Przebudowa to element rozwoju.
krycha88
Posty: 645
Rejestracja: pt lis 16, 2018 7:25 am

wt paź 22, 2019 1:49 pm

klew pisze:
wt paź 22, 2019 1:34 pm
Prawdopobnie nic związanego z GUI do bibiloteki nie trafi. Także jest co rozwijać ;P
To czekam na kolejne wrzutki :)
krycha88
Posty: 645
Rejestracja: pt lis 16, 2018 7:25 am

wt paź 22, 2019 3:44 pm

pzygmunt pisze:
wt paź 22, 2019 1:44 pm
To na dev-ie powinno już działać.
Potwierdzam, działa :) Zwrócić na coś szczególną uwagę?
ODPOWIEDZ