Open3

ESP32-CAMとBNO055の開発メモ

ピン留めされたアイテム
梅雨梅雨

機械系の学生による開発メモです。
一部表現等が間違っている可能性があるため、参考にする際はご注意ください。

梅雨梅雨

FORIOT ESP32-CAM-MB 開発ボード カメラモジュールOV2640搭載

https://amzn.asia/d/0AwlF3a

BNO055使用 9軸センサーフュージョンモジュールキット

https://akizukidenshi.com/catalog/g/g116996/

arduino-cliで開発を行う
homebrew経由でインストール

$ brew install arduino-cli

デバイスに接続済みのポートを確認

$ arduino-cli board list
Port                            Protocol Type              Board Name       FQBN                         Core
/dev/cu.Bluetooth-Incoming-Port serial   Serial Port       Unknown
/dev/cu.NothingEara             serial   Serial Port       Unknown
/dev/cu.debug-console           serial   Serial Port       Unknown
/dev/cu.usbserial-55670275851   serial   Serial Port (USB) LilyGo T-Display esp32:esp32:lilygo_t_display esp32:esp32
梅雨梅雨

新規スケッチを作成する

$ mkdir sketch
$ touch sketch/sketch.ino
sketch/sketch.ino
void setup() {
    Serial.begin(9600);
}

void loop() {
    Serial.println("Hello, world!");
    delay(1000);
}

arduino-cliでスケッチをコンパイルする
少し時間がかかるので辛抱強く待つ

$ arduino-cli compile --fqbn esp32:esp32:lilygo_t_display sketch/sketch.ino
最大1310720バイトのフラッシュメモリのうち、スケッチが278513バイト(21%)を使っています。
最大327680バイトのRAMのうち、グローバル変数が20232バイト(6%)を使っていて、ローカル変数で307448バイト使うことができます。

Used platform Version Path
esp32:esp32   3.0.5     /Users/meiyu/Library/Arduino15/packages/esp32/hardware/esp32/3.0.5

コンパイルできたらアップロード

$ arduino-cli upload -p /dev/cu.usbserial-55670275851 --fqbn esp32:esp32:lilygo_t_display sketch/sketch.ino
esptool.py v4.6
Serial port /dev/cu.usbserial-55670275851
Connecting......................................

A fatal error occurred: Failed to connect to ESP32: No serial data received.
For troubleshooting steps visit: https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html
Failed uploading: uploading error: exit status 2

失敗した
確認したら5Vケーブルが断線していたので交換

$ arduino-cli upload -p /dev/cu.usbserial-55670275851 --fqbn esp32:esp32:lilygo_t_display sketch/sketch.ino
esptool.py v4.6
Serial port /dev/cu.usbserial-55670275851
Connecting......................................

A fatal error occurred: Failed to connect to ESP32: Wrong boot mode detected (0x12)! The chip needs to be in download mode.
For troubleshooting steps visit: https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html

起動モードが間違っていると怒られた。ESP32-CAMは書き込み時裏にあるリセットボタンを押さなければいけないらしい。
今回はブレッドボードで開発をしているのでIO0(0ピン)とGNDをショートさせて対応した。

$ arduino-cli upload -p /dev/cu.usbserial-55670275851 --fqbn esp32:esp32:lilygo_t_display sketch/sketch.ino
esptool.py v4.6
Serial port /dev/cu.usbserial-55670275851
Connecting.....
Chip is ESP32-D0WD-V3 (revision v3.1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: c8:2e:18:23:09:a0
Uploading stub...
Running stub...
Stub running...
Configuring flash size...

(略)

Hash of data verified.

Leaving...
Hard resetting via RTS pin...

書き込み完了。ショートさせていたケーブルを抜き動作確認をする。
1秒おきにシリアルモニタにHello, World!が表示されていれば成功

Hello, World!
Hello, World!
Hello, World!