###Arduino M0ProとESP-WROOM-02を用いてmilkcocoaと接続できません
Arduino M0ProとESP-WROOM-02をこちらにあるように接続し、以下のプログラムを実行すると、"Join AP success"やIPアドレスや"milkcocoa on sucess"等が出力されるのですが、そのあとに
Connecting to MQTT... Connection failed -1 Retrying MQTT connection in 5 seconds... Connection failed -1
と表示され、上手くいきません。
解決案がありましたら教えていただければ幸いです。
###該当のソースコード
#include "ESP8266.h" #include "Milkcocoa.h" #include "Client_ESP8266.h" /************************* WiFi Access Point *********************************/ #define WLAN_SSID "ここにid入力" #define WLAN_PASS "ここにpass入力" /************************* Your Milkcocoa Setup *********************************/ #define MILKCOCOA_APP_ID "ここにアプリid入力" #define MILKCOCOA_DATASTORE "esp8266" /************* Milkcocoa Setup (you don't need to change this!) ******************/ #define MILKCOCOA_SERVERPORT 1883 /************ Global State (you don't need to change this!) ******************/ // Create an ESP8266Client class to connect to the MQTT server. ESP8266Client wifi; const char MQTT_SERVER[] PROGMEM = MILKCOCOA_APP_ID ".mlkcca.com"; const char MQTT_CLIENTID[] PROGMEM = __TIME__ MILKCOCOA_APP_ID; Milkcocoa milkcocoa = Milkcocoa(&wifi, MQTT_SERVER, MILKCOCOA_SERVERPORT, MILKCOCOA_APP_ID, MQTT_CLIENTID); int cnt; void setup() { Serial.begin(115200); delay(10); Serial.println(F("Milkcocoa SDK demo")); // Connect to WiFi access point. Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(WLAN_SSID); wifi.begin(Serial5, 115200); Serial.print("FW Version:"); Serial.println(wifi.getVersion().c_str()); if (wifi.setOprToStation()) { Serial.print("to station ok\r\n"); } else { Serial.print("to station err\r\n"); } if (wifi.joinAP(WLAN_SSID, WLAN_PASS)) { Serial.print("Join AP success\r\n"); Serial.print("IP: "); Serial.println(wifi.getLocalIP().c_str()); } else { Serial.print("Join AP failure\r\n"); } if (wifi.disableMUX()) { Serial.print("single ok\r\n"); } else { Serial.print("single err\r\n"); } if(milkcocoa.on(MILKCOCOA_DATASTORE, "push", onpush)){ Serial.println("milkcocoa on sucesss"); } else { Serial.println("milkcocoa on failure"); } cnt = 0; }; void loop() { milkcocoa.loop(); DataElement elem = DataElement(); elem.setValue("v", cnt++); milkcocoa.push(MILKCOCOA_DATASTORE, &elem); delay(7000); }; void onpush(DataElement *pelem) { Serial.println("onpush"); Serial.println(pelem->getInt("v")); };
###試したこと
・Arduino version 1.8.0/1.8.2/1.7.9/1.7.8で試みましたが出力に変化はありませんでした。
・https://github.com/milk-cocoa/Milkcocoa_Arduino_SDK
にあるようにver1.7.8の際は修正を行っていました。
・https://github.com/exshonda/ESP8266_Arduino_AT
にあるようにバッファサイズの拡張も行いました。
・出力は以下です。
Milkcocoa SDK demo Connecting to "SSID名" FW Version:AT version:1.3.0.0(Jul 14 2016 18:54:01) SDK version:2.0.0(5a875ba) compile time:Aug 15 2016 13:58:59 to station ok Join AP success IP: +CIFSR:STAIP,"IP名" +CIFSR:STAMAC,"~~" single ok milkcocoa on sucesss Connecting to MQTT... Connection failed -1 Retrying MQTT connection in 5 seconds... -1
###補足情報
上記のソースはMilkcocoa_Arduino_SDKのmilkcocoa_esp8266というサンプルです。
PCのOSはWindows10です。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。