4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Atom S3 用 M5 ENV-III の Arduino IDE 向けサンプルプログラムが動かない問題の解決

Posted at

M5 Atom S3 で ENV III を動かそう

 M5Stack 社の Atom S3 を購入した。手元に同社の温湿度気圧センサーである ENV III があったので、 Arduino IDE で表示させてみようとした。
同社の解説ページ( https://docs.m5stack.com/en/unit/envIII ) の中の、Example 項にある「 M5Unit-ENV III with M5AtomS3」をクリックして表示されるソースを Arduino IDE にコピペして動かしてみたが、値がゼロだった。

Arduino IDE の環境設定

 環境設定については、以下のサイトを参考にした。
 Arduino IDE environment - ATOM S3 ←直リンク
上記のサイトにもありますが、追加のボード情報としてこのリンクを設定して、ボードの追加でできます。
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json

コンパイル・書き込みはできたが...

 Arduino IDE には、あらかじめ「M5AtomS3」ライブラリーを入れます。
コンパイル・ ボードへの書き込みはできたが、表示を見ると温度、湿度、気圧全てがゼロでした。ソースを見ると、センサーが読めない時にゼロで表示している。

試してみたこと

ピン番号などを指定してみた

 ピン配列を見ると、SDA: 2、 SCL: 1 ということなので、Wire.begin();Wire.begin(2,1,100000); にしてみたけど、結果は変わらず。

ENV III に問題がないか確認した

 UIFlow2 を使って、ENV III ユニットのブロックを追加して試してみたら、ちゃんとセンサーの値を表示できた。
IMG_8765D.JPG

仕方なく、M5Stack 社のサポートに聞いてみた

 サポートからは、同じ部分を Wire.begin(2,1,100000UL); で試すようにとか、ピン番号を色々変えて試すとか、何回かやり取りがあったが、なかなか解決しなかった。

やっと解決!

 やっと、ライブラリーに問題があったことがわかって、無事にセンサーからの情報が取れるようになった。

解決方法
  1. M5AtomS3 ライブラリーの最新版をインストール
  2. 関連するライブラリーを全てインストールする
  3. "SHT3X.cpp" を検索して開く
  4. ソース中の Wire.begin()Wire.begin(2,1,100000UL)に書き換える
  5. 変更したソースを保存
    これでサンプルプログラムをコンパイルして書き込むと、ちゃんとセンサーから値を取ってきて表示できました! ビンゴ! (サンプルソースは Wire.begin(); のままでOK)

おまけ

 サンプルコードのままだと、文字が小さすぎるので、ちょっと修正した。
M5.Lcd.setCursor(0, 5); ← 文字位置を少し下げる(上が欠けて見えないのを補正)
M5.Lcd.setTextSize(2); ← 文字サイズを大きくするため追加
M5.Lcd.printf("Temp: %2.1f \nHumi: %2.0f%% \nPressure:\n %2.0fPa\r\n---", tmp,hum, pressure); ← 気圧が醜いので2行に分けた
これで、こんなふうに表示されます。
IMG_8768D.JPG

そのうちにライブラリーもアップデートされるでしょう。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?