今回は土日でやっつけている範囲がボチボチ多いので…ブログもかなり細切れです。
ということで、買い物準備は終わったので、環境準備です。
買い物が終わるとね・・・ちょっと寂しいですが、ここからが上り坂!
まずは・・・
Arduino - Donate :ここからArduino Softwareを入手して・・・(私は1.8.5)
esp_dev_arduino_ide – スイッチサイエンス でESP8266対応して・・・
で、ここでなのですが、ESP8266 Community のバージョンが2.4.1が出ているんですが、コンパイルエラーが出るので、2.4.0-rc2を私は使いました。
で、とりあえず、この段階で「Lチカ」をやっておきましょう。
とはいってもですね、
上記の「動作確認用簡易サンプルスケッチ」をやればおkです。
サンプルスケッチに出てくる
>int LED = 4;
>int reed_sw = 5;
ですが、I/Oのピン番号を指しています。
で、Door Sensorは出来合いモノです。埋め込まれたLEDと最初からついているリードスイッチはすでにピンを消費しています。
なので、色々検索すると「ESP8266」や「ESP-WROOM-02」というのを使った例がでてくるのですが、それらともちょっと違う実装済みな部分があることに注意です。
コピペでやってみた系の方々でハマる最初のポイントになりますので・・・。
読み替え技術を備えるチャンスでもありますw
ということで、上記のintパラメータを見ながら
>pinMode(LED,OUTPUT);
これはI/OのpinモードをOUTPUT(出力)にセットしてます。LEDを光らせたいのでOUTPUTです。LEDは4番ピン配置なので、4番ピンをアウトプットに設定の意ですね。
>digitalRead(reed_sw)
これは、デジタルモードでリード(読み出し)するってことで、I/Oの5番の状態を0か1かを知りたいという命令ですね。
>digitalWrite(LED,HIGH);
>digitalWrite(LED,LOW);
これは、HIGHがオンでLOWがオフで、I/Oの4番ポートにデジタル的出力をかますコマンドです。ここが皆さん大好きなLチカの部分になってきます。
今回のESP Door Sensorを使う場合は、他のプログラムのコピペをやる際でも、読み替えが必要な部分となるのでお気を付けください。
これわすれちゃうと、LEDが光らないとか言い出しますからね。
さらに実用サンプルスケッチも入手できますが、このサンプルではAzure IoT Hubと仲良くできません。
>ESP.deepSleep(0, WAKE_RF_DEFAULT);
使いたいのはこれぐらいですかね。
大まかな流れは同じなのですが、HTTPでアクセスする部分が想定と違うのですが、この実用サンプルをベースにするよりはAzure IoT Hubをやられた方のサンプルスケッチをベースにした方が今回はラクチンでしたので、抽出するポイントだけ書きました。
さて、本丸?ですが・・・
こちらの記事で、私が伝えたいことはほぼ完ぺきですw
こちらの記事の「デバイスの設定」の所に「AzureIoTHubライブラリー」てのがありますので、記事通りにやっていただければ・・・(汗)
Azureの部分の説明もしっかりされているので出る幕はないんですけどね・・・。
このライブラリーがあるお陰で、私はだいぶ想定よりも楽出来ました♪
環境準備といいながら、この記事でコンプリートなんだけどな・・・。
どこをアレンジしたかは次回に。