Supla Button 2.0 i kolejne wersje...

Pawele
Posty: 176
Rejestracja: wt wrz 05, 2017 5:59 pm

Czy coś się zmieniło z instrukcji w 1 wątku? Próbuję i nie działa.. Zrobiłem wg. poradnika viewtopic.php?f=23&t=3559 płytka NodeMCU 1.0 - tak ustawiłem - wszystko się wrzuciło na płytkę (przynajmniej przy wgrywaniu błędów nie było) Ustawiłem Wifi (DHCP włączyłem), sceny również (chciałem przestestować więc 1 i 2 to te same linki). Świeci się czerwona na ESP, po użyciu buttonu coś niby mignie niebieska - ale scena się nie wykonuje. Gdzie może być przyczyna? Jak to sprawdzić?
szabel99
Posty: 60
Rejestracja: ndz sty 28, 2018 10:30 am

Kolego mi od dwóch dni przestały działać 2 szt. Supla Button, więc może w tym problem. Od samego początku wszystko działało wyśmienicie, a teraz przestało działać. Skoro 2 szt. przestały działać w tym samym momencie to wina pewnie leży gdzieś po stronie skryptów/serwera itd. Sam aktualnie nie wiem co mam zrobić żeby zaczęło działać.
szym3k
Posty: 268
Rejestracja: pn maja 15, 2017 10:32 am

Jest wersja 3.0, wszystko śmiga
viewtopic.php?f=24&t=5873
Pawele
Posty: 176
Rejestracja: wt wrz 05, 2017 5:59 pm

szym3k pisze: pt sty 17, 2020 2:12 pm Jest wersja 3.0, wszystko śmiga
viewtopic.php?f=24&t=5873
A jak to ugryźć w przypadku ESP 01? Tutaj wydaje się wszystko proste - 1 przycisk 2 funkcje. A tam jest już taka mnogość, że niezbyt to rozumiem.. Potrzebuję w zasadzie jedną akcje (kontaktron w skrzynce na listy)
Awatar użytkownika
wojtas567
Posty: 2209
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

szabel99 pisze: pt sty 17, 2020 7:29 am Kolego mi od dwóch dni przestały działać 2 szt. Supla Button
Należy dodać jedną linijkę kodu i wersja menadżer płytek ESP musi być minimum 2.5.2

Kod: Zaznacz cały

    client.setInsecure();
pod koniec szkicu:

Kod: Zaznacz cały

   ...
    WiFiClientSecure client;
    client.setInsecure();
    if (client.connect(ehost.c_str(), intport)) {
      client.println(String("GET ") + eurl.c_str() + " HTTP/1.1\r\n" +
      ...
Pozdrawiam
Wojtek
Pawele
Posty: 176
Rejestracja: wt wrz 05, 2017 5:59 pm

wojtas567 pisze: ndz sty 19, 2020 10:49 am
szabel99 pisze: pt sty 17, 2020 7:29 am Kolego mi od dwóch dni przestały działać 2 szt. Supla Button
Należy dodać jedną linijkę kodu i wersja menadżer płytek ESP musi być minimum 2.5.2

Kod: Zaznacz cały

    client.setInsecure();
pod koniec szkicu:

Kod: Zaznacz cały

   ...
    WiFiClientSecure client;
    client.setInsecure();
    if (client.connect(ehost.c_str(), intport)) {
      client.println(String("GET ") + eurl.c_str() + " HTTP/1.1\r\n" +
      ...
Gdzie dokładnie dodać "client.setInsecure();"? Dodałałem tuż pod #include bibliotek (przed też próbowałem). A ten dłuższy kod wpisałem na samym dole. I tam zwraca pod koniec właśnie jest błąd "'client' does not name a type" w linijce " client.setInsecure();"
szabel99
Posty: 60
Rejestracja: ndz sty 28, 2018 10:30 am

Podpowiedź Wojtka działa. WIELKIE dzięki :) Trzeba odszukać w kodzie to WiFiClientSecure client; i pod tym wkleić to client.setInsecure(); U mnie przetestowane i jest ok. Zabieram się za drugi przycisk :)
Awatar użytkownika
Duch__
Posty: 1779
Rejestracja: śr sie 24, 2016 7:26 pm
Lokalizacja: Opole

Zamiast odrazu isc w Button 3.0 :?:
Obrazek
szabel99
Posty: 60
Rejestracja: ndz sty 28, 2018 10:30 am

Myślałem o tym ale jak dla mnie wersja z jednym przyciskiem jest ok. Przy button v 3.0 musiałbym przerabiać instalację....o ile dobrze zrozumiałem Twój opis. Chwała Ci za wszystkie stworzone "buttony" :)
Pietr.as.ek
Posty: 9
Rejestracja: pt kwie 03, 2020 7:57 am

cześć walczę z buttonem 2.0 na esp8266-01 i nie mogę dojść wszystko wpisałem a niestety mi nie zmienia stanu. po zwarciu masy z rst zapala się niebieska dioda i na tym koniec.

Kod: Zaznacz cały

#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <DoubleResetDetector.h> //Bilioteka by Stephen Denne

// Number of seconds after reset during which a 
// subseqent reset will be considered a double reset.
#define DRD_TIMEOUT 5

// RTC Memory Address for the DoubleResetDetector to use
#define DRD_ADDRESS 0

DoubleResetDetector drd(DRD_TIMEOUT, DRD_ADDRESS);

//********************************************************PARAMETRY KONFIGURACYJNE****************************************************************

const char* ssid = "ww123";
const char* password = "haslo";
const char* WiFi_hostname = "Supla_BUTTON_V2";

byte Adres_z_DHCP = 0;   //1 = DHCP, 0 = Statyczne_IP
IPAddress staticIP(192,168,1,100);
IPAddress gateway(192,168,1,1);
IPAddress subnet(255,255,255,0);

const char* host = "supla.fracz.com";
String url_1 = "/api/scenes/execute/1c04****-****-****-****-****e0a7f2d"; //Adres PUBLICZNY SCENY 1
String Klucz_dostepu_1 = "Authorization: eyJ0eXAiOiJKV1Qi****************************************************5NWRkNzhjNy1iMzcwLTQzMjYtODMwYS05NTAyNjcwYz**************************************LmNvbSIsImlhdCI6MTU4NjczMDk4NSwibmJm****************************Q0MTA5ODV9.3da1n9cJv5MUPcQcV6cypao-VOyWczfZnYDYt4c-8x4";

String url_2 = "/api/scenes/execute/e79*****-****-****-****-****f1f6fdfc"; //Adres PUBLICZNY SCENY 2
String Klucz_dostepu_2 = "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.ey***************************************1lZGEwLTQyNDMtOThkMS0xMzc4MTQ0ZW*******************************************************************************************************************************************3NDQ0MTA4NjN9.itA3H-1mjLcT7tDkpYqqVw4eO4gemnpAaJbHS_BOB5E";
const int httpsPort = 443; //Port serwera

const unsigned Czas_max_timeout = 10000; //Czas TIMEOUT szukania WIFI w milisekundach = 10 sekund      

const byte debug = 1; //1 = Włączone debugowanie, 0 = Wyłączone

const char fingerprint[] PROGMEM = "de46ea535e09e4938a56f6948bd7b5a3040838fd"; //fingerprint certyfikatu serwera

//************************************************************************************************************************************************

byte supla_mode = 0;

void setup()
{
  if (debug == 1){
    Serial.begin(115200);
    Serial.println();
    Serial.println();
    Serial.println();
  }
  if (drd.detectDoubleReset()) {
    supla_mode = 2;
  } else {
    supla_mode = 1;
  }
  
  for (int i=0; i <= 1000; i++){
    delay(1);
    drd.loop();
    if (i == 500){
      WiFi.hostname(WiFi_hostname); 
      WiFi.begin(ssid, password);
      if (Adres_z_DHCP == 0){
        WiFi.config(staticIP, gateway, subnet);
      }
    }
  // Call the double reset detector loop method every so often,
  // so that it can recognise when the timeout expires.
  // You can also call drd.stop() when you wish to no longer
  // consider the next reset as a double reset.
  }
  drd.stop();
}

void loop()
{
  if (debug == 1){
    Serial.print("Supla mode = ");
    Serial.println(supla_mode);
  }
  
  for (unsigned timeout=0; timeout <= Czas_max_timeout; timeout++){
    if (WiFi.status() != WL_CONNECTED){
        delay(1);
    }    
    else
    {
      timeout = Czas_max_timeout;
      if (debug == 1){
        Serial.println("Polaczono z WIFI");
        Serial.print("MAC:");Serial.print(WiFi.macAddress()); 
        Serial.print("     IP:");Serial.print(WiFi.localIP());
        Serial.print("     M:");Serial.print(WiFi.subnetMask());
        Serial.print("     GW:");Serial.println(WiFi.gatewayIP());
      }
    }
  }
  if (WiFi.status() == WL_CONNECTED){
    WiFiClientSecure client;
    client.setInsecure();
  client.setFingerprint(fingerprint);
    if (client.connect(host, httpsPort)) {
      if (debug == 1){
        Serial.print("Poloczono z ");
        Serial.println(host);
      }
      if (supla_mode == 1){
        client.println(String("GET ") + url_1 + " HTTP/1.1\r\n" +
        "Host: " + host + "\r\n" +
        "User-Agent: SuplaButtonESP8266\r\n" +
        Klucz_dostepu_1 + "\r\n" +
        "Connection: close\r\n\r\n");
      }
      if (supla_mode == 2){
        client.println(String("GET ") + url_2 + " HTTP/1.1\r\n" +
        "Host: " + host + "\r\n" +
        "User-Agent: SuplaButtonESP8266\r\n" +
        Klucz_dostepu_2 + "\r\n" +
        "Connection: close\r\n\r\n");
      }
    }
    if (debug == 1){
      Serial.println("Koniec polaczenia");
    }
  }
  WiFi.disconnect();
  if (debug == 1){
    Serial.print("Dobranoc");
  }
  ESP.deepSleep(0);
}


przeczytałem od początku temat o buttonie i nie wiem co mam nie tak

jeszcze zależało by mi aby dodać możliwość wyłączenia go w aplikacji supli.
ogólnie chcę go umieścić w czujce alarmowej więc zasilanie będzie .
dobra ale to na przyszłość fajnie by było jakby to najpierw działało.

proszę o pomoc
z góry Dziękuję
ODPOWIEDZ

Wróć do „Projekty użytkowników”