Zebrało się sporo zmian od wydania 26.04, więc szykuję kolejne wydanie supla-device: 26.08.
Poniżej najważniejsze rzeczy z punktu widzenia DIY, Arduino IDE, PlatformIO i sd4linux. Pełna lista zmian jest oczywiście znacznie dłuższa.
1. RelayRollerShutterPair - roleta albo dwa przekaźniki
Doszła nowa klasa `RelayRollerShutterPair`, przeznaczona dla urządzeń, które mogą pracować jako:
- jeden sterownik rolety lub żaluzji,
- dwa niezależne przekaźniki.
Tryb pracy może być zmieniany w runtime i z lokalnej strony WWW. Jest też obsługa domyślnych funkcji, zapamiętywania stanów, przycisków i Action Triggerów.
Przy okazji poprawiłem sporo przypadków brzegowych w roletach i żaluzjach fasadowych:
- bezpieczniejsze przełączanie kierunku,
- walidacja kąta lameli,
- czyszczenie nieaktualnej konfiguracji,
- poprawne oznaczanie stanu "not calibrated",
- poprawki przy zmianie funkcji kanału.
2. Arduino IDE i PlatformIO
ESP8266 i ESP32 w Arduino IDE oraz PlatformIO nadal są wspierane.
Usunięty został stary target ESP8266 RTOS SDK. Nie dotyczy to normalnych projektów ESP8266 budowanych przez Arduino IDE lub PlatformIO.
Pozostałe zmiany:
- poprawka uszkodzenia stosu na ESP8266 po DeviceConfig,
- poprawione skalowanie PWM na platformach, które nie używają rozdzielczości 10-bitowej,
- poprawki PWM i oświetlenia przy zmianie funkcji kanału,
- dodana obsługa SHT10 wraz z przykładem.
3. Ważne zmiany przy aktualizacji istniejących projektów
Usunięty został tryb singletona z `Supla::Io::Base`.
Jeżeli ktoś używał własnego backendu GPIO jako globalnego singletona, powinien teraz przekazywać instancję `Io` jawnie, najlepiej przez `IoPin`.
Usunięta została też metoda: `SuplaDevice.setPermanentWebInterface()`
4. Sieć, lokalne WWW i MQTT
Lokalna strona konfiguracyjna dostała kilka praktycznych zmian:
- cykliczne skanowanie Wi-Fi,
- wybór sieci z listy,
- RSSI i jakość sygnału,
- czytelniejsze ostrzeżenia i błędy,
- ustawienia funkcji roleta/przekaźnik,
- privacy mode, przydatny np. do robienia screenshotów bez ujawniania danych.
Doszła też konfiguracja statycznego IP dla Ethernetu na ESP32 oraz kilka poprawek przełączania pomiędzy Wi-Fi, Ethernetem i trybem konfiguracji.
5. Czujniki i konfiguracja urządzenia
MultiDS / DS18B20 dostał sporo zmian:
- rozdzielenie wewnętrznego indeksu czujnika od `SubDeviceId`,
- poprawki parowania i rozwiązywania konfliktów,
- backend dla ESP-IDF.
Doszła też obsługa konfiguracji urządzenia:
- `InputActivation`,
- `ThermalProtection`.
Protokół SUPLA został zaktualizowany z wersji 28 do 29 (zmiany rozwojowe, bo serwer jeszcze nie ma wersji 29).
6. sd4linux
W sd4linux doszło źródło HTTP wraz z przykładem integracji pralki SmartThings.
Poza tym:
- opcjonalna zależność od curl,
- możliwość dodawania rozszerzeń podczas kompilacji,
- obsługa SolarEdge,
- dokładniejsze komunikaty o błędach w YAML,
- poprawiona walidacja TLS,
- ograniczenie rozmiaru odpowiedzi HTTP,
- poprawki bezpieczeństwa w obsłudze poleceń.
7. Bezpieczeństwo i stabilność
W tej wersji jest też sporo mniej widocznych, ale ważnych poprawek:
- usuwanie haseł, tokenów i innych danych wrażliwych z logów,
- poprawki obsługi certyfikatów HTTPS i OTA (esp-idf),
- ochrona CSRF formularzy konfiguracyjnych,
- dokładniejsza walidacja storage, CRC i granic partycji,
- poprawki wycieków pamięci, błędów buforów i reconnectów SRPC.
Podsumowanie
Najbardziej widoczne zmiany dla DIY to `RelayRollerShutterPair`, poprawki rolet, lepsza lokalna konfiguracja Wi-Fi, nowe opcje Ethernetu oraz poprawki Arduino Mega i ESP8266.
Pod spodem jest też dużo pracy związanej z bezpieczeństwem, storage i stabilnością połączeń.
Pełen changelog:
https://github.com/SUPLA/supla-device/b ... ANGELOG.md
SuplaDevice 26.08 - sezon ogórkowy
-
[email protected]
- Posts: 1584
- Joined: Mon Feb 06, 2023 8:56 am
- Has thanked: 18 times
- Been thanked: 26 times
@klew
Aktualizuje w GG SD i potrzebuje chyba interpretacji zmian
https://github.com/SUPLA/supla-device/b ... elay.h#L60
metody pinOnValue/pinOffValue odwoływały się do metody isActiveHigh, która na podstawie wewnętrznego stanu obiektu podawała wartość, po nowemu writeActive aktywnie pisze do GPIO, żeby wyciągnąć stan, tak to miało być? A nie powinno tam być readActive w tym komentarzu obsolete ?
Aktualizuje w GG SD i potrzebuje chyba interpretacji zmian
https://github.com/SUPLA/supla-device/b ... elay.h#L60
metody pinOnValue/pinOffValue odwoływały się do metody isActiveHigh, która na podstawie wewnętrznego stanu obiektu podawała wartość, po nowemu writeActive aktywnie pisze do GPIO, żeby wyciągnąć stan, tak to miało być? A nie powinno tam być readActive w tym komentarzu obsolete ?
-
klew
- Posts: 13905
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
Tam ogólnie "wiedza" o sposobie sterowania danym gpio została przeniesiona do IoPin.
Z punktu widzenia klasy Relay nie musisz wiedzieć jak fizycznie odbywa się sterowanie. Klasa Relay ma jedynie włączać i wyłączać gpio.
To On/OffValue było używane na zasadzie digitalWrite(pinOnValue) - gdy chciałeś włączyć i analogicznie gdy chciałeś wyłączyć.
Ten komentarz deprecated idzie trochę na skróty, bo writeActive nie zastępuje pinOnValue, tylko całe użycie w połączeniu z digitalWrite.
Ogólnie klasy IoPin i Supla::Io pozwalają na pisanie wyższej logiki sterującej bez zagłębiania się niepotrzebnie w detale sprzętowe.
Dlatego potem to wszytko fajnie działa na ekspanderach i dowolnych innych backendach sprzętowych
Najlepsze suple dla Twojego domu 
-
[email protected]
- Posts: 1584
- Joined: Mon Feb 06, 2023 8:56 am
- Has thanked: 18 times
- Been thanked: 26 times
Nie odpowiedziałeś do końca na pytanie bo ja ideę tego co robisz rozumiemklew wrote: Sun Aug 16, 2026 10:26 amTam ogólnie "wiedza" o sposobie sterowania danym gpio została przeniesiona do IoPin.
Z punktu widzenia klasy Relay nie musisz wiedzieć jak fizycznie odbywa się sterowanie. Klasa Relay ma jedynie włączać i wyłączać gpio.
To On/OffValue było używane na zasadzie digitalWrite(pinOnValue) - gdy chciałeś włączyć i analogicznie gdy chciałeś wyłączyć.
Ten komentarz deprecated idzie trochę na skróty, bo writeActive nie zastępuje pinOnValue, tylko całe użycie w połączeniu z digitalWrite.
Ogólnie klasy IoPin i Supla::Io pozwalają na pisanie wyższej logiki sterującej bez zagłębiania się niepotrzebnie w detale sprzętowe.
Dlatego potem to wszytko fajnie działa na ekspanderach i dowolnych innych backendach sprzętowych
Wg mnie te metody deprecated to są swego rodzaju GETy, a Ty w komentarzu piszesz o SET, więc to nie jest jasne na podstawie tego komentarza co z tym zrobić i tak jak piszesz to nie jest ekwiwalent.
Szczególnie z takim kodem w GG to co piszesz nie wyjaśnia co z tym zrobić, jak potrzebuje znać stan, ja bym użył readActive zamiast pinOnValue:
Code: Select all
Supla::Io::digitalWrite(channel.getChannelNumber(), pin, pinOnValue());
-
[email protected]
- Posts: 1584
- Joined: Mon Feb 06, 2023 8:56 am
- Has thanked: 18 times
- Been thanked: 26 times
Owszem, na forum, w kodzie to nie ma takiego znaczenia i wyjaśnienia
Dzięki, wiem co dalej
@klew Możesz podać jakiś przykład jak użyć `RelayRollerShutterPair`, aby można było zmieniać w webserwer przekaźnik/roletaklew wrote: Fri Aug 14, 2026 2:54 pm Zebrało się sporo zmian od wydania 26.04, więc szykuję kolejne wydanie supla-device: 26.08.
Poniżej najważniejsze rzeczy z punktu widzenia DIY, Arduino IDE, PlatformIO i sd4linux. Pełna lista zmian jest oczywiście znacznie dłuższa.
1. Compilation error: 'class Supla::Control::RelayRollerShutterPair' has no member named 'setMode' - roleta albo dwa przekaźniki
Doszła nowa klasa `RelayRollerShutterPair`, przeznaczona dla urządzeń, które mogą pracować jako:
- jeden sterownik rolety lub żaluzji,
- dwa niezależne przekaźniki.
Tryb pracy może być zmieniany w runtime i z lokalnej strony WWW. Jest też obsługa domyślnych funkcji, zapamiętywania stanów, przycisków i Action Triggerów.
Przy okazji poprawiłem sporo przypadków brzegowych w roletach i żaluzjach fasadowych:
- bezpieczniejsze przełączanie kierunku,
- walidacja kąta lameli,
- czyszczenie nieaktualnej konfiguracji,
- poprawne oznaczanie stanu "not calibrated",
- poprawki przy zmianie funkcji kanału.
2. Arduino IDE i PlatformIO
ESP8266 i ESP32 w Arduino IDE oraz PlatformIO nadal są wspierane.
Usunięty został stary target ESP8266 RTOS SDK. Nie dotyczy to normalnych projektów ESP8266 budowanych przez Arduino IDE lub PlatformIO.
Pozostałe zmiany:
- poprawka uszkodzenia stosu na ESP8266 po DeviceConfig,
- poprawione skalowanie PWM na platformach, które nie używają rozdzielczości 10-bitowej,
- poprawki PWM i oświetlenia przy zmianie funkcji kanału,
- dodana obsługa SHT10 wraz z przykładem.
3. Ważne zmiany przy aktualizacji istniejących projektów
Usunięty został tryb singletona z `Supla::Io::Base`.
Jeżeli ktoś używał własnego backendu GPIO jako globalnego singletona, powinien teraz przekazywać instancję `Io` jawnie, najlepiej przez `IoPin`.
Usunięta została też metoda: `SuplaDevice.setPermanentWebInterface()`
4. Sieć, lokalne WWW i MQTT
Lokalna strona konfiguracyjna dostała kilka praktycznych zmian:
- cykliczne skanowanie Wi-Fi,
- wybór sieci z listy,
- RSSI i jakość sygnału,
- czytelniejsze ostrzeżenia i błędy,
- ustawienia funkcji roleta/przekaźnik,
- privacy mode, przydatny np. do robienia screenshotów bez ujawniania danych.
Doszła też konfiguracja statycznego IP dla Ethernetu na ESP32 oraz kilka poprawek przełączania pomiędzy Wi-Fi, Ethernetem i trybem konfiguracji.
5. Czujniki i konfiguracja urządzenia
MultiDS / DS18B20 dostał sporo zmian:
- rozdzielenie wewnętrznego indeksu czujnika od `SubDeviceId`,
- poprawki parowania i rozwiązywania konfliktów,
- backend dla ESP-IDF.
Doszła też obsługa konfiguracji urządzenia:
- `InputActivation`,
- `ThermalProtection`.
Protokół SUPLA został zaktualizowany z wersji 28 do 29 (zmiany rozwojowe, bo serwer jeszcze nie ma wersji 29).
6. sd4linux
W sd4linux doszło źródło HTTP wraz z przykładem integracji pralki SmartThings.
Poza tym:
- opcjonalna zależność od curl,
- możliwość dodawania rozszerzeń podczas kompilacji,
- obsługa SolarEdge,
- dokładniejsze komunikaty o błędach w YAML,
- poprawiona walidacja TLS,
- ograniczenie rozmiaru odpowiedzi HTTP,
- poprawki bezpieczeństwa w obsłudze poleceń.
7. Bezpieczeństwo i stabilność
W tej wersji jest też sporo mniej widocznych, ale ważnych poprawek:
- usuwanie haseł, tokenów i innych danych wrażliwych z logów,
- poprawki obsługi certyfikatów HTTPS i OTA (esp-idf),
- ochrona CSRF formularzy konfiguracyjnych,
- dokładniejsza walidacja storage, CRC i granic partycji,
- poprawki wycieków pamięci, błędów buforów i reconnectów SRPC.
Podsumowanie
Najbardziej widoczne zmiany dla DIY to `RelayRollerShutterPair`, poprawki rolet, lepsza lokalna konfiguracja Wi-Fi, nowe opcje Ethernetu oraz poprawki Arduino Mega i ESP8266.
Pod spodem jest też dużo pracy związanej z bezpieczeństwem, storage i stabilnością połączeń.
Pełen changelog:
https://github.com/SUPLA/supla-device/b ... ANGELOG.md
-
veeroos
- Posts: 1081
- Joined: Sun Mar 20, 2022 9:30 am
- Location: Głogów
- Has thanked: 1 time
- Been thanked: 9 times
Chodzi Ci o coś takiego?lukasz06 wrote: Wed Aug 19, 2026 2:21 pm Możesz podać jakiś przykład jak użyć `RelayRollerShutterPair`, aby można było zmieniać w webserwer przekaźnik/roleta
No to nie wiem jak to zrobić
Ale jak już rozgryziesz bibliotekę jak deklarować dane, to dodajesz do webserwera przez bibliotekę do obsługi ustawień rolet "roller_shutter_parameters.h", ale to i tak nie działa poprawnie, wyświetla mi tylko opcje do wyboru, ale wybieram tylko rolety, muszę zobaczyć co namieszałem
You do not have the required permissions to view the files attached to this post.
Zamel Mew-01, Zamel PEW-01, Zamel SBW-01, Zamel THW-01, Zamel SRW-01, Zamel mSLW-02, Auraton BOX + Indor Sensor, Airly Gate By Veeroos, Zigbee to Supla Gateway + sensors, Zamel SGW-01 and more
https://github.com/v33r005
https://github.com/v33r005
-
YoMan
- Posts: 3521
- Joined: Thu Apr 30, 2020 5:18 pm
- Location: Częstochowa
- Has thanked: 3 times
- Been thanked: 3 times
Spróbowałem tej nowości z roletami i po przełączeniu w apce pierwszego przekaźnika na rolety sterowanie zaczeło działać jak rolety na dwóch kanałach ale w zarówno w cloud jak i w apce pozostaje kanał "nieczynny" - do ukrycia (taka sugestia też jest w apce). Tak to docelowo ma być czy też w przyszłosci będzie znikał automatycznie?klew wrote: Fri Aug 14, 2026 2:54 pm Zebrało się sporo zmian od wydania 26.04, więc szykuję kolejne wydanie supla-device: 26.08.
Poniżej najważniejsze rzeczy z punktu widzenia DIY, Arduino IDE, PlatformIO i sd4linux. Pełna lista zmian jest oczywiście znacznie dłuższa.
1. RelayRollerShutterPair - roleta albo dwa przekaźniki
Doszła nowa klasa `RelayRollerShutterPair`, przeznaczona dla urządzeń, które mogą pracować jako:
- jeden sterownik rolety lub żaluzji,
- dwa niezależne przekaźniki.
Tryb pracy może być zmieniany w runtime i z lokalnej strony WWW. Jest też obsługa domyślnych funkcji, zapamiętywania stanów, przycisków i Action Triggerów.
Przy okazji poprawiłem sporo przypadków brzegowych w roletach i żaluzjach fasadowych:
- bezpieczniejsze przełączanie kierunku,
- walidacja kąta lameli,
- czyszczenie nieaktualnej konfiguracji,
- poprawne oznaczanie stanu "not calibrated",
- poprawki przy zmianie funkcji kanału.
YoMan
________________________________________
Wziąłem udział w SOP2023 & SOP2024
________________________________________
Wziąłem udział w SOP2023 & SOP2024
