# Waveshare ESP32-S3 1.64 inch AMOLED Touch Display Development Board

waveshare社が制作しているESP32-S3シリーズの製品に関する記事です。  
開発環境とDEMOプログラムを実施しています。

waveshare社  
[https://www.waveshare.com](https://www.waveshare.com)

# 概要

Waveshare社の「ESP32-S3 1.64 inch AMOLED Touch Display Development Board」のテスト記事です。<span class="s1">[https://www.waveshare.com/esp32-s3-touch-amoled-1.64.htm](https://www.waveshare.com/esp32-c6-touch-lcd-1.47.htm?sku=31201)</span>

<span class="s1">Wiki  
</span><span class="s1">[https://www.waveshare.com/wiki/ESP32-S3-Touch-AMOLED-1.64](https://www.waveshare.com/wiki/ESP32-C6-Touch-LCD-1.47)</span>

<span class="s1">  
</span>

[![スクリーンショット 2026-05-29 17.39.42.png](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/2026-05-29-17-39-42.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/2026-05-29-17-39-42.png)

[![スクリーンショット 2026-05-29 17.40.04.png](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/2026-05-29-17-40-04.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/2026-05-29-17-40-04.png)

##### 概要

- <span class="s1">320×820 Pixels</span>
- <span class="s1">262K Color</span>
- <span class="s1">32-bit LX7 Dual-core Processor</span>
- <span class="s1">Up to 240MHz Frequency</span>
- <span class="s1">WiFi &amp; Bluetooth 5  
    </span>
- <span class="s1">ESP32 With Display</span>

LCDとタッチ画面とESP32-S3を組み合わせた開発用ボードという位置付けの商品の様です。

##### 仕様

- ESP32-S3 (ESP32-S3R8)  
    &gt; 内蔵 384KB ROM、512KB SRAM  
    &gt; 内蔵 8MB Flash/PSRAM  
    &gt; dual-core 240MHz 32bit RISC-Vプロセッサー  
    &gt; WiFi 2.4GHz IEEE 802.11b/g/n  
    &gt; Bluetooth LE: Bluetooth 5, Bluetooth Mesh (オンボードアンテナ)
- 1.64インチAMOLED 容量式タッチスクリーン、
- 解像度 280×456、16.7Mカラー
- アンテナ  
    &gt; 2.4GHzのWi-FiおよびBluetooth 5(LE)を内蔵内アンテナ  
    &gt; 外部アンテナ設定用にははんだジョイントを内蔵
- 加速度センサーとジャイロセンサー搭載  
    &gt; QMI8658 6軸センサー(3軸加速度計と3軸ジャイロスコープ)
- RST(リセット) ボタン/BOOTボタン
- 充電制御  
    &gt; 接続 MX1.25  
    &gt; 制御IC ETA6098(リチウムイオン電池充電をサポート)
- TF カードスロット(FAT32)
- Type-Cコネクタ(プログラム書き込みおよびログ出力用)
- 複数のI/Oインターフェースに対応、フルスピードUSB規格をサポート
- 低ドロップアウトレギュレータ  
    &gt; MP1605GTF-Z(最大2A、入力:2.3V～5.5V、最小出力:0.6V)  
    &gt; [https://www.monolithicpower.com/jp/mp1605.html](https://www.monolithicpower.com/jp/mp1605.html)  
    &gt; 入出力特性 [![1__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/Pqo1-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/Pqo1-at.jpg)
- ボートの裏側の部品配置  
    [![2__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/c5M2-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/c5M2-at.jpg)

# 主な仕様

##### ESP32-S3R8

ESP32-S3 Series Datasheet Version 2.1 からの抜粋

[https://documentation.espressif.com/esp32-s3\_datasheet\_en.pdf](https://documentation.espressif.com/esp32-s3_datasheet_en.pdf)

[![3__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/miJ3-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/miJ3-at.jpg)

主な機能一覧

- 2.4 GHz帯 IEEE 802.11b/g/n  
    &gt; 20 MHzおよび40 MHzの帯域幅  
    &gt; 1T1Rモード、最大データレート150 Mbps
- Bluetooth<span class="s1">®  
    &gt; Bluetooth LE: Bluetooth 5  
    &gt; Bluetooth mesh  
    &gt; 最大送信パワー<span class="Apple-converted-space"> </span>20 dBm(100mW)  
    &gt; Speed: 125 Kbps, 500 Kbps, 1 Mbps, 2 Mbps</span>
- <span class="s1">CPU  
    &gt; デュアルコア32ビットLX7マイクロプロセッサ(RISC-V)  
    &gt; 最大 240 MHz  
    &gt; 4段 バイブライン構造</span>
- <span class="s1">メモリ  
    &gt; ROM: 384 KB  
    &gt; SRAM: 512 KB  
    &gt; SRAM in RTC: 16 KB</span>
- <span class="s1">各種IO  
    &gt; 45個のプログラム可能なGPIO  
    &gt; 3 \* UART  
    &gt; 2 \* I2C  
    &gt; 2 \* I2S  
    &gt; 1 \* LCDインタフェース  
    &gt; 1 \* 8ビット～16ビット DVPカメラインターフェース  
    &gt; 2 \* SPI  
    &gt; 2 \* 汎用SPI  
    &gt; 1 \* TWAI ISO 11898-1 (CAN Specification 2.0)  
    &gt; 1 \* フルスピードUSB OTG  
    &gt; 1 \* USB Serial/JTAG コントローラー  
    &gt; 2 \* SD/MMCホストコントローラー  
    &gt; 8 \* LED PWMコントローラー  
    &gt; 2 \* モーター制御PWM(MCPWM）)  
    &gt; 2 \* モーター制御PWM(MCPWM)  
    &gt; 1 \* RMT (TX/RX)  
    &gt; 1 \* パルスカウントコントローラー  
    &gt; 2 \* 12-bit SAR ADC (逐次比較型) (最大20チャンネル)  
    &gt; 1 \* 温度センサー  
    &gt; 14 \* 静電容量式タッチセンシング入出力端子  
    &gt; 4 \* 54ビット汎用タイマー  
    &gt; 1 \* 52ビットシステムタイマー  
    &gt; 3 \* ウォッチドッグタイマー</span>
- <span class="s1">電力管理  
    &gt; コンポーネントの電力制御(クロック周波数、デューティサイクル、Wi-Fi動作モード、個別内部コンポーネント制御)  
    &gt; 電力モード-4種：アクティブ、モデムスリープ、ライトスリープ、ディープスリープ  
    &gt; ディープスリープモード時の消費電力は7µA  
    &gt; ディープスリープモード時でもRTCメモリは通電状態を維持</span>
- <span class="s1">セキュリティ  
    &gt; セキュアブート - 内部および外部メモリへのアクセス権制御  
    &gt; フラッシュ暗号化 - メモリの暗号化および復号化  
    &gt; 信頼実行環境（TEE）コントローラーおよびアクセス権限管理(APM)  
    &gt; 暗号ハードウェアアクセラレーション：  
     - AES-128/256(FIPS PUB 197)  
     - SHA (FIPS PUB 180-4)  
     - RSA  
     - RNG(乱数生成器)  
     - HMAC  
     - デジタル署名</span>
- <span class="s1">RFモジュール  
    &gt; アンテナスイッチ、RFバラン、パワーアンプ、低雑音受信増幅器  
    &gt; 802.11b 伝送時最大 +21 dBmの出力  
    &gt; 802.11ax伝送時最大 +19.5 dBmの出力  
    &gt; Bluetooth LE受信機（125 Kbps）時最大 -106 dBmの感度</span>
- <span class="s1">ESP32-S3R8  
    </span>[![4__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/dtD4-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/dtD4-at.jpg)
- 8MB PSRAM (Quad SPI接続)
- 動作温度 -40度～65度
- GPIOs  
    [![5__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/5-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/5-at.jpg)
    
    [![6__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/6-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/6-at.jpg)

# 開発環境の構築

開発環境のインストールを実施します。

Arduino IDE 2 に環境をインストールしていきます。

ESP32 Development Board<span class="s1">のインストール</span>

<span class="s1">Arduino IDE</span>で<span class="s1">ESP32</span>関連のマザーボードを使用する前に、<span class="s1">Espressif Systems</span>開発ボード用の<span class="s1">esp32</span>ソフトウェアパッケージをインストールする必要があります。

<span class="s1">DEMO</span>プログラムを動作させるには次のライブラリをインストールする必要が有ります。

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 11.5614%;"></col><col style="width: 16.329%;"></col><col style="width: 15.2746%;"></col><col style="width: 56.8351%;"></col></colgroup><tbody><tr><td>lvgl</td><td>Graphical library</td><td>v8.4.0</td><td>"Install Online" (rdemos フォルダを src にコピーします) </td></tr></tbody></table>

アップデート確認とアップデートのインストール  
(今回は最新版の3.3.5に更新します。)

[![Pasted Graphic 7.png](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/NmTpasted-graphic-7.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/NmTpasted-graphic-7.png)

ボードとポートの選択

ボード: Waveshare ESP32-S3-Touch-AMOLED1.64  
ポート:

[![7__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/7-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/7-at.jpg)

[![8__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/8-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/8-at.jpg)

[![9__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/9-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/9-at.jpg)

# 動作テスト

Hello, World! で動作を確認します。

```c++
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
}

void loop() {
 // put your main code here, to run repeatedly:
  Serial.println("Hello, World!");
  delay(2000);
}

```

<span class="s1">シリアルモニタの出力結果</span>

[![Pasted Graphic.png](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/zPwpasted-graphic.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/zPwpasted-graphic.png)

# DEMOプログラム

##### DEMOプログラム

DEMOプログラムを以下のURLからダウンロードしテストします。

[https://files.waveshare.com/wiki/ESP32-S3-Touch-AMOLED-1.64/ESP32-S3-Touch-AMOLED-1.64-Demo.zip](https://files.waveshare.com/wiki/ESP32-C6-Touch-LCD-1.47/ESP32-C6-Touch-LCD-1.47-Demo.zip)

##### 01\_ADC\_Test

ADC1チャネル3の値を読み取り、シリアル出力  
<span class="s1">GPIO3</span>を使用してシステムの入力電圧を測定してシリアル出力  
(補足: 回路図からはGPIO3の仕様がよく分からない)

以下のライブラリを使用  
 lvgl v8.4.0

ピン配置図

[![10__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/10-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/10-at.jpg)

結果

[![Pasted Graphic 1.png](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/y4mpasted-graphic-1.png)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/y4mpasted-graphic-1.png)

##### 02\_I2C\_QMI8658

I2Cプロトコルを通じて、QMI8658チップを初期化し、対応する態度情報を1秒ごとに端末に読み取り、シリアル出力します。

以下のライブラリを使用  
 lvgl v8.4.0

<span class="s1">qmi8658c\_example(void\* </span>パラメータ<span class="s1">):</span>この関数は、<span class="s1">QMI8658</span>デバイスを初期化し、毎秒<span class="s1">1</span>回、無限ループで加速度センサーデータ、ジャイロスコープデータ、温度データを読み取り出力します。基板の回転中、ジャイロスコープのデータは回転速度が高くなると増加し、加速度センサーは現在の位置に基づいて対応する加速度を計算します。。

結果

[![11__#$!@%!#__レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/11-at.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/11-at.jpg)

##### 03\_sd\_card\_test

TF カードのテスト  
マクロ定義でTFカードを駆動するには、SPIまたはSDMMC方式を選択し、TFカードを正常に取り付けた後にTFカードをログ出力します。

以下のライブラリを使用  
 lvgl v8.4.0

結果

コンソール出力結果&gt;&gt;  
  
01:47:02.943 -&gt; Name: SA16G  
01:47:02.943 -&gt; Type: SDHC  
01:47:02.943 -&gt; Speed: 20.00 MHz (limit: 20.00 MHz)  
01:47:02.943 -&gt; Size: 14832MB  
01:47:02.943 -&gt; CSD: ver=2, sector\_size=512, capacity=30375936 read\_bl\_len=9  
01:47:02.976 -&gt; SSR: bus\_width=1  
01:47:02.976 -&gt; practical\_size:14.48G

##### 03\_sd\_card\_test

TF <span class="s1">カード  
</span>書き込み<span class="s2">/</span>読み出しテスト、<span class="s2">Arduino</span>ライブラリを使用します。

<span class="s1">ログ出力</span> &gt;&gt;

02:05:44.925 -&gt; File written  
02:05:44.925 -&gt; Appending to file: /hello.txt  
02:05:44.925 -&gt; Message appended  
02:05:44.925 -&gt; Reading file: /hello.txt  
02:05:44.925 -&gt; Read from file: Hello World!  
02:05:44.925 -&gt; Deleting file: /foo.txt  
02:05:44.925 -&gt; File deleted  
02:05:44.925 -&gt; Renaming file /hello.txt to /foo.txt  
02:05:44.925 -&gt; File renamed  
02:05:44.925 -&gt; Read from file: Hello World!  
02:05:46.677 -&gt; 1048576 bytes read for 2405 ms  
02:05:49.457 -&gt; 1048576 bytes written for 2767 ms  
02:05:49.457 -&gt; Total space: 14824MB  
02:05:49.457 -&gt; Used space: 4MB

ファイル「<span class="s2">test.txt</span>」の書き込みバイト数

• 1,048,576 bytes  
• = 1024 KB  
• = 1 MB<span class="s1">（</span>= 1 MiB<span class="s1">）  
</span><span class="Apple-converted-space"> </span>1048576 bytes read for 2405 ms  
<span class="Apple-converted-space"> </span>1048576 bytes written for 2767 ms

##### 04\_WIFI\_AP

Arduino <span class="s1">ライブラリと</span>esp\_wifi<span class="s1">の接続テスト</span>

<span class="s1">・</span>WiFi 2.4G<span class="s1">には接続出来る。  
</span>・<span class="s2">WiFi </span>リストは動作しない<span class="s2">!</span>

<span class="s1">ログ出力</span> &gt;&gt;

02:46:30.083 -&gt; AP IP Address: 192.168.1.41  
02:46:35.078 -&gt; Connected Devices: 0  
02:46:40.078 -&gt; Connected Devices: 0

##### 05\_WIFI\_STA

<span class="s1">Arduino </span>ライブラリによる<span class="s1">WiFi</span>接続テスト

<span class="s2">ログ出力</span> &gt;&gt;

03:00:01.593 -&gt; Connecting to WiFi  
03:00:03.680 -&gt; IP Address: 192.168.1.153

##### 06\_LVGL\_Test

<span class="s1">LVGL</span>を移植することで、画面上にいくつかの多機能<span class="s1">GUI</span>インターフェースを実装したテスト

LVGLテストで使用したライプラリ  
 <span style="color: rgb(224, 62, 45);">**lvgl <span class="Apple-converted-space"> </span>8.4.0**</span>

[![画像レイヤー.jpg](https://book.a10-objects.jp/uploads/images/gallery/2026-05/scaled-1680-/hDWdAlSrib.jpg)](https://book.a10-objects.jp/uploads/images/gallery/2026-05/hDWdAlSrib.jpg)