supla-device 23.11 wydana

User avatar
klew
Posts: 8763
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

Właśnie została wydana supla-device w wersji 23.11 (także dla Arduino IDE).

Większość zmian to różne drobne poprawki dla: HVAC (termostat), RGBW/RGB/Dimmer, Licznik impulsów (ustawianie stanu początkowego), czyszczenie stanu/konfiguracji przy resecie do ustawień fabrycznych, itd.
Dodano też wsparcie dla kilku zmian i nowości dotyczących przesyłania konfiguracji urządzenia z serwera na urządzenie (dotyczące jasności ekranu, lub ustaiwania czasu na urządzeniu).
Dodano wsparcie dla termostatów w integracji z lokalnym MQTT (ze wsparciem dla mechanizmu MQTT autodiscovery dla Home Assistant)

Pełna lista zmian:
https://github.com/SUPLA/supla-device/b ... -2023-1107
Widzimy się na Supla Offline Party vol. 2 :!:
krycha88
Posts: 5243
Joined: Fri Nov 16, 2018 7:25 am

Post

Dzięki za wersję :)
klew wrote: Tue Nov 07, 2023 10:45 am nowości dotyczących przesyłania konfiguracji urządzenia z serwera na urządzenie (dotyczące jasności ekranu)
Napiszesz coś więcej?
https://gui-generic-builder.supla.io/
User avatar
klew
Posts: 8763
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

krycha88 wrote: Tue Nov 07, 2023 10:50 am Dzięki za wersję :)
klew wrote: Tue Nov 07, 2023 10:45 am nowości dotyczących przesyłania konfiguracji urządzenia z serwera na urządzenie (dotyczące jasności ekranu)
Napiszesz coś więcej?
To są rzeczy, które jako pierwsze wchodzą z termostatem GKW. Wymagają serwera z proto 21, więc na razie tylko na beta.

Ogólnie jest dodane wsparcie dla różnych parametrów konfiguracyjnych, które do tej pory były w cfg mode (za wyjątkiem konfiguracji wifi, serwera itp).
Tutaj jest lista pól, a w komentarzach jest nazwa struktury z danymi i kontkretnymi parametrami, które można tam przesłać:
https://github.com/SUPLA/supla-core/blo ... oto.h#L554

Całość opiera się o klasę Supla::Config i poszczególne parametry mają zafiksowane nazwy i format danych (niekoniecznie identyczny jak w proto).

Aby to działało, to trzeba dodać flagę:

Code: Select all

  Supla::Channel::reg_dev.Flags |= SUPLA_DEVICE_FLAG_DEVICE_CONFIG_SUPPORTED;
A następnie zarejestrować jakie parametry są wspierane:

Code: Select all

    Supla::Device::RemoteDeviceConfig::RegisterConfigField(
        SUPLA_DEVICE_CONFIG_FIELD_SCREEN_BRIGHTNESS);
W klasie dziedziczącej po Supla::Element, która ma reagować na zmianę danego parametru konfiguracyjnego, trzeba dodać implementację metody:

Code: Select all

void MojEkran::onDeviceConfigChange(uint64_t fieldBit) {
  if (fieldBit == SUPLA_DEVICE_CONFIG_FIELD_SCREEN_BRIGHTNESS) {
    // reload config
    onLoadConfig(nullptr);
  }
}
Ta metoda jest odpalana, gdy zostaną zmienione parametry odpowiadające danemu parametrowi. W kodzie powyżej odpalam po prostu ręcznie jeszcze raz metodę onLoadConfig, która czyta konfigurację z Supla::Config.

Jeśli paramter może się zmienić lokalnie (np. przez www cfg mode, albo z przycisków itp) to trzeba też pamiętać aby to robić w ten sposób:

Code: Select all

      cfg->setInt32(Supla::Html::ScreenAdjustmentForAutomaticCfgTag, param);
      cfg->setDeviceConfigChangeFlag();
      Supla::Element::NotifyElementsAboutConfigChange(
          SUPLA_DEVICE_CONFIG_FIELD_SCREEN_BRIGHTNESS);
https://github.com/SUPLA/supla-device/b ... s.cpp#L199

Czyli ustawiamy parametr do Configa, następnie wywołujemy metodę, która nam ustawi flagę, że "device config" się zmienił" i odpalam ręcznie notyfikację pozostałych Elementów o zmianie - tak aby odświeżyły sobie aktualną konfigurację.
Widzimy się na Supla Offline Party vol. 2 :!:
kurus
Posts: 1091
Joined: Wed Jan 15, 2020 8:17 pm

Post

@klew
Add: ActionTrigger: restored repeated "ON HOLD" action sending, however it has to be configured for >= 1000 ms. Otherwise AT for ON HOLD repeating is disabled
Czy to oznacza że, ściemnianie i rozjaśnianie dimmera z wyzwalaczy akcji coraz bliżej?
User avatar
klew
Posts: 8763
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

kurus wrote: Tue Nov 07, 2023 3:57 pm @klew
Add: ActionTrigger: restored repeated "ON HOLD" action sending, however it has to be configured for >= 1000 ms. Otherwise AT for ON HOLD repeating is disabled
Czy to oznacza że, ściemnianie i rozjaśnianie dimmera z wyzwalaczy akcji coraz bliżej?
Czekamy na cloud i serwer, ale tego nie będzie w najbliższym wydaniu
Widzimy się na Supla Offline Party vol. 2 :!:
SOYER
Posts: 841
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry

Post

👏 👍
lukasz06
Posts: 874
Joined: Sun Jul 17, 2022 6:53 pm

Post

Po aktualizacji w Arduino dostałem taki komunikat:
Błędna biblioteka znaleziona w C:\Users\G\Documents\Arduino\libraries\SuplaDevice: brak plików nagłówkowych (.h) w C:\Users\G\Documents\Arduino\libraries\SuplaDevice
User avatar
klew
Posts: 8763
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

lukasz06 wrote: Wed Nov 08, 2023 8:47 am Po aktualizacji w Arduino dostałem taki komunikat:
Błędna biblioteka znaleziona w C:\Users\G\Documents\Arduino\libraries\SuplaDevice: brak plików nagłówkowych (.h) w C:\Users\G\Documents\Arduino\libraries\SuplaDevice
W tym zakresie tam nie było żadnych zmian. Więc albo coś masz namieszane z bibliotekami u siebie, albo coś z Arduino. Jaką wersję Arduino IDE używasz?

Sprawdź też co masz w tym katalogu C:\Users\G\Documents\Arduino\libraries\SuplaDevice i głębiej w podkatalogu src.
Widzimy się na Supla Offline Party vol. 2 :!:
lukasz06
Posts: 874
Joined: Sun Jul 17, 2022 6:53 pm

Post

1.8.19
User avatar
klew
Posts: 8763
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

lukasz06 wrote: Wed Nov 08, 2023 9:10 am1.8.19
Mam tą samą wersję i u mnie działa. Sprawdź co masz w tamtych katalogach z libką.
Widzimy się na Supla Offline Party vol. 2 :!:

Return to “supla-dev”