メインコンテンツまでスキップ

Seeed Studio Round Display for XIAO 入門ガイド

はじめに

Seeed Studio Round Display for XIAO は、すべての XIAO 開発ボードと互換性のある拡張ボードです。片面に 39mm の円盤状に設計された全面タッチスクリーンを備えています。コンパクトなサイズの中にオンボード RTC、充電チップ、TF カードスロットを内蔵しており、スマートホームやウェアラブルなどのインタラクティブなディスプレイに最適です。

REV説明日付作成者
v1.0初期バージョン2023/1/29Linus.Liao
v1.11.Li バッテリー充電 IC を変更
2.A0 と D6 にスイッチを追加
2023/4/7Linus.Liao

仕様

項目詳細
電源USB Type-C: 5V @35 mA
バッテリー充電: 3.7V @37mA
充電電流~ 485 mA
拡張メモリ最大 32GB FAT 対応 TF カードスロット
画面1.28 インチ タッチスクリーン
240×240 解像度
65K 色
その他の外部機器JST 1.25 コネクタ
寸法39mm x 39mm

特長

  • 静電容量式タッチスクリーン拡張ボード:1.28 インチ円形、240×240 解像度、65K 色のディスプレイで、鮮明でカラフルな画像表示を提供します
  • 高い互換性:すべての XIAO シリーズ製品と高い互換性があり、現在のプロジェクトに容易に統合できます
  • 豊富なペリフェラル:コンパクトなサイズに、オンボード RTC、バッテリー充電チップ、TF カードスロット、JST 1.25 コネクタを搭載
  • 腕時計サイズのデザイン:39 mm の円形デザインで、ウェアラブルやスペースに制約のあるプロジェクトに適しています
  • プラグアンドプレイ:すべてのピンが引き出されており、はんだ付けは不要です

ハードウェア概要

始める前に、Round Display の機能を理解しやすくするために、以下の図を参照して Round Display のピン設計を把握しておきましょう。

2023 年 4 月 7 日以降、改良版 Round Display には、画面のバックライトとバッテリー電圧の読み取りを制御する 2 ビットスイッチが追加されました。ユーザーがピンを使用するか解放するかを自由に選択できるようにするためです。詳しくは こちら をクリックしてお読みください。

セットアップ

ハードウェアの準備

Round Display の機能を最大限に活用し、優れた体験を得るために、Round Display のマザーボードとして XIAO シリーズを購入することを強くお勧めします。

ヒント

XIAO SAMD21、RP2040 および RA4M1 は、メモリ不足のため円形スクリーンと互換性が ない可能性があります

Seeed Studio XIAO nRF52840 (Sense)Seeed Studio XIAO ESP32C3Seeed Studio XIAO ESP32S3 (Sense)Seeed Studio XIAO ESP32C6

Round Display の背面にある一列のピンは XIAO シリーズ用に設計されています。すでに XIAO をお持ちであれば、追加のケーブルを用意する必要はなく、XIAO のピンを Round Display のピンに合わせて直接差し込むだけで構いません。

注意

XIAO を接続する際は、XIAO の Type-C コネクタが Round Display の外側を向くようにする必要があることに注意してください。誤って極性を逆にしてしまっても、Round Display には電源保護回路があるため簡単には破損しませんが、長時間逆接続のままにしておくことは推奨しません。

Round Display の推奨される向きは、Round Display に正面から向いたときに、XIAO の Type-C コネクタが右側を向き、Round Display の電源ボタンが左下に位置するようにすることです。

ソフトウェアの準備

Round Display を使用するには、XIAO シリーズにプログラムを書く必要があります。推奨される開発ツールは Arduino IDE で、XIAO 用に Arduino 環境を構成し、ボードパッケージを追加する必要があります。

ヒント

Arduino を初めて使用する場合は、Getting Started with Arduino を参照することを強くお勧めします。

ステップ 1. お使いのオペレーティングシステムに応じて、安定版の Arduino IDE をダウンロードしてインストールします

ステップ 2. Arduino アプリケーションを起動します

ステップ 3. 使用する XIAO 用に Arduino IDE を設定します

  • 後のルーチンで Seeed Studio XIAO RP2350 を使用したい場合は、追加作業を完了するために このチュートリアル を参照してください。

  • 後のルーチンで Seeed Studio XIAO nRF52840 を使用したい場合は、追加作業を完了するために このチュートリアル を参照してください。

  • 後のルーチンで Seeed Studio XIAO ESP32C3 を使用したい場合は、追加作業を完了するために このチュートリアル を参照してください。

  • 後のルーチンで Seeed Studio XIAO ESP32C6 を使用したい場合は、追加作業を完了するために このチュートリアル を参照してください。

  • 後のルーチンで Seeed Studio XIAO ESP32S3 を使用したい場合は、追加作業を完了するために このチュートリアル を参照してください。

ステップ 4. グラフィックライブラリと画面ドライバライブラリのインストール

Round Display を使用するには、事前に 2 つのライブラリをインストールする必要があります。1 つは Round Display デバイスドライバライブラリで、デバイスの画面およびタッチ機能を駆動するために使用します。もう 1 つはグラフィック表示ライブラリで、図形描画のための非常に一般的なインターフェースを提供します。

  1. GitHub から Seeed_Arduino_RoundDisplay ライブラリをダウンロードします:

  1. GitHub から Seeed_GFX ライブラリをダウンロードします:

  1. Arduino IDE で ZIP ファイルを追加してライブラリをインストールします。Sketch > Include Library > Add .ZIP Library に進み、ダウンロードした ZIP ファイルを選択します。
注記

以前に TFT_eSPI ライブラリをインストールしている場合、競合を避けるために Arduino のライブラリフォルダから一時的に削除するか名前を変更する必要があるかもしれません。Seeed_GFX は TFT_eSPI をフォークし、機能を追加したライブラリだからです。

Arduino ライブラリ概要

上記のチュートリアルからも分かるように、Round Display は主に LVGLTFT_eSPIArduino GFX ライブラリを使用します。紙面の都合上、ダイヤル描画の例を用いて LVGLTFT_eSPI ライブラリの使い方をそれぞれ紹介します。

  • TFT_eSPI ライブラリのインターフェースと使い方については、こちら をクリックして確認できます。

  • LVGL ライブラリのインターフェースと使い方については、こちら をクリックして確認できます。

  • Arduino GFX ライブラリのインターフェースと使い方については、こちら をクリックして確認できます。

Round Display を点灯させる

デモ 1: Arduino Life - Round Display で Seeed_GFX ライブラリを使う方法

Seeed_GFX ライブラリのサンプルスケッチを開きます:File > Seeed_GFX > Examples > Round Display > Arduino_Life

例のタブの横にある矢印をクリックし、「New Tab」を選択して、Arduino スケッチと同じフォルダに driver.h という名前の新しいファイルを作成します。

新しいファイル名を driver.h とします。

Seeed GFX Configuration Tool にアクセスし、画像のように "TRMNL 7.5" (OG) DIY Kit" を選択します。

生成されたコードをコピーして、作成した driver.h ファイルに貼り付けます。コードは次のようになります:

#define BOARD_SCREEN_COMBO 501 // Round Display for Seeed Studio XIAO (GC9A01)

これで、TRMNL DIY Kit にサンプルをアップロードして、ePaper ディスプレイが動作する様子を見ることができます!

注意

以降のすべての画面用コードには、使用する画面の種類を選択するための driver.h ファイルを付随させる必要があることに注意してください。

デモ 2: TFT Clock

注意

Demo1 を参照し、.ino ファイルと同じディレクトリに新しい driver.h ファイルを作成し、その中に次のコードを保持してください:#define BOARD_SCREEN_COMBO 501

ヒント

Round Display で RTC 機能を使用する必要があるため、I2C BM8563 RTC ライブラリも検索してインストールする必要があります。

ハードウェアとソフトウェアの準備ができたら、最初のサンプルプログラムのアップロードを開始します。このサンプルプログラムは、Round Display の RTC クロックが正しく動作しているかを確認するために使用できます。このデモは必要なメモリ量が少ないため、すべての XIAO モデルに適しています。

ヒント

このデモを改造して、より複雑な表示を実現したい場合は、使用している XIAO のメモリ容量に注意してください。具体的な容量は、その XIAO の紹介ページで確認できます。

このサンプルプログラムは、Arduino IDE の File -> Examples -> Seeed Arduino Round display -> TFT_Clock から見つけることができます。

使用している XIAO と、その XIAO が接続されているポート番号を選択し、コンパイルしてアップロードするだけです。

Round Display のスイッチが ON の位置に切り替えられていることを確認してください。

プログラムが正常に動作すれば、次のような表示が見られます。

デモ 3: ハードウェアテスト

注意

Demo1 を参照し、.ino ファイルと同じディレクトリに新しい driver.h ファイルを作成し、その中に次のコードを保持してください:#define BOARD_SCREEN_COMBO 501

HardwareTest デモは少し複雑で、より多くのメモリを占有するため、一部の XIAO モデルではメモリ不足により正常に実行できない場合があります。TFT ライブラリと Arduino GFX ライブラリを使用したテスト結果を、参考用に表にまとめました。

TFT libraryArduino GFX
XIAO SAMD21
XIAO RP2040
XIAO RA4M1
XIAO nRF52840 non mbed version
XIAO nRF52840 mbed version
XIAO ESP32C3
XIAO ESP32C6
XIAO ESP32S3

このサンプルプログラムは、Round Display の RTC クロック、SD カード、およびタッチ機能が正しく動作しているかを確認するために使用できます。

ヒント

Round Display で RTC 機能を使用する必要があるため、I2C BM8563 RTC ライブラリも検索してインストールする必要があります。

このサンプルプログラムは、Arduino IDE の File -> Examples -> Seeed Arduino Round display -> HardwareTest から見つけることができます。

使用している XIAO と、その XIAO が接続されているポート番号を選択し、コンパイルしてアップロードするだけです。

Round Display のスイッチが ON の位置に切り替えられていることを確認してください。

プログラムが正常に動作すれば、次のような表示が見られます。

注記

このサンプルプログラムでは、RTC 機能を含む拡張ボードのすべての機能項目をテストします。I2C BM8563 RTC ライブラリをインストールしていない場合はエラーが報告されることがあります。その場合は、lv_hardware_test() 関数をコメントアウトすれば、SD カードの機能検出も同時にオフになります。

キャリブレーション用ファームウェアの更新

ヒント

タッチが反応しないことがある場合は、以下の手順に従って画面のキャリブレーション用ファームウェアを更新できます。

  1. このリンクからコードをダウンロードします
  1. それらを同じディレクトリに置き、このファームウェアを実行します。
  1. シリアルモニタを開くと、下の画像のような成功メッセージが表示されます。これは更新が成功したことを意味し、その後プログラムをアップロードして試すことができます!

トラブルシューティング

Q1: プログラムをアップロードしたのに、なぜディスプレイに何も表示されないのですか?

A: Round Display のスイッチがオンになっているか確認してください。XIAO ESP32C3 を使用している場合は、プログラムをアップロードした後に Reset を押す必要がある場合もあります。

Q2: Seeed Studio XIAO ESP32S3 Sense をこの拡張スクリーンに接続したい場合、2 つの TF カードスロットが競合することはありますか?

A: これは競合を引き起こしません。異なる SD カードスロットはチップセレクトによって制御されます。Sense 上の microSD カードスロットを使用したい場合、チップセレクトピンは 21 にする必要があります。Round Display 上の microSD カードスロットを使用したい場合、チップセレクトピンは D2 にする必要があります。

S3 Sense カメラチュートリアルでは、ハードウェアと microSD カードの両方を使用するサンプルを用意しています。

Q3: Round Display 用の HardwareTest のコードを使用すると、XIAO RP2040 で非常に奇妙な C++ エラーが発生するのはなぜですか?

A: これは、XIAO RP2040 に対して適切なコンパイルオプションを選択していないことが原因の可能性があります。以下の図を参照して設定を行い、プログラムを再度アップロードしてください。

リソース

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

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

Loading Comments...