M5stack Japan Tour 2025 Spring OSAKAでのLTが展示の後で、そのあと抽選で解散という構成になったので、展示を見てねというLTは効果がないことがわかった。うーん。

プレゼンの内容を拡張して、シリアルあればAndroidがサポートしてないセンサがつなげられるよ!という話にしよう。
確認用にATOM LiteとENV IV Unitを使って実証をやってみる。

GPT4oにスケッチを書いてもらう。ぱっと見問題なさそう。確認もろくにせずに進める。
#include <M5Atom.h>
#include <Wire.h>
#include <Adafruit_SHT4x.h>
#include <Adafruit_BMP280.h>
Adafruit_SHT4x sht4 = Adafruit_SHT4x();
Adafruit_BMP280 bmp; // I2C接続
void setup() {
M5.begin(true, false, true);
Serial.begin(115200);
Wire.begin(21, 22);
if (!sht4.begin()) {
Serial.println("SHT40 not detected");
} else {
sht4.setPrecision(SHT4X_HIGH_PRECISION);
sht4.setHeater(SHT4X_NO_HEATER);
}
if (!bmp.begin(0x76)) {
Serial.println("BMP280 not detected");
}
}
void loop() {
sensors_event_t temp, humidity;
if (sht4.getEvent(&humidity, &temp)) {
float pressure = bmp.readPressure() / 100.0; // hPa
Serial.print("Temp: ");
Serial.print(temp.temperature);
Serial.print(" C, Humidity: ");
Serial.print(humidity.relative_humidity);
Serial.print(" %, Pressure: ");
Serial.print(pressure);
Serial.println(" hPa");
} else {
Serial.println("SHT40 read failed");
}
delay(1000);
}
ATOM Liteに書き込む。
まぁ、当然こうなるよね。
Adafruit_SHT4x.h: No such file or directory
ライブラリ入れる。

依存ライブラリも入れる。

BMP280のライブラリは入ってるんだ... 前に入れたかな?
ビルドしてシリアルモニタを見る。「SHT40 read failed」だって。

まぁ、そんなものだよね。
たぶん、ATOM LiteのGPIOピンが間違っている。
老眼なので、ラベルが読めないな...
4oに、「ATOMLiteのGPIOは26,32です。」と指摘する。
「Wire.begin(26, 32);」に書き換えろや!と言ってきた。
しかし、出してきたサンプルコードは、前のコードの改善ではなく、なんか温度センサだけのシンプルなコードに後退したので手パッチる。
書き込んだら値が出てきた。

Temp: 24.35 C, Humidity: 57.30 %, Pressure: 1011.66 hPa
Temp: 24.34 C, Humidity: 57.29 %, Pressure: 1011.70 hPa
Temp: 24.34 C, Humidity: 57.24 %, Pressure: 1011.71 hPa
Temp: 24.34 C, Humidity: 57.23 %, Pressure: 1011.71 hPa
Temp: 24.31 C, Humidity: 57.21 %, Pressure: 1011.74 hPa
いつも使っているセンサだと、いまは22.4度で49%なんだけど... まぁ、いいや。
Androidに接続してみる。Pixel 6aで試す。
作ったアプリのusbserは、バイナリをHEX表示にするやつだったw

でも、データはきて、アプリ側から取れているようだ。まぁ、通信できているなら、提案として入れても問題なさそうね。そっちの方向で資料書き直し。といっても最後だけだけど。
念のために、HEXにしないアプリをビルドして確認しておく。

問題ないね。
オリジナル投稿:
ATOM LiteとAndroidをシリアル接続|kinneko|pixivFANBOX
https://kinneko.fanbox.cc/posts/9768616



