全機種:スマートリモコンの学習キット「sLab-Remo2」【クラウド利用②-6編】

Google Home及び互換機ユーザーの方へ

Amazonタイムセール祭りなど

おはようございます!!

先日、こちら↓の記事を書かせていただきました。

本日はスマートリモコンの学習キット「sLab-Remo2」の【クラウド利用②-5編】です!ようやく動作確認まで辿り着いたのですが・・・

スマートリモコンの学習キット「sLab-Remo2」ですね!!

キット構成
ArduinoIDE ESP32と書込
スケッチ書込
ライブラリ等 実習①Lチカ
実習②照度センサ 実習③温湿度センサ 実習④人感センサ
実習⑤赤外線
リモコン受信
実習⑥赤外線
リモコン送信
実習⑦
超音波センサ
実習⑧赤外線
障害物センサ
Wifi利用①
Wifi無線接続
Wifi利用②
Webサーバ機能
Wifi利用③スマホ
でLEDを制御
データ利用①EE-
PROMデータ利用
データ利用②SPI
FFSによる
ファイル操作
データ利用③-1
スマホで家電操作1-1
データ利用③-2
スマホで家電操作1-2
データ利用③-3
スマホで家電操作1-3
データ利用③-4
スマホで家電操作1-4
クラウド利用①-1
人を検…メール送信1
クラウド利用①-2
人を検…メール送信2
クラウド利用①-3
人を検…メール送信3
クラウド利用①-4
人を検…メール送信4
クラウド利用①-5
人を検…メール送信5
クラウド利用②-1
プッシュ通知の基礎
クラウド利用②-2
Beebotte利用設定
クラウド利用②-3
電子工作と
プログラム確認
クラウド利用②-4
スケッチの作成と
開発環境の準備①
クラウド利用②-5
開発環境の準備②と
動作確認・・NG

前回開発環境の準備②動作確認まで行う予定だったのですが、残念ながらウンともスンとも言いませんでした。


「反応が無い。まるで屍のようだ・・・」ですね。

今回その続きです。なんとか原因を探らねば・・・

スマートリモコン「sLab-Remo2」(エスラボリモ2)【Scratch・Arduino対応】環境センサ・カメラ付《IoT電子工作・AI学習・プログラミング》

こちらです!


詳しい話は以前の記事↓へ!!

本日はスマートリモコンの学習キット「sLab-Remo2」の紹介と【じっくり見てみた編】です!

4,290円でこれだけ遊べたら安いものです。(・・・と奧さんに言われています)

ちなみに、本キットの心臓部ESP32-DevKitCですが、Amazonさん1,500円ぐらいで普通に買えますね。


Espressif社純正 ESP-WROOM-32D開発ボード ESP32-DevKitC-32D

壊してしまったら一大事!と思ってましたが・・・昼ごはん1回我慢すれば買えます(泣)

昼ご飯は1コイン以下ちゃうのん? 見栄はったらあかんよ!!

では、スタートします。

sLab-Remo2【クラウド利用編】

公式メニュークラウド利用に入ります!(こちら


これまでは自宅内での学習実験でしたが、ここからはネットに出ていくわけですね。

クラウド利用する電子工作について説明します。
クラウドを利用することで「メール通知」や「屋外から家電制御」、「AIスピーカ連携」など多くのことができるようになります。
仕組みについて以下に説明します。

5-1.人を検知してリモコン制御とメール送信 (IFTTT)
5-2.屋外からの通信(プッシュ通知)
5-3.AIスピーカ連携/屋外スマホ/GPS連携

今回も5-2です。最終回の予定でしたが・・・

5-2.屋外からの通信(プッシュ通知)

こちらですね。

IoT端末をクラウドに接続する通信プロトコルはMQTT、HTTP、WebSocket などいくつか利用されていますが、今回はMQTTを用いてクラウドに接続する電子工作を行います。
MQTTでクラウドに常時接続することで屋外からの通信を可能にします。
利用するクラウドについては無料で一定量まで利用できMQTT機能だけでなくHTTPでもアクセスできるREST-API機能を有している「Beebotte」を利用します。REST-API機能はHTTP通信で容易に連携できるため多くのシステムで用いられています。また、Beebotteは1日に50,000メッセージを無料で利用できますので、学習などの利用なら問題なく利用できます。構成イメージを以下に示します。

いきなり専門用語が山ほど出てきましたので、ゆっくり基礎を固めながら、前回は開発環境の準備の残り動作確認(※ ただし失敗)まで行いました。

今回は動作不良原因調査動作確認です。

動作不良原因調査

前回、コマンドラインからcurlコマンドを実行しても・・・

残念ながら反応がありませでした。MQTTの待ちのままです。
Beebotteも確認したのですが、

永続データなし・・・データが来てないってことでしょうか。

・・・その後、こちらこちらなどを読んでみたのですが、よく理解できません。
よく「インターネットで調べると書いてあります」と言われるのですが、書かれていることのレベルまで達しなければ全然理解できません。まるで英語で書いてあるようなものです。
それ以前に、たとえ目の前にあっても気づきません。これが辛いんです。

robo8080さんにも相談しながら設定内容を確認したのですが、どうしても原因が見つかりませんでした。

公式ページの解説を何度も読み返していたら、7/2に更新されていたことに気づきました。
問い合わせていた内容ですね。


「証明書は定期的に更新されます」・・・もしや!!・・・あっ!やっぱり!!

いつの間にか変わっていました。これが原因で動かなかった可能性があります。

エディターでconfig.hを書き換えて再度フォルダに送り、ArduinoIDEを立ち上げ直して読み込んでいることを確認しました。




そして書き込みですね。


はい、問題なく書き込めました。

動作確認・・・うごいた!!

上の状態から、リセットボタンを押すと・・・おお!!


シリアルモニターMQTT Connectedと表示されました!!
これはESP32がBeeBotteサーバーと繋がったということですね!!

続いて、コマンドラインからcurlコマンドを・・・えいっ!!


無事「true」と返ってきましたので、シリアルモニターを覗いてみると・・・

おお!!ちゃんと反応しています。
間違いなく、コマンドラインから打ち込んだコマンドがBeebotte経由でESP32に届いてるわけですね!!

今度はコマンドを「led_off」に変えてやってみます!!

はい、ちゃんとOFFで反応しています。バッチリですね!!・・・あれ?あれあれ??


肝心のLEDが反応していません。ONでもOFFでもです。

バグは続くよどこまでも・・・よし!OK!!

ここまできて甘く考えていたLEDが点かないとは!!ちゃんとプログラムのピン配置は変更したのに・・・
とりあえず、マルチメーター(電圧計)!!・・・と考えたのですが、先に回路図から確認してみることにしました。


はい!GPIO12ですね・・・あれ?思いっきり間違ってました!!

>プログラムで[GPIO25]となっているところを[GPIO12]に変えること!!

なぜかプログラムが15になっています!!
どこで間違えたのかわかりませんが、さっさと12に治しました。


これで先程の手順を・・・はい!OKです!!
ONもOFFもコマンドからの操作で動作しました!!

↑ この画像使うの何ヶ月ぶりなんでしょう(泣)

まとめ

この章を始めたのが2/4なので5ヶ月ですね。ようやく終わりました。


結局原因はCA証明書だったということになります。(※ 古いものを使ってしまった)

定期的に更新されるとのことですが、今回のESP32などの組み込み用マイコンなどでは(パソコンやスマホと違って)簡単に書き換えるわけにはいかないはず。
みなさん、どうされているんでしょうね?

もしくは、更新頻度がかなり長いのに「たまたま」引っかかってしまったのか・・・

次回スマホで家電操作です。
久しぶり過ぎて、今どの辺にいるかサッパリわかりません(泣)

以上です!!

でも、ホントに原因を見つけるのが大変でした。
今後、何度も何度も使っていけば、どこを見ればわかるのでしょう。もしくは、なんらかの方法で順番にチェックしていって見つけ出すのか・・・

(おわり)

Amazonセール他
人気ブログランキング

↓ この記事よかったよ!!という方はクリックお願いいたします。

人気ブログランキング

ブログ村

↓ この記事よかったよ!!という方はクリックお願いいたします。
ブログランキング・にほんブログ村へ
にほんブログ村

シェアする

  • このエントリーをはてなブックマークに追加

フォローする