Aktualizacja SuplaDevice

User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Ostatnie zmiany w bibliotece (cały czas mówimy o branchu develop):
  • Zmienił się sposób logowania urządzenia do serwera. Wyleciało locationId oraz password. Teraz trzeba podawać adres e-mail oraz AuthKey (tablica zawierająca 16 bajtów - analogicznie jak GUID). Na chwilę obecną trzeba sobie generować AuthKey podobnie jak GUID. W przykładach pojawi się wkrótce link do https://www.supla.org/pl/arduino/get-authkey . Jeśli aktualizujecie bibliotekę, to stare urządzenia będą działać poprawnie o ile nie zmieni się GUID.
  • Konfiguracja adresu MAC oraz "localIp" została przeniesiona do klas odpowiedzialnych za połączenie sieciowe - nie przkazujemy ich już w SuplaDevice.begin()
  • Licznik impulsów - poprawiono zapisywanie do flash dla ESP8266 (thanks @elmaya ), ustawiłem zapis do flash raz na 5 min - używajcie roztropnie, bo pamięć trwała ma ograniczoną żywotność.
  • Usunięto callbacki do nadpisywania method suplaDigitalWrite/Read. Zamiast tego pojawiła się klasa Supla::Io. Aby nadpisać metody digitalRead/Write, trzeba odzieciczyć z tej klasy, zaimplementować metody Supla::Io::customDigitalWrite/Read oraz stworzyć w programie globalną instancję tej klasy (jest przykład w readme)
Wkrótce:
  • Poprawki dla ESP8266 aby łączenie z wifi było nieblokujące - np. aby w przyszłości przyciski lokalne działały gdy nie ma sieci
  • Przerobienie obsługi sensorów - zaczynamy od termometrów - będzie można dodawać dowolną ilość DHT, DS18B20, itp. bez konieczności przepisywania callbacków.
Najlepsze suple dla Twojego domu :mrgreen:
andrew01
Posts: 163
Joined: Fri May 24, 2019 6:49 am

Post

Czy byłaby szansa aby z poziomu kodu ustawiać nazwę kanału wyświetlaną w apce oraz przypisywać lokalizację? Byłoby to pomocne przy zmianach w konfiguracji kanałów.

Pozdrawiam
Andrzej
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

andrew01 wrote: Sat Dec 07, 2019 10:44 am Czy byłaby szansa aby z poziomu kodu ustawiać nazwę kanału wyświetlaną w apce oraz przypisywać lokalizację? Byłoby to pomocne przy zmianach w konfiguracji kanałów.

Pozdrawiam
Andrzej
Aktualny intefejs do serwera na takie coś nie pozwala.
Można jedynie ustawić nazwę urządzenia. We wcześniejszej wersji można było przypisać lokalizację do urządzenienia, teraz nawet tegok nie ma ;)

@pzygmunt - jest może w planach takie rozszerzenie rejestracji o nazwę kanału i/lub domyślną lokalizację?
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Jest to niepraktyczne dlatego od tego odeszliśmy.
SUPLA.... Nareszcie w domu.
krycha88
Posts: 5575
Joined: Fri Nov 16, 2018 7:25 am
Been thanked: 5 times

Post

pzygmunt wrote: Sat Dec 07, 2019 4:35 pm Jest to niepraktyczne dlatego od tego odeszliśmy.
Pod jakim względem nie praktyczne? Pierwszej konfiguracji dla użytkowników bo nie rozumieją co to jest lokalizacja?
https://gui-generic-builder.supla.io/
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

krycha88 wrote: Sat Dec 07, 2019 5:43 pm
pzygmunt wrote: Sat Dec 07, 2019 4:35 pm Jest to niepraktyczne dlatego od tego odeszliśmy.
Pod jakim względem nie praktyczne? Pierwszej konfiguracji dla użytkowników bo nie rozumieją co to jest lokalizacja?
Niepraktyczne jest logowanie urządzenia do konkretnej lokalizacji z odrębnym hasłem.
Potem okazywało się, że poszczególne kanały z urządzenia i tak się rozpinało na różne lokalizacje.
Teraz logowania urządzeń jest przy pomocy GUID, authkey, email.

@pzygmunt, pytanie było raczej o to, aby móc określić domyślną nazwę oraz lokalizację danego kanału w ramach urządzenia.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Nie wiem czy to ma sens. Bardziej widziałbym jakieś ustawienia po stronie serwera określające domyślne wartości. Obecnie domyślną lokalizacją jest pierwsza z brzegu. Każdy kanał o konkretniej funkcji ma swój domyślny podpis tj. jednoznaczny z funkcją. Co nam da ustawienie dla jakiejś serii urządzeń jakiegoś konkretnego domyślnego podpisu ?
SUPLA.... Nareszcie w domu.
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

pzygmunt wrote: Sat Dec 07, 2019 9:18 pm Nie wiem czy to ma sens. Bardziej widziałbym jakieś ustawienia po stronie serwera określające domyślne wartości. Obecnie domyślną lokalizacją jest pierwsza z brzegu. Każdy kanał o konkretniej funkcji ma swój domyślny podpis tj. jednoznaczny z funkcją. Co nam da ustawienie dla jakiejś serii urządzeń jakiegoś konkretnego domyślnego podpisu ?
Ustawianie czegoś "seryjnie" jest bez sensu, bo ten opis nic nie wniesie.
Natomiast są dwie sytuacje, gdzie to mogłoby się przydać:
  • kupuję gotowca, odpalam konfigurator na telefonie i od razu wpisuję tam nazwę kanału (np. Roleta pokój gościnny)
  • ludzie robiący DIY mogliby sobie też taką nazwę od razu wpisać w programie (albo potem w jakimś GUI)
Wtedy w chmurze jest już wszystko jasne, w aplikacji też ładnie widoczne.
Przykładowo ja na Arduino mam 8 liczników impulsów na jednym urządzeniu. Musiałem sobie notować, pod który co podpinam i potem jeszcze raz to samo ustawiać na cloudzie.
Planuję też podpiąć 36 świateł pod dwa Arduino Mega.
Były też na forum przypadki ludzi, którzy montowali gotowce w puszkach (np 10 sztuk), konfigurowali apką, a potem w cloudzie trzeba zgadywać, który był który. Kreator móglby pozwalać nazwać urządzenie podczas jego konfiguracji, wtedy mogłoby to być prostsze.

To tylko takie luźne pomysły. Natomiast nad ustawianiem lokalizacji trzeba by się zastanowić, czy to ma sens.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Już bardziej widziałbym aby Smartfon ogarniał takie ustawienia używając Restowego API.
SUPLA.... Nareszcie w domu.
krycha88
Posts: 5575
Joined: Fri Nov 16, 2018 7:25 am
Been thanked: 5 times

Post

klew wrote: Sat Dec 07, 2019 6:08 pm
krycha88 wrote: Sat Dec 07, 2019 5:43 pm
pzygmunt wrote: Sat Dec 07, 2019 4:35 pm Jest to niepraktyczne dlatego od tego odeszliśmy.
Pod jakim względem nie praktyczne? Pierwszej konfiguracji dla użytkowników bo nie rozumieją co to jest lokalizacja?
Niepraktyczne jest logowanie urządzenia do konkretnej lokalizacji z odrębnym hasłem.
Potem okazywało się, że poszczególne kanały z urządzenia i tak się rozpinało na różne lokalizacje.
Teraz logowania urządzeń jest przy pomocy GUID, authkey, email.
W moim wypadku jest to bardzo przydatne i mam nadzieje, że będzie działać tak zawsze 😀 mam kilka lokalizacji w różnych budynkach i dzięki takiemu rozróżnieniu nie muszę się martwić że pojawi się urządzenie nie tej osobie co trzeba i nie muszę nic dodatkowego ustawiać po stronie clouda.
Dla nowego sposobu rozumiem, że domyśla lokalizacja jest brak lokalizacji?
https://gui-generic-builder.supla.io/

Return to “Arduino IDE”