![見出し画像](https://assets.st-note.com/production/uploads/images/108112322/rectangle_large_type_2_153ef00d8f3e9a7b0a4149d321a4f085.png?width=1200)
54. ESP32 を介して、ネットワーク接続無しの小規模デバイスを Azure IoT Hub に接続する ~ その準備
はじめに
前回までは、ESP32 を Azure IoT Hub に接続する方法を試しました。今回から、ESP32 とネットワーク接続機能無しの小規模デバイスを、シリアル通信を介して接続し、小規模デバイスと Azure IoT Hub を間接的に接続する構成を試していく事にします。この構成は、実際の IoT ソリューションでありがちな構成でしょう。
さて、ネットワーク接続機能無しの小規模デバイスとして、Arduino Uno を使おうと…思ったら、2023/6 時点の小売価格が、3000円超と驚くべき高価格だった(昔は500円ぐらいじゃなかったか?)ので、Arduinoご回帰で、リーズナブルな値段で売り続けてくれている Seeeduino 4.2 を使う事にしました。
目指す構成
折角なので、昔買っておいた手元にある Grove Sensor を接続して実際のセンサー情報を取得することにします。
![](https://assets.st-note.com/img/1686620110068-3dtir2NLEk.png?width=1200)
使用するセンサーは、6軸(加速度、ジャイロ)+温度が装備された、BMI088 です。
参考技術資料はネット上に沢山あふれているので、それほど手間をかけずに出来るかなと思いましたが、案外手間がかかったので、先ずは、Seeeduino V4.2 の開発環境セットアップとサンプルコードの実行、目的の構成を目指した改造までを一つの記事とすることにします。
開発環境のセットアップ
先ずは、開発環境のセットアップです。幾つか技術ブログがが散見されましたが、本家の Seeed さんが公開している
Seeeduino v4.2 | Seeed Studio Wiki
が一番正確だったので(当たり前かw)、こちらに従ってセットアップを進めていきます。
Seeeduino V4.2 の設定
本家の Arduino Uno が動作電圧が 5V 固定なのに対し、Seeduino V4.2 は 3.3V と 5V の切り替えができるので便利。
※ BMI088 は 3.3/5V両方対応
今回は ESP32 と接続するので、5V 設定で使います。黄色いソケットを上面に、USB ポートを手前にしておいた時に、右側に来る黄色いソケットの USB ポート側の横に DIP Switch があるので、それを 5V 側に設定します。
BMI088 をはじめとする Grove Sensor は専用の4ピンケーブルでの接続になりますが、Seeeduino には 3つの Grove コネクタが用意されていて即つなげるのも超便利です。このままでも十分なのですが、今後色々なセンサーを同時につなげたいなぁ…ということで、Grove Base Shield (Arduino Uno と Grove Sensor をつなぐ時にも使える)も実際には使っています。このシールドを使う場合は、Grove - 6-Axis Accelerometer&Gyroscope(BMI088) | Seeed Studio Wiki に記載の通り、
![](https://assets.st-note.com/img/1686621037953-Y402gyCcLH.png?width=1200)
シールドの 6ピンの ISP 側の I2C にセンサーを接続します。
開発用 Windows PC へのデバイスドライバーインストール
ここから先は
Azure の最新機能で IoT を改めてやってみる
2022年3月にマイクロソフトの中の人から外の人になった Embedded D. George が、現時点で持っている知識に加えて、頻繁に…
この記事が気に入ったらサポートをしてみませんか?