2023/11/23: seeed_indicator_esp32.jsonにパーティション設定を追加
2023/12/3: タッチパッドの情報を追加
1. はじめに
購入してからしばらく放置していたSenseCAP Indicatorを使ってみようと思い、ビルド時の設定を調べていたところ、以下の記事を見つけました。この情報をもとにSenseCAP Indicator用のボード定義ファイルを新規に作ってみました。
2. ボード定義ファイルをを作る
上記の記事を参考にしてボード定義ファイルを作ります。
ファイルC:\Users%USERNAME%.platformio\platforms\espressif32\boards\esp32s3box.jsonをコピーしてC:\Users%USERNAME%.platformio\platforms\espressif32\boards\seeed_sensecap_indicator.json(ファイル名は既に存在するものでなければ何でもよい)というファイルを作ります。
そして、以下の部分を修正します。
--- esp32s3box.json 2023-09-01 01:24:58.789845900 +0900
+++ seeed_indicator_esp32.json 2023-11-23 09:59:22.842950100 +0900
@@ -2,12 +2,13 @@
"build": {
"arduino":{
"ldscript": "esp32s3_out.ld",
- "memory_type": "qio_opi"
+ "memory_type": "qio_opi",
+ "partitions": "default.csv"
},
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
- "-DARDUINO_ESP32_S3_BOX",
+ "-DARDUINO_SEEED_INDICATOR_ESP32",
"-DARDUINO_USB_MODE=1",
"-DARDUINO_USB_CDC_ON_BOOT=1"
],
@@ -34,14 +35,14 @@
"arduino",
"espidf"
],
- "name": "Espressif ESP32-S3-Box",
+ "name": "INDICATOR ESP32",
"upload": {
- "flash_size": "16MB",
+ "flash_size": "8MB",
"maximum_ram_size": 327680,
- "maximum_size": 16777216,
+ "maximum_size": 8388608,
"require_upload_port": true,
- "speed": 921600
+ "speed": 460800
},
- "url": "https://www.adafruit.com/product/5290",
- "vendor": "Espressif"
+ "url": "https://www.seeedstudio.com/SenseCAP-Indicator-D1-p-5643.html",
+ "vendor": "SeeedStudio"
}
3. プロジェクトを作る
SenseCAP Indicator用のプロジェクトを作ってみます。 Espressif32以下にあるボード選択リスト内に"INDICATOR ESP32 (SeeedStudio)"が追加されていますので、それを選択します。
生成されたplatformio.iniは、以下のようになりました。
[env:seeed_sensecap_indicator_esp32]
platform = espressif32
board = seeed_sensecap_indicator_esp32
framework = arduino
4. ビルドと書き込み
参考にしたページにあるプログラムをビルドし、書き込んでみました。LCDの左上にはStartと表示され、本体左上のボタンを押すと以下の文字列が表示されました。
[ 49179][I][main.cpp:264] loop(): [test] pressed
しかし画面をタッチしても、シリアルポートには何も出力されませんでした。これについては、引き続き調べてみようと思います。
5. タッチパネルの動作について
以下の場所に動作するタッチパネル設定がありました。
こちらもため沿てみようと思います。