ESP32 を買ったときに,そのおかずにと買ったのはこちらでした.
はい,BME680 ですね.温度,湿度,気圧と有機溶剤などを検知するガスセンサがついています.面白そうだなと思っていました.
ところで ESP32 の開発環境としてはお手軽には Arduino IDE があります.Lチカもこれで行いました.しかし,ESP32 の機能をフルに生かすようなプログラムは出来ないようで,公式の開発環境である ESP-IDF を使った方がよさそうだと考えています.
しかし,これはインストールするのもちょっと面倒くさいので,限界が来るまでは Arduino IDE でいこう,と手抜きモードに入っています.笑 そんなわけで Arduino IDE を使って BME680 をとりあえず動かしてみようと思います.
接続はこんな感じ.
使ったブレッドボードの幅が ESP32-WROOM(1"幅)+100mil しかないので,足が片方しか出せないという体たらくです.どっちをあけるか考えましたが,
こちらの作例では 21, 22 ピンをそれぞれ SDA, SCL にしているため,そちら側を使うようにしました.すると,電源がとれないのですね.そこで 19 ピンを出力の HIGH にして,これを電源にすることにしました.笑
あとこの作例では Adafruit Sensor と BME680 のライブラリが必要です.後者は Arduino IDE のライブラリマネージャで検索してインストールできますが,前者が見つかりません.探したら GitHub にあったのでこれをインストールしました.
こちらです.入れ方はダウンロードして unzip したのをフォルダごと ~/Documents/Arduino/libraries/ に突っ込むだけ.
実行してみると,シリアルでこんな感じに出てきます.
いじっているので,上の作例とは出力形式が違いますが,まあこんな感じにでてくるのでうまく動かせたと思います.ただ簡単すぎて,自分で動かした感ほぼゼロ.なんの知見も得られずちょっとつまらないですねぇ.苦笑
ちなみにガスセンサーはアルコールも検知するので,こんな風にしますと...
出力がこんな風になります.
抵抗値が下がるのですねぇ.あとはどんなガスでどんな変化をするのか調べてみたいと思います.