Skip to main content

XIAO ePaper Display EE04 入門ガイド

XIAO ePaper Display Board EE04

概要

XIAO ESP32-S3 Plus を搭載したディスプレイボード EE04 は、24ピン50ピンの両方の ePaper ディスプレイをサポートします。JST 2.0 mm バッテリーコネクタと電源スイッチ、内蔵充電IC、1つのリセットボタンと3つのユーザーボタンを備えています。デジタルサイネージ、電子ラベル、ポータブル情報ボードなどの低消費電力 ePaper プロジェクトに最適です。

特徴

  • XIAO ESP32-S3 Plus 搭載: 対応する ePaper ディスプレイに接続するだけですぐに動作します。
  • 多様なディスプレイサポート: 幅広い ePaper スクリーンに対応し、24ピンと50ピンの両方のインターフェースをサポート、ジャンパーキャップで簡単に切り替え可能です。
  • スイッチ付きBATコネクタ: シンプルなバッテリー接続を提供し、スイッチを統合することで効率的な電源管理と省エネを実現します。
  • 使いやすいボタン: 1つのリセットボタンと3つのユーザープログラマブルボタンを含み、プロジェクトの加速とカスタマイズ可能な機能の柔軟性を提供します。

仕様

パラメータ説明
プロセッサXIAO ESP32-S3 Plus
ePaper コネクタFPC 24 Pin 0.5mm
FPC 50 Pin 0.5mm
バッテリーコネクタJST 2.0mm
スイッチバッテリー電源 ON/OFF
電源供給- 3.7V Li-Battery
- USB Type-C
ボタン- 1x リセットボタン
- 3x ユーザーボタン

ePaper ボード選択ガイド

製品ePaper Display Board EE04ePaper BreakoutePaper Driver Board
プロセッサXIAO ESP32-S3 PlusXIAO シリーズXIAO シリーズ
対応 ePaper ディスプレイ24 Pin ePaper
50 Pin ePaper
24 Pin ePaper24 Pin ePaper
ePaper コネクタFPC 24 Pin, 0.5mm
FPC 50 Pin, 0.5mm
FPC 24 Pin 0.5mmFPC 24 Pin 0.5mm
バッテリーコネクタJST 2.0mm/JST 2.0mm
スイッチバッテリー電源 ON/OFF/バッテリー電源 ON/OFF
ボタン1x リセットボタン
3x ユーザーボタン
//
拡張IOポート/他のコントローラーとの接続追加センサーとの接続

アプリケーション

  • スマートホームダッシュボード: 天気予報、カレンダーイベント、各種スマートホームデバイスからの通知などのリアルタイム情報を表示。
  • エネルギーモニタリング: スマートメーターからのエネルギー消費データを表示し、住宅所有者がエネルギー使用量をより効率的に追跡・管理できるよう支援。
  • セキュリティアラート: 動体検知やドア・窓センサーの作動などのセキュリティイベントに関するアラートと通知を表示。
  • スマートサーモスタットディスプレイ: 温度と湿度レベル、およびスマートサーモスタットの制御設定を表示。
  • デジタルフォトフレーム: スマートホームネットワークから画像を表示できるWiFi対応デジタルフォトフレームを作成。

ハードウェア概要

サポートされる eInk

24ピンコネクタ

tip

XIAO ePaper Display Board を使用する際は、ePaper ディスプレイのタイプに応じてジャンパーを設定してください:

  • 24 Pin ePaper ディスプレイの場合 → ジャンパーを 24 Pin に設定

⚠️ 間違ったジャンパー設定を使用すると、ePaper の表示が失敗したり、異常なコンテンツが表示される可能性があります。電源を入れる前に、必ずジャンパーの位置を再確認してください。

50ピンコネクタ

tip

XIAO ePaper Display Board を使用する際は、ePaper ディスプレイのタイプに応じてジャンパーを設定してください:

  • 50 Pin ePaper ディスプレイの場合 → ジャンパーを 50 Pin に設定

⚠️ 間違ったジャンパー設定を使用すると、ePaper の表示が失敗したり、異常なコンテンツが表示される可能性があります。電源を入れる前に、必ずジャンパーの位置を再確認してください。

ソフトウェア概要

Seeed Arduino GFX ライブラリのインストール

ステップ 3. Seeed Arduino LCD ライブラリをインストール

tip

このライブラリは TFT ライブラリと同じ機能を持ちますが、互換性はありません。TFT ライブラリや他の類似のディスプレイライブラリをインストールしている場合は、まずそれらをアンインストールしてください。

GitHub から Seeed GFX ライブラリをダウンロードしてインストールします。

下にスクロールしてこのリンクを開きます。

デバイスタイプを選択すると、コードが生成されます。そのコードをコピーして、後で使用します。

tip

間違った選択をすると、画面に何も表示されません。

デバイスやコンポーネントのタイプを確認してください。

ライブラリをダウンロードした後、Sketch -> Include Library -> Add .ZIP Library に移動し、ダウンロードしたライブラリを選択します。

4つの基本的な例があります。お好みの基本例を開いてください:

  1. Bitmap: ビットマップ画像を表示。
  2. Clock: 時計を表示。
  3. Clock_digital: デジタル時計を表示。
  4. Shape: 異なるサイズの文字と図形をランダムに表示。

開始方法

ここでは、5.83インチディスプレイを例として使用します。すべての24ピンスクリーンで手順は同じです。唯一の違いは、ドライバーで適切なスクリーンサイズを選択することです。

新しい "driver.h" ファイルを作成し、そのコードを貼り付けます。コードは次のようになります:

#define BOARD_SCREEN_COMBO 503 // 5.86 inch monochrome ePaper Screen (UC8179)
#define USE_XIAO_EPAPER_DISPLAY_BOARD_EE04

その後、Tools -> Board -> XIAO ESP32S3Tools -> Port -> ボードが接続されているポートを選択 に移動します。次に Upload をクリックしてコードをアップロードします。

これで、電子ペーパー画面にフィードバックが表示されます!以下は Helloworld サンプルの結果です。

tip

⚠️ 注意:電子ペーパーケーブルの向き 電子ペーパーディスプレイを XIAO 電子ペーパーディスプレイボードに接続する際は、FPC ケーブルが正しい方向に挿入されていることを確認してください。

⚠️ コネクタを逆向きにしないでください!ケーブルを逆さまに挿入すると、電子ペーパーが表示されなくなったり、画面/ボードが損傷したりする可能性があります。 以下の画像は正しい接続を示しています:

XIAO 電子ペーパーディスプレイボードのユーザーボタン

EE04 には、さまざまな制御目的に使用できる 3 つのユーザープログラマブルボタンが搭載されています。このセクションでは、Arduino を使用してボタンの状態を読み取り、ボタンの押下に応答する方法を説明します。

EE04 では、3 つのボタンが ESP32-S3 に接続されています:

  • KEY1 (GPIO2_D1/A1)
  • KEY2 (GPIO3_D2/A2)
  • KEY3 (GPIO5_D4/A4)

すべてのボタンはアクティブロー(押されたときに LOW、離されたときに HIGH を読み取る)です。

基本的なボタン読み取りサンプル

このサンプルでは、ボタンの押下を検出し、シリアルモニターにメッセージを出力する方法を説明します。


// reTerminal E Series - Button Test
// Based on hardware schematic

// Define button pins according to schematic
const int BUTTON_KEY0 = 2; // KEY0 - GPIO2
const int BUTTON_KEY1 = 3; // KEY1 - GPIO3
const int BUTTON_KEY2 = 5; // KEY2 - GPIO5

// Button state variables
bool lastKey0State = HIGH;
bool lastKey1State = HIGH;
bool lastKey2State = HIGH;

void setup() {
// Initialize serial communication
Serial.begin(115200);
while (!Serial) {
delay(10); // Wait for serial port to connect
}

Serial.println("=================================");
Serial.println("Press any button to see output");
Serial.println();

// Configure button pins as inputs
// Hardware already has pull-up resistors, so use INPUT mode
pinMode(BUTTON_KEY0, INPUT_PULLUP);
pinMode(BUTTON_KEY1, INPUT_PULLUP);
pinMode(BUTTON_KEY2, INPUT_PULLUP);

// Read initial states
lastKey0State = digitalRead(BUTTON_KEY0);
lastKey1State = digitalRead(BUTTON_KEY1);
lastKey2State = digitalRead(BUTTON_KEY2);

Serial.println("Setup complete. Ready to detect button presses...");
}

void loop() {
// Read current button states
bool key0State = digitalRead(BUTTON_KEY0);
bool key1State = digitalRead(BUTTON_KEY1);
bool key2State = digitalRead(BUTTON_KEY2);

// Check KEY1
if (key0State != lastKey0State) {
if (key0State == LOW) {
Serial.println("KEY0 (GPIO2) pressed!");
} else {
Serial.println("KEY0 (GPIO2) released!");
}
lastKey0State = key0State;
delay(50); // Debounce delay
}

// Check KEY2
if (key1State != lastKey1State) {
if (key1State == LOW) {
Serial.println("KEY1 (GPIO3) pressed!");
} else {
Serial.println("KEY1 (GPIO3) released!");
}
lastKey1State = key1State;
delay(50); // Debounce delay
}

// Check KEY3
if (key2State != lastKey2State) {
if (key2State == LOW) {
Serial.println("KEY2 (GPIO5) pressed!");
} else {
Serial.println("KEY2 (GPIO5) released!");
}
lastKey2State = key2State;
delay(50); // Debounce delay
}

delay(10); // Small delay to prevent excessive CPU usage
}

リソース

技術サポート & 製品ディスカッション

弊社製品をお選びいただき、ありがとうございます!弊社製品での体験が可能な限りスムーズになるよう、さまざまなサポートを提供しています。さまざまな好みやニーズに対応するため、複数のコミュニケーションチャンネルを用意しています。

Loading Comments...