ESP32-S3を使って、センサーから温度・湿度などのデータを取得する 実験環境を構築しました。
ESP32-S3とセンサーをブレッドボードに配置し、 I2C通信を利用して接続しました。
| センサー | ESP32-S3 |
|---|---|
| VDD | 3V3 |
| SDA | GPIO 8 |
| GND | GND |
| SCL | GPIO 9 |
それぞれ対応する番号にジャンパーワイヤーを配線します。
電源には5Vではなく3.3V(3V3)を使用しました。
ESP32をUSBでUbuntu PCに接続し、以下のコマンドでUSB機器を確認しました。
$ lsusb
ESP32を接続すると、以下のようなデバイスが確認できました。
QinHeng Electronics USB Single Serial
さらにカーネルログを確認すると、 ESP32がUSBシリアルデバイスとして認識されていました。
$ sudo dmesg | tail -30
cdc_acm 3-4:1.0: ttyACM0: USB ACM device
これにより、ESP32は
/dev/ttyACM0
として認識されていることを確認しました。
UbuntuにArduino IDEをインストールしました。
Arduino IDEはESP32のプログラムを書き込み、 シリアルモニターでデータを確認するために使用します。
Arduino IDEの File → Preferences を開き、 Additional Board Manager URLs にESP32用のURLを追加しました。
https://espressif.github.io/arduino-esp32/package_esp32_index.json
その後、 Tools → Board → Boards Manager から esp32 by Espressif Systems をインストールしました。
こうなっていればOKです
ESP32用ボードパッケージのインストール後、 ESP32-S3用のボードを選択します。
Tools
→ Board
→ ESP32 Arduino
→ ESP32S3 Dev Module
また、USBポートとして
/dev/ttyACM0
を選択します。
環境構築が完了したため、今後はESP32-S3からセンサーの値を取得し、 温度・湿度などのデータを確認する実験を行います。
最終的にはESP32をWi-Fiに接続し、 センサーのデータをWebブラウザから確認できるシステムへの発展を目指します。