InitialCaption

Masz pomysł na funkcjonalność lub koncepcję na rozwój projektu. Opisz wszystko tutaj.
User avatar
klew
Posts: 13905
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Jak dla mnie ilość informacji jest wystarczająca. Po co komu więcej wiedzieć? Oczywiście może autor pyta nie o to, o co powinien i próbuje na około rozwiązać coś co ma prostsze rozwiązanie.

Duch już gdzieś indziej wspominał o tym projekcie. Nie robi go komercyjnie, ale też nie chciał na razie zdradzać co to.
Z historii domyślamy się, że to jakaś nowa integracja z alarmem Satel, ale to tylko zgadywanki ;)
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
Zibi_007
Posts: 3985
Joined: Tue Oct 31, 2023 10:06 pm
Has thanked: 10 times
Been thanked: 31 times

Post

klew wrote: Sun Feb 15, 2026 1:49 pm Jak dla mnie ilość informacji jest wystarczająca. Po co komu więcej wiedzieć? Oczywiście może autor pyta nie o to, o co powinien i próbuje na około rozwiązać coś co ma prostsze rozwiązanie.

Duch już gdzieś indziej wspominał o tym projekcie. Nie robi go komercyjnie, ale też nie chciał na razie zdradzać co to.
Z historii domyślamy się, że to jakaś nowa integracja z alarmem Satel, ale to tylko zgadywanki ;)
Napisał przecież konkretnie co robi i jakie to będzie mieć możliwości.
Duch__ wrote: Wed Feb 11, 2026 12:01 pm 3 odsłona integracji z Satel Integra (wersja dowolna).

Obecnie możliwy jest odczyt 32 pierwszych wejść, stan dwóch stref (może będzie więcej), sterowanie z poziomu aplikacji Supla wyjściami w Satelu (definiowane w Supla). W realizacji powiadomienia push o uzbrojeniu, rozbrojeniu stref i alarmach z wejść. Działa odczyt za pomocą 32 kanałów GPM (czas od ostatniego naruszenia max 240 minut) i 32 kanałów binarnych. Wszystko to wykorzystujące pełną komunikację kodowaną AES192 lub nie kodowaną (wybór automatyczny przez esp32) pomiędzy Suplą a Satel. Umożliwi to powiadamianie PUSH i sterowanie starszymi wersjami ETHM bez PLUS-a.

Końcowa ilość możliwości będzie uwarunkowana ograniczeniami SD i samego esp32.
Image Wiesz, że Supla obsługuje Zigbee? Wstąp do Klubu Promila: https://forum.supla.org/viewtopic.php?t=18018
Image Szukasz nowego GG? Jest tutaj: https://forum.supla.org/viewtopic.php?t=18036
User avatar
klew
Posts: 13905
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Zibi_007 wrote: Sun Feb 15, 2026 1:53 pm
Napisał przecież konkretnie co robi i jakie to będzie mieć możliwości.
Urlop miałem i musiałem za szybko czytać wiadomości i gdzieś mi to umknęło :)
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
Duch__
Posts: 2199
Joined: Wed Aug 24, 2016 7:26 pm
Location: Opole
Been thanked: 6 times

Post

Tak, do tego projektu. Teraz robiłem tak że zestawiałem całe urządzenie z serwerem supla, następnie łączylem się z moim urządzeniem, odczytywałem nazwy kanałow i wpisywałem je do initial caption. Następnie usuwałem urządzenie z cloud by je ponownie zarejestrować z już odczytanymi nazwami kanałów.

Teraz chciałbym ten odczyt nazw wykonać przed rejestracją w cloud, dlatego potrzebuje móc odczytać z gui ssid i hasło do wifi by zestawić własne połączenie, wykonać swoje zadanie, rozłączyć się z wifi i pozwolić dalszą rolę przekazać softowi supli.
User avatar
malarz
Posts: 506
Joined: Wed Jan 27, 2021 4:04 pm
Been thanked: 2 times

Post

czyli chcesz coś takiego na początku setup():

Code: Select all

if (nazwa_urządzenia == NULL) {
	włącz_sieć();
	odczytaj_nazwy_z_urządzenia_i_zapisz_w_pamięci();
	restart();
}

dodaj_kanały_z_pamięci();
A może lepiej zrobić na to całe urządzenie klasę na bazie Supla::Element
jak są nazwy to w konstruktorze tworzyć kanały
jak nie ma nazw to w OnRegistered (albo onSaveState albo innym, może @klew podpowie optymalny) wczytać konfigurację i wymuszać restart
Próbuję przerobić pomysły na działające projekty w ArduinoIDE.
User avatar
Duch__
Posts: 2199
Joined: Wed Aug 24, 2016 7:26 pm
Location: Opole
Been thanked: 6 times

Post

Chyba doszedłem do tego.

tak testowo zrobiłem i działa zgodnie z oczekiwaniami:

Code: Select all


#define STATUS_LED_GPIO 2
#define BUTTON_CFG_RELAY_GPIO 9

#include <SuplaDevice.h>
#include <supla/network/esp_wifi.h>
#include <supla/device/status_led.h>
#include <supla/control/button.h>
#include <supla/storage/littlefs_config.h>
#include <supla/network/esp_web_server.h>
#include <supla/network/html/device_info.h>
#include <supla/network/html/protocol_parameters.h>
#include <supla/network/html/status_led_parameters.h>
#include <supla/network/html/wifi_parameters.h>
#include <supla/device/supla_ca_cert.h>
#include <supla/sensor/general_purpose_measurement.h>

Supla::ESPWifi wifi;
Supla::LittleFsConfig configSupla;

Supla::Device::StatusLed statusLed(STATUS_LED_GPIO, true); // inverted state
Supla::EspWebServer suplaServer;

Supla::Sensor::GeneralPurposeMeasurement *gpm = nullptr;

bool flaga_odczytano_dane = 0;


void setup() {


  Serial.begin(115200);

  delay(10000);

  // Buttons configuration
  auto buttonCfgRelay =
    new Supla::Control::Button(BUTTON_CFG_RELAY_GPIO, true, true);
  buttonCfgRelay->configureAsConfigButton(&SuplaDevice);

  // HTML www component
  new Supla::Html::DeviceInfo(&SuplaDevice);
  new Supla::Html::WifiParameters;
  new Supla::Html::ProtocolParameters;
  new Supla::Html::StatusLedParameters;

  // Channels configuration
  // Channel #0 General Purpose Measurement
  // GPM class by deafult works as "virtual channel" (it accepts any value
  // via setValue(double) method.
  gpm = new Supla::Sensor::GeneralPurposeMeasurement();

  // Default channel config values are initialized only once. They can be
  // modified later, but they won't change corresponding used configurable
  // parameters.
  // Below lines are optional, just remove them if you don't want to set
  // them.
  gpm->setDefaultValueDivider(0);  // in 0.001 steps, 0 is ignored
  gpm->setDefaultValueMultiplier(0);  // in 0.001 steps, 0 is ignored
  gpm->setDefaultValueAdded(0);  // in 0.001 steps
  gpm->setDefaultUnitBeforeValue("before");
  gpm->setDefaultUnitAfterValue("after");
  gpm->setDefaultValuePrecision(3);  // 0..4 - number of decimal places

  // Set some initial value of measurement
  gpm->setValue(3.1415);

  // configure defualt Supla CA certificate
  SuplaDevice.setSuplaCACert(suplaCACert);
  SuplaDevice.setSupla3rdPartyCACert(supla3rdCACert);
  SuplaDevice.begin();
}

void loop() {
  SuplaDevice.iterate();

  if(flaga_odczytano_dane == 0){
    if (WiFi.status() == WL_CONNECTED) {
      Serial.println("Mamy polaczenie z WIFI");
      delay(20000);  // Tutaj wykonuje swoje zadanie
      gpm->setInitialCaption("Kanal GPM 1234567890");
      flaga_odczytano_dane = 1;
    }
  }

  static uint32_t lastTime = 0;
  if (millis() - lastTime > 1000) {
    lastTime = millis();
    // set some new value on gpm:
    gpm->setValue(millis() / 1000.0);
  }
}
SuplaDevice.iterate() wykonuje swoje zadanie, które przerywam poprzez if (WiFi.status() == WL_CONNECTED) { i tam sobie podziałam swoim zadaniem.
User avatar
klew
Posts: 13905
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Zupełnie nie o to pytałeś;)
Tutaj urządzenie może się w Supli zarejestrować zanim ustawisz caption
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
vajera
Posts: 7285
Joined: Wed Oct 31, 2018 7:58 am
Location: Biedrusko
Has thanked: 289 times
Been thanked: 161 times

Post

Duch__ wrote: Sun Feb 15, 2026 8:07 am Cześć.

Szukam sugestii jak podejść do tematu. Po uruchomieniu procesora, ale przed rejestracją w cloud, musi mi on pobrać znaczną ilość nazw kanałów żeby je zarejestrować w initialCaption każdego kanału supla. Jak to rozwiązać?
To wygląda tak:

1. Urządzenie Supla rejestruje się na serwerze
2. Pole nazwy pozostaje puste aż do pierwszego użycia setInitialCaption .
3. Po aktualizacji tego pola nie ma już możliwości zmiany.
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
User avatar
Duch__
Posts: 2199
Joined: Wed Aug 24, 2016 7:26 pm
Location: Opole
Been thanked: 6 times

Post

Mam tego świadomość, że następna aktualizacja nazw wymaga usunięcia urządzenia z cloud i zarejestrowania na nowo.
User avatar
Duch__
Posts: 2199
Joined: Wed Aug 24, 2016 7:26 pm
Location: Opole
Been thanked: 6 times

Post

Odświeże temat.
Zmiana koncepcji.
Czy można odczytać za pomocą ESP nazwy kanałów, ale te ustawione ręcznie na serwerze? Chcę generować powiadomienia push bezpośrednio z procesora, dlatego potrzebne mi nazwy.

Return to “Pomysły i koncepcje”