このページの目次
ショップ
製品概要(新バージョン)
新バージョンと旧バージョンの構成には基本に変更はありません。変更部分は以下の通りです。
- ESP32Eのフラッシュ容量が8MBから4MBになった。
- タクトスイッチの形状が変更された。
- 部品の配置が若干変更された。
- HUB75のコネクタとして、ケーブル利用もできるように雄コネクタが追加された。
- 旧バージョンでは利用者がはんだ付けするいくつかの部品がはんだ付けされた。
情報は以下の旧バージョンのものをご参照ください。
ショップ
取扱説明書
製品概要(旧バージョン)
鮮やかな色で文字や画像を表示できるLED マトリックスパネルが広く使われるようになり、LED マトリックスパネルを手軽に制御できる高性能なコントローラが求められています。
ESP32LEDMINI-R1 はESP-WROOM-32 を中核に、HUB75(E) インターフェースを使用するLED マトリックスパネルを手軽に利用できるように開発されたコントローラボードです。
ESP32-LEDMINI-R1 はLED マトリックスパネルの裏面のHUB75 コネクタに直付けすることも可能で、手軽に使用できます。また、LED マトリックスパネルの表示制御は、Arduino IDE を使用して、プログラミングすることができます。
さらに、ESP-WROOM-32 はWiFi などの無線ネットワーク機能を持っているため、インターネットやスマートフォンからLED マトリックスパネルを制御したり、インターネット上の各種のサービスに接続し、リアルタイムで様々な情報を表示するシステムを作成することも可能です。
ESP32-LEDMINI-R1 はLED マトリックスパネルを初めて使用する人や、それを利用して多様なアプリケーションを作成・使用したい人に最適なコントローラボードです。
LED マトリックスパネルコントローラとしての特徴
ESP32-LEDMINI-R1 はLED マトリックスパネルコントローラとして以下のような特徴を持っています。
- HUB75(E) インターフェースを利用した、1/16 または1/32 スキャンのLED マトリックスパネルを制御することができます。
- 信号電圧が3.3V のESP-WROOM-32 から、信号電圧が5V のHUB75(E) を適切に制御するために、信号電圧の変換回路を備えており、HUB75(E) を安定して制御できます。
- 複数枚のLED マトリックスパネル(ESP-WROOM-32 のメモリによる枚数制限はあります)を接続 して制御することもできます。
- LED マトリックスパネルの使用時に、USB コネクタにLED マトリックスパネルが必要とする大容量の電流が流れないように安全回路が組み込まれています。
- 電子工作で広く利用されているArduino などの無償、便利、高機能な開発環境を利用してLED 表示用のソフトウェアを開発できます。
- LED マトリックスパネルの制御用のライブラリ(ESP32-HUB75-MatrixPanel-DMA)は、ライブラリマネージャを使用してArduino IDE に簡単に組み込むことができます。
- 上記のライブラリは、LED マトリックスパネルへの高頻度のデータの伝送にDMA を使用しているのでCPU の負担はほとんどなく、CPU の能力のほとんどをLED マトリックスパネルの表示以外の処理に振り向けることができます。
- 圧電スピーカーを搭載しており、LED での表示に合わせて音を出すことができます。
- 温度や湿度等のセンサーを搭載することができ、その計測値をLED 表示に利用することができます。
ESP32-LEDMINI-R1 を使用してP2.5 128x64 ピクセルのLED マトリックスパネルに表示を行った例を図に示します。
ESP-WROOM-32 開発ボードとしての特徴
またESP32-LEDMINI-R1 は、ESP-WROOM-32 を使用した開発ボードとして以下のような特徴を持っています。
- ESP32 のE バージョンの8M 版を搭載しています。
- 高性能の32 ビットマイクロプロセッサを搭載することで、Arduino UNO R3 などと比較して高速な処理が行えるとともに、大容量のFLASH(8M) とRAM を利用できます。
- ネットワークと接続するためのWiFi やBluetooth のネットワーク機能を利用できます。
- Arduino IDE で作成したスケッチを書き込むためのUSB インターフェースを装備しています。
- ドロップアウトが300mV と少ない1.5Aの電圧レギュレータを搭載し、ESP-WROOM-32 に安定した電源を供給できます。
- ESP-WROOM-32 の信号線がピンヘッダーを取り付け可能な端子列に引き出されており、LED 表示以外の機能を拡張することができます。
- 様々な情報を表示できるOLED ディスプレイ(別売) を搭載することができます。
ESP32-LEDMINI-R1 の特徴
HUB75(E) インターフェース
ESP32-LEDMINI-R1 には、LED マトリックスパネル制御のスタンダードとなっているHUB75(E) 用のコネクタが装備されています。このコネクタはコントロール基板の裏側に取り付けられており、LED マトリックスパネルのHUB75(E) コネクタに直接差し込んで接続し使用することができます。
電力供給源
ESP32-LEDMINI-R1 には、以下の3種類の電力供給源があります。
- USB
- AC アダプタソケット
- ターミナルブロック
USB によって供給された電力は、ESP-WROOM-32 を中心とするコントローラの電子回路のみに電力が供給され、LED マトリックスパネルには電力は供給されません。
一方、AC アダプタソケットおよびターミナルブロックに供給された電力は、ESP32-LEDMINIR1の電子回路だけでなく、LED マトリックスパネルにも電力供給されます。
これは、USB から過大な電力(電流)を取得することがないように、ESP32-LEDMINI-R1 の電源回路に安全回路が組み込まれているためです。
スケッチ例
64x32パネルにBME280の計測結果を表示する例
P4の64x32のLEDパネルに、BME280で計測した温度・湿度・気圧を表示するスケッチの例を示します。
#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
#include <BME280I2C.h>
#include <Wire.h>
#define RES_X 64
#define RES_Y 32
#define CHAIN 1
MatrixPanel_I2S_DMA *dma_display = nullptr;
BME280I2C bme;
void setup() {
HUB75_I2S_CFG mxconfig(RES_X, RES_Y, CHAIN);
// Display Setup
dma_display = new MatrixPanel_I2S_DMA(mxconfig);
dma_display->setBrightness8(128); // range is 0-255, 0 - 0%, 255 - 100%
dma_display->begin();
Wire.begin();
while (!bme.begin()) {
delay(1000);
}
}
void printValue(double v, char *unit, uint16_t color) {
dma_display->setTextColor(color);
if (v < 100)
dma_display->print(" ");
else if (v < 1000)
dma_display->print(" ");
dma_display->print(v);
dma_display->println(unit);
}
void loop() {
float temp, hum, pres;
BME280::TempUnit tu(BME280::TempUnit_Celsius);
BME280::PresUnit pu(BME280::PresUnit_hPa);
bme.read(pres, temp, hum, tu, pu);
dma_display->fillScreen(0);
dma_display->setCursor(0, 0);
printValue(temp, "'C", dma_display->color565(0, 255, 0)) ;
printValue(hum, "%", dma_display->color565(255, 0, 0)) ;
printValue(pres, "hPa", dma_display->color565(0, 0, 255)) ;
delay(2000);
}
回路図
ESP32-LEDMINIの各種のプログラミング情報を提供しています。
関連製品
P4 64 X 32 LEDパネル
弊社で最も人気のある手ごろなピクセル数のLEDパネルです。
P3 64 X 64 LEDパネル
弊社で人気のある大きめのピクセル数のLEDパネルです。