<noscript id="mmkmi"><source id="mmkmi"></source></noscript>
  • <noscript id="mmkmi"><kbd id="mmkmi"></kbd></noscript>
  • <table id="mmkmi"><source id="mmkmi"></source></table>
  • MWELCOME TO BIGIOT很穩,但是設備一直顯示不在線

    作者:MarkBlain | 更新時間:2017-12-25 | 瀏覽量:2119

    ESP8266遠程控制LED,按照例程操作后,串口一直正常顯示{"M":"WELCOME TO BIGIOT"},但是網頁端“智能設備”一直顯示“不在線”。很蛋疼。求助啊!!


    評論:共10條

    貝殼物聯 評論于:2017-12-25 07:56:18
    顯示{"M":"WELCOME TO BIGIOT"}說明與服務器建立了聯系,但是并沒發送正確的登錄信息,告訴服務器是誰連接上來了。
    MarkBlain 回復于:2017-12-25 09:34:27
    回復 @貝殼物聯:
    我用的是《遠程控制通訊——基于Arduino + ESP8266控制LED燈并返回控制結果》的源碼,希望能看一下,感激不敬!!!!
    /*
    
    *注意 :Arduino IDE版本請使用1.6.5-1.8.2
    */

    #include <aJSON.h>
    //============= 此處必須修該============
    String DEVICEID="1"; // 這里已經改成服務器端ID ========
    String APIKEY="493822592"; // 這里也改成服務器端密碼========
    //=======================================
    const int LED = 4;// LED正極連接針腳4
    unsigned long lastCheckInTime = 0; //記錄上次報到時間
    const unsigned long postingInterval = 40000; // 每隔40秒向服務器報到一次
    String inputString = "";
    boolean stringComplete = false;
    boolean CONNECT = true;
    char* parseJson(char *jsonString);
    void setup() {
    pinMode(LED, OUTPUT);
    Serial.begin(115200);
    delay(5000);
    }
    void loop() {
    if(millis() - lastCheckInTime > postingInterval || lastCheckInTime==0) {
    checkIn();
    }
    serialEvent();
    if (stringComplete) {
    inputString.trim();
    //Serial.println(inputString);
    if(inputString=="CLOSED"){
    Serial.println("connect closed!");
    CONNECT=false;
    }else{
    int len = inputString.length()+1;
    if(inputString.startsWith("{") && inputString.endsWith("}")){
    char jsonString[len];
    inputString.toCharArray(jsonString,len);
    aJsonObject *msg = aJson.parse(jsonString);
    processMessage(msg);
    aJson.deleteItem(msg);
    }
    }
    // clear the string:
    inputString = "";
    stringComplete = false;
    }
    }
    void checkIn() {
    if (!CONNECT) {
    Serial.print("+++");
    delay(500);
    Serial.print("\r\n");
    delay(1000);
    Serial.print("AT+RST\r\n");
    delay(6000);
    CONNECT=true;
    lastCheckInTime=0;
    }
    else{
    Serial.print("{\"M\":\"checkin\",\"ID\":\"");
    Serial.print(DEVICEID);
    Serial.print("\",\"K\":\"");
    Serial.print(APIKEY);
    Serial.print("\"}\r\n");
    lastCheckInTime = millis();
    }
    }
    void processMessage(aJsonObject *msg){
    aJsonObject* method = aJson.getObjectItem(msg, "M");
    aJsonObject* content = aJson.getObjectItem(msg, "C");
    aJsonObject* client_id = aJson.getObjectItem(msg, "ID");
    //char* st = aJson.print(msg);
    if (!method) {
    return;
    }
    //Serial.println(st);
    //free(st);
    String M=method->valuestring;
    String C=content->valuestring;
    String F_C_ID=client_id->valuestring;
    if(M=="say"){
    if(C=="play"){
    digitalWrite(LED, HIGH);
    sayToClient(F_C_ID,"LED on!");
    }
    if(C=="stop"){
    digitalWrite(LED, LOW);
    sayToClient(F_C_ID,"LED off!");
    }
    }
    }
    void sayToClient(String client_id, String content){
    Serial.print("{\"M\":\"say\",\"ID\":\"");
    Serial.print(client_id);
    Serial.print("\",\"C\":\"");
    Serial.print(content);
    Serial.print("\"}\r\n");
    lastCheckInTime = millis();
    }
    void serialEvent() {
    while (Serial.available()) {
    char inChar = (char)Serial.read();
    inputString += inChar;
    if (inChar == '\n') {
    stringComplete = true;
    }
    }
    }
    貝殼物聯 回復于:2017-12-25 11:12:22
    回復 @MarkBlain:示例代碼看不出問題來
    MarkBlain 回復于:2017-12-25 14:39:33
    回復 @貝殼物聯:能否告知一下測試方法或技術文檔,謝謝!
    hzc1111 評論于:2018-02-24 01:56:01
    同樣出現此問題+1
    MarkBlain 回復于:2018-02-26 09:05:58
    回復 @hzc1111:我調通了。你將心跳包延時改為2000.同時注意ESP8266干電池3v(兩節干電池)供電
    hzc1111 回復于:2018-02-27 05:15:34
    回復 @MarkBlain:我的其實也沒問題,原來是我把設備ID填錯了笑哭了 笑哭
    shannon 評論于:2018-02-24 22:22:27
    同問+1
    ericsma 評論于:2018-03-16 17:40:10
    刷個分?
    13682710810 評論于:2020-03-12 21:45:27
    很玄學,試了很久突然就好了。官網代碼改了一些
    返回頂部
    <noscript id="mmkmi"><source id="mmkmi"></source></noscript>
  • <noscript id="mmkmi"><kbd id="mmkmi"></kbd></noscript>
  • <table id="mmkmi"><source id="mmkmi"></source></table>
  • 三上悠亚在线观看