#Arduinoの準備
スイッチサイエンスさんで販売されているESPr Develper(ピンソケット実装済み)を使いました。
このESPr Developer(に載っているESP-WROOM-02)をArduino IDEで開発できるようにします。
手順はスイッチサイエンスさんにて公開されています。
ESP-WROOM-02開発ボードをArduino IDEで開発する方法
#Firebaseの準備
FirebaseのRealtime Databaseを用意します。
手順はネットにたくさん公開されているので、ここでは省略します。
データベースのルールは以下のように誰でも読み書きできるようにしておきます。
{
"rules": {
".read": true,
".write": true
}
}
#FirebaseArduino
ArduinoからFirebaseのAPIを叩くためのFirebaseArduinoというライブラリが公開されています。これをArduinoIDEに取り込みます。
まずzipファイルでダウンロードします。
次にArduinoIDEから「スケッチ-ライブラリをインクルード-.zip形式のライブラリをインストール...」と選択して、さきほどダウンロードしたzipファイルを選択します。
ライブラリに付属するサンプルをベースに作成します。
「ファイル-スケッチの例-FirebaseArduino-FirebaseDEMO_ESP8266」と選択してサンプルを開きます。
WIFI_SSIDとWIFI_PASSWORDは自身の環境ものに書き換えます。
FIREBASE_HOSTはFirebaseのRealtimeDatabaseのところで表示されている
https://XXXXX.firebaseio.com/
の「XXXX.firebaseio.com」に置き換えます。
FIREBASE_AUTHは今回は使わないのでテキトーでいいです。
以下の部分を書き換えます。
//Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.begin(FIREBASE_HOST);
Firebase.beginのパラメータからFIREBASE_AUTHを外します。
これで書き込もうとするとFirebaseArduinoのライブラリ内でコンパイルエラーになりました。
とりあえず対処療法としてコンパイルエラーにならないように直接編集しておきます。
Config kDefaultConfig = {
"", // firebase host
"", // firebase auth
"/fthing", // path in firebase
"", // wifi ssid
"", // wifi key
0.1, // analog activation threshold
0,//D1, // digital in //←とりあえず0に
BUILTIN_LED, // digital out
A0, // analog in
0,//D1, // analog out // ←とりあえず0に
0,//D0, // config mode button // ←とりあえず0に
};
D1、D0が見つからない、というエラーなので上記ではとりあえず適当な数字で置き換えています。
さて、これでArduinoに書き込んでからFirebaseのRealtimeDatabaseを見ていると、刻々と値が更新されているのが分かると思います。