اطلاعیه

Collapse
No announcement yet.

وارد خواب عمیق نشدن در esp8266 عدم ارسال اطلاعات

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    وارد خواب عمیق نشدن در esp8266 عدم ارسال اطلاعات

    با بردآردینو این برنامه رو روی ماژول پروگرام کردم در حالت عادی برنامه با بروکر ارتباط برقرار میکنه و اطلاعات ارسال و دریافت میشه اما همین که از خواب عمیق استفاده می کنم اطلاعات رو توی سریال مانیتور نشون میده اما به سرور بروکر ارسال نمیشه!!!؟؟
    #include <ESP8266WiFi.h>
    #include <PubSubClient.h>
    #define SensorPin A0
    const int bluePin = D5; // ~D5
    char data [3];
    const char* ssid = "ya_Zahra";
    const char* password = "M4AV27CN";


    const char* mqtt_server = "192.168.1.103";


    WiFiClient espClient12;
    PubSubClient client(espClient12);




    void setup_wifi() {
    delay(10);
    // We start by connecting to a WiFi network
    Serial.println();
    Serial.print("Connecting to ");
    Serial.println(ssid);
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
    }
    Serial.println("");
    Serial.print("WiFi connected - ESP IP address: ");
    Serial.println(WiFi.localIP());
    }




    void callback(String topic, byte* message, unsigned int length) {
    Serial.print("Message arrived on topic: ");
    Serial.print(topic);
    Serial.print(". Message: ");
    String messagein;

    for (int i = 0; i < length; i++) {
    Serial.print((char)message[i]);
    messagein += (char)message[i];
    }


    if(topic=="Garden/pump"){
    if (messagein == "ON"){
    Serial.println("roshan");
    analogWrite(bluePin, 1000);
    }
    else{
    Serial.println("khamush");
    analogWrite(bluePin,0);
    }

    }
    }


    void reconnect() {
    while (!client.connected()) {
    Serial.print("Attempting MQTT connection...");

    /* */
    // String clientId = "ESP8266Client-";
    // clientId += String(random(0xffff), HEX);
    // Attempt to connect
    // if (client.connect(clientId.c_str())) {
    if (client.connect("ESP_Amirhafez")) {


    Serial.println("connected");
    client.subscribe("room/lamp");
    client.subscribe("Garden/pump");
    send_Data();
    } else {
    Serial.print("failed, rc=");
    Serial.print(client.state());
    Serial.println(" try again in 5 seconds");
    // Wait 5 seconds before retrying
    delay(5000);
    }
    }
    }
    void send_Data(){
    float moisture_percentage;
    moisture_percentage = ( 100.00 - ( (analogRead (SensorPin)/1023.00) * 100.00 ) );
    Serial.println(" vared send_Data shodi...!");
    Serial.println (moisture_percentage);
    sprintf(data,"%f",moisture_percentage);
    client.publish("room/lamp",data,true);
    delay(5000);
    }


    void setup() {
    pinMode(bluePin, OUTPUT);
    Serial.begin(115200);
    setup_wifi();
    client.setServer(mqtt_server, 1883);
    reconnect();
    send_Data();
    client.setCallback(callback);
    ESP.deepSleep(1*30e6);
    }


    void loop() {
    Serial.println(" vared loop shodi...!");
    if (!client.connected()) {
    reconnect();
    }
    if(!client.loop())
    client.connect("ESP_Amirhafez");
    //send_Data();
    // dtostrf(h,6,2,hh);
    // char tt [8];
    // dtostrf(t,6,2,tt);
    //client.publish("room/lamp",hh);
    // client.publish("room/lamp",hh);
    // client.publish("device/alh",hh);



    //delay(1000);
    }
لطفا صبر کنید...
X