Strona 3 z 3

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: śr sie 28, 2019 1:45 pm
autor: shimano73

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: śr sie 28, 2019 2:36 pm
autor: piomar2
Mam wrażenie (po zdjęciu), że wybierasz złą płytkę w arduino (masz błąd kompilacji dla płytki Generic ESP8266). Skoro jest to ESP8266 Nodemcu v3 to wybierz płytkę: "NodeMCU 1.0 (ESP - 12E Module".

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: śr sie 28, 2019 3:13 pm
autor: piomar2
Sprawdziłem na ESP8266 Nodemcu v3 też działa dobrze i oczywiście się kompiluje.

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: czw sie 29, 2019 9:38 am
autor: marsoonn
Panowie!
Wszystko działa dzięki wielkie !!!

Tylko pytanko teraz ma ktoś pomysł jak rozbudować to o inne gniazdka?

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: czw sie 29, 2019 10:10 am
autor: piomar2
Na pilocie masz 2 przyciski (włącz, wył) ?. Ten program wysłany przeze mnie obsługuje tylko jeden przycisk (ten program wygrałeś?). Był to wstępny program żebyś uruchomił cokolwiek. Mogę ci dosłać program, który obsługuje dwa przyciski włącz i wyłącz i wtedy będzie ok. Mało piszesz i trudno domyślić się co i ciebie się dzieje. Oczywiście, że jest możliwość sterowania następnymi gniazdkami ale to dalszą rozbudowa programu i...powoli

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: czw sie 29, 2019 10:17 am
autor: marsoonn
Jeśli możesz prześlij następny program w którym działają dwa przyciski,
Ten pierwszy rozbudowałem samemu i działają 2 przyciski ale chciałem zobaczyć czy podobnie to zrobiliśmy;

Masz może program rozbudowany aby obsługiwał 2 gniazdka tj. 4 przyciski ?

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: czw sie 29, 2019 10:20 am
autor: piomar2
Za 1,5 godz będę w domu to podeślę 2 przyciski

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: czw sie 29, 2019 11:53 am
autor: piomar2
To pochwal się jak to napisałeś dla 2 przycisków...
I co działa ci to na Nodemcu V3 i kompilujesz w arduino 1.8.3?
Jeżeli tak to trochę zmieniłbym piny ale jak działa to ok.
To mój :

Kod: Zaznacz cały

//ESP8266
// 0 - GPIO 0
// 1 - TX nadajnik 433
// 2 - GPIO 2
// 3 - RX
 
#include <srpc.h>
#include <log.h>
#include <eh.h>
#include <proto.h>
#include <IEEE754tools.h>
// We define our own ethernet layer
#define SUPLADEVICE_CPP
#include <SuplaDevice.h>
#include <lck.h>

#include <WiFiClient.h>
#include <ESP8266WiFiType.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiScan.h>
#include <ESP8266WiFiMulti.h>
#include <WiFiServer.h>
#include <ESP8266WiFiGeneric.h>
#include <WiFiClientSecure.h>
#include <ESP8266WiFiAP.h>
#include <ESP8266WiFiSTA.h>
#include <WiFiUdp.h>

#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch(); 

WiFiClient client;

//tu wpisać parametry swojego wifi
const char* ssid = "xxxx";
const char* password = "xxxx"; 
byte a=0;

//tu wpisać kody swojego pilota
int b=xxxxxxx;//kod pilota włączanie
int c=xxxxxxx;//kod pilota wyłączanie

void setup() {
   
  mySwitch.enableTransmit(1);//nadajnik na TX

  // Replace the falowing GUID
  char GUID[SUPLA_GUID_SIZE] = {0xCC,0x2F,0x0E,0xF8,0x2E,0xFC,0xB7,0x1D,0xB0,0xCF,0x8D,0xD8,0x9D,0xA7,0xBD,0x5E};
  // with GUID that you can retrieve from https://www.supla.org/arduino/get-guid

  // Ethernet MAC address
  uint8_t mac[6] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

 SuplaDevice.addRelayButton(3, 2, INPUT_TYPE_BTN_MONOSTABLE, 0, SUPLA_BIT_RELAYFUNC_LIGHTSWITCH);
 
//tu wpisać swoje parametry supli 
  SuplaDevice.setName("Gniazdo 433");
  SuplaDevice.begin(GUID,              // Global Unique Identifier 
                    mac,               // Ethernet MAC address
                    "xxx",  // SUPLA server address
                    xxx,                 // Location ID 
                    "xxx");               // Location Password

}

void loop() {
  SuplaDevice.iterate();

  if (digitalRead(3) == HIGH && a==0){
    mySwitch.send(b,24);//włączanie
      a=1;
      delay(150); 
   } 
  if (digitalRead(3) == LOW && a==1){
    mySwitch.send(c,24);//wyłączanie
      a=0;
      delay(150);
   }
   }


// Supla.org ethernet layer
    int supla_arduino_tcp_read(void *buf, int count) {
        _supla_int_t size = client.available();
       
        if ( size > 0 ) {
            if ( size > count ) size = count;
            return client.read((uint8_t *)buf, size);
        };
    
        return -1;
    };
    
    int supla_arduino_tcp_write(void *buf, int count) {
        return client.write((const uint8_t *)buf, count);
    };
    
    bool supla_arduino_svr_connect(const char *server, int port) {
          return client.connect(server, 2015);
    }
    
    bool supla_arduino_svr_connected(void) {
          return client.connected();
    }
    
    void supla_arduino_svr_disconnect(void) {
         client.stop();
    }
    
    void supla_arduino_eth_setup(uint8_t mac[6], IPAddress *ip) {

       // Serial.println("WiFi init");
        WiFi.begin(ssid, password);

        while (WiFi.status() != WL_CONNECTED) {
            delay(500);
        //    Serial.print(".");
        }

        Serial.print("\nlocalIP: ");
        Serial.println(WiFi.localIP());
        Serial.print("subnetMask: ");
        Serial.println(WiFi.subnetMask());
        Serial.print("gatewayIP: ");
        Serial.println(WiFi.gatewayIP());
    }

SuplaDeviceCallbacks supla_arduino_get_callbacks(void) {
          SuplaDeviceCallbacks cb;
          
          cb.tcp_read = &supla_arduino_tcp_read;
          cb.tcp_write = &supla_arduino_tcp_write;
          cb.eth_setup = &supla_arduino_eth_setup;
          cb.svr_connected = &supla_arduino_svr_connected;
          cb.svr_connect = &supla_arduino_svr_connect;
          cb.svr_disconnect = &supla_arduino_svr_disconnect;
          cb.get_temperature = NULL;
          cb.get_temperature_and_humidity = NULL;
          cb.get_rgbw_value = NULL;
          cb.set_rgbw_value = NULL;
          
          return cb;
}

Re: Supla + ESP8266 + Adapter Gniazdka Radiowego

: ndz wrz 01, 2019 12:02 pm
autor: piomar2
A to wersja sterująca dwoma gniazdami. Sprawdzone na gniazdach 433 Kanlux