IoTなどの試作・実験用のキーモジュールとして開発されました。
ご自身ではんだ付けするキットです。ESP32-DEVKITCは別売りです。
ネットショップ:
ESP32-DEVC-KEY(組み立て例:別売りのESP32-DevKitCを含む)
ESP32-DEVC-KEY(部品一覧)
部品はスルーホール部品のみですので、簡単にはんだ付けすることができます。
ESP32-DEVC-KEY(組み立て例)
我々が使用したESP32-DevKitCでは、スケッチの自動書き込み機能がうまく機能しませんでした。
ENとGND間に0.1uFのコンデンサを追加することにより、スケッチの自動書き込みが問題なく行えるようになりました。
注:以下の写真に写っているESP32-DEVKITC, OLEDディスプレイ、ブレッドボードはキットには含まれていません。
ESP32-DEVC-KEY(OLEDディスプレイの接続)
OLEDディスプレイを接続できるコネクタを装備しており、ボードの状態や、ネットから取得した情報などを文字表示だけではなく、グラフィック表示で示すことができます。
機能及びピン配置が合致する標準的なOLEDディスプレイとしては、以下のモジュールを推奨します。
http://store.shopping.yahoo.co.jp/microfan/oled096-128x64-i2c-blue.html
OLEDディスプレイの利用には、U8g2ライブラリを使用することができます。
U8g2ライブラリは、以下のURLからダウンロードできますが、Arduino IDEのライブラリマネージャで簡単にインストールすることができます。
https://github.com/olikraus/u8g2
U8g2ライブラリの前身のU8gライブラリは、組込み用MCUの少ないRAMでも利用できるようにするために、少々変則的な利用法となっていましたが、U8g2ライブラリでは、ESP-WROOM-32のように十分なRAMが組み込まれた最近のMCU用に、素直な利用法が行えるfull_buffer方式が利用できるようになっています。
ESP32-DEVC-KEY(OLEDディスプレイの表示例)
U8g2ライブラリのデモプログラムを利用したOLEDの表示例です。
full_bufferバージョンの利用例で、以下の様なコンストラクタを利用しています。
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
テキスト専用のu8x8ライブラリを利用する場合には、以下の様なコンストラクタを利用します。
U8X8_SSD1306_128X64_NONAME_HW_I2C u8x8(/* reset=*/ U8X8_PIN_NONE);
ESP32-DEVC-KEY(5VのI2Cデバイスの利用)
5V電源で稼働するI2C接続のドットマトリックスLEDを接続・表示した例です。
この例では、ライブラリはAdafruit LED Backpack Library を使用しています。
ライブラリは、Arduino IDE のライブラリマネージャでインストールすることができます。
ESP32-DEVC-KEY(WS2812の利用)
カラーLEDのWS2812を接続・表示した例です。
この例では、下記のプログラムを利用しました。
https://github.com/MartyMacGyver/ESP32-Digital-RGB-LED-Drivers
まだ実験的な実装の様ですが、ESP32のRMT機能を利用したもので、問題なく稼働しました。
WS2812を利用する際には、WS2812がかなり明るいことと、一つ当たり最大で60mA程度消費するため、以下のような注意が必要です。
ESP32-DEVC-KEY(ブレッドボードへの取り付け)
ESP32-DEVC-KEY(回路図)