Supla Button 2.0 i kolejne wersje...
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ć?
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ć.
Jest wersja 3.0, wszystko śmiga
viewtopic.php?f=24&t=5873
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)
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();
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
Wojtek
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();"wojtas567 pisze: ↑ndz sty 19, 2020 10:49 amNależy dodać jedną linijkę kodu i wersja menadżer płytek ESP musi być minimum 2.5.2
pod koniec szkicu:Kod: Zaznacz cały
client.setInsecure();
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" + ...
-
- 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.
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ę
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ę