質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.50%

  • Arduino

    675questions

    Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

  • Milkcocoa

    110questions

    Milkcocoaとは、バックエンド機能を提供するBaaSサービスの一つです。サーバを準備することなく、フロントエンドのコーディングだけでデータの保存・更新・取得、またPub/Sub通信行うことが可能です。

Milkcocoaの ESP8266 SDKでpushメソッドが機能しない(コンパイル済)

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 351

hidelovers

score 2

 前提・実現したいこと

初めて質問させて頂きます。
ESP-WROOM-02(ESP8266)のアナログ入力値の値をMilkcocoaのDataStoreに送りたい。
Arduinoは使わずESP-WROOM-02単体での運用です。

Milkcocoaの下記公式ページから ESP8266 SDK(ESP8266に直接プログラムを書き込む場合のSDK)
のスケッチ例を試していますが、コンパイル、ESP-WROOM-02に書込みはできたのですが、
Milkcocoaのデータストアにデータの送信?がされません。
https://mlkcca.com/document/start-arduino.html

 発生している問題・エラーメッセージ

エラーはないのですが、 milkcocoa.push(MILKCOCOA_DATASTORE, &elem);
が動いて無いように感じます。

 該当のソースコード

#include <ESP8266WiFi.h>
#include <Milkcocoa.h>

/************************* WiFi Access Point *********************************/

#define WLAN_SSID       "********"
#define WLAN_PASS       "****************"


/************************* Your Milkcocoa Setup *********************************/********

#define MILKCOCOA_APP_ID      "****************"
#define MILKCOCOA_DATASTORE   "esp8266/tout"

/************* Milkcocoa Setup (you don't need to change this!) ******************/

#define MILKCOCOA_SERVERPORT  1883

/************ Global State (you don't need to change this!) ******************/

// Create an ESP8266 WiFiClient class to connect to the MQTT server.
WiFiClient client;

const char MQTT_SERVER[] PROGMEM    = MILKCOCOA_APP_ID ".mlkcca.com";
const char MQTT_CLIENTID[] PROGMEM  = __TIME__ MILKCOCOA_APP_ID;

Milkcocoa milkcocoa = Milkcocoa(&client, MQTT_SERVER, MILKCOCOA_SERVERPORT, MILKCOCOA_APP_ID, MQTT_CLIENTID);

void onpush(DataElement *elem) {
  Serial.println("onpush");
};

void onsend(DataElement *elem1) {    //自分で追加
  Serial.println("onsend");
};

void setupWiFi() {
  Serial.println(); Serial.println();
  Serial.print("Connecting to ");
  Serial.println(WLAN_SSID);

  WiFi.begin(WLAN_SSID, WLAN_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println();

  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}

void setup() {
  Serial.begin(115200);
  delay(10);
  Serial.println(F("Milkcocoa SDK demo"));

  setupWiFi();

  milkcocoa.on(MILKCOCOA_DATASTORE, "push", onpush) ;
  milkcocoa.on(MILKCOCOA_DATASTORE, "send", onsend) ;  //自分で追加
};

void loop() {
  milkcocoa.loop();
  int val = analogRead(A0);
  Serial.println(String(val));

  DataElement elem = DataElement();
  DataElement elem1 = DataElement();  //自分で追加
  elem.setValue("v", val);
  elem1.setValue("age",40);   //自分で追加

  milkcocoa.push(MILKCOCOA_DATASTORE, &elem);
 delay(7000)
  milkcocoa.send(MILKCOCOA_DATASTORE, &elem1);  //自分で追加

  Serial.println("loop");
  delay(7000);
};

 試したこと

スケッチ例にないsendメソッドを追加して試したところ、
sendメソッドのonメソッドは動いているのですが、pushメソッドのonメソッドが動いていません。
MilkcocoaのAPP_IDを誤ったものにしたらエラーがモニタできたので、
Milkcocoa迄は繋がっていると考えています。

シリアルモニタ結果が以下になります。
.......
WiFi connected
IP address: 
192.168.10.4
Connecting to MQTT... MQTT Connected!
282
loop
283
loop
onsend
282
loop
onsend
303

またスケッチ上で
milkcocoa.push(MILKCOCOA_DATASTORE, &elem);のpushは黒字のままなのですが
milkcocoa.send(MILKCOCOA_DATASTORE, &elem1);のsend部は橙色になってます。

どうかよろしくお願いします。

 補足情報(FW/ツールのバージョンなど)

Arduino IDE 1.8.6

ここにより詳細な情報を記載してください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • y_waiwai

    2018/09/02 20:39

    書き込むことができないのでしょうか?それとも、単に動かないってだけでしょうか?どっちなんでしょう

    キャンセル

  • hidelovers

    2018/09/02 22:53

    依頼ありがとうございます。 スケッチ例コンパイル書込みはできたのですが、実行時に目的のメソッドが動いて無いのではないという質問です。

    キャンセル

まだ回答がついていません

同じタグがついた質問を見る

  • Arduino

    675questions

    Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

  • Milkcocoa

    110questions

    Milkcocoaとは、バックエンド機能を提供するBaaSサービスの一つです。サーバを準備することなく、フロントエンドのコーディングだけでデータの保存・更新・取得、またPub/Sub通信行うことが可能です。