Home Made Garbage

M5Stack ATOM Matrix を Blynk で堪能

お父ちゃん お父ちゃん  2020.4.22 
ホーム
電子工作
Raspberry Pi
IOT
WEB

M5Stack ATOM Matrix をスマホアプリBlynkで無線制御(今回はBLE)してみましたのでご報告します。

 

 

BlynkによるLED色制御

まずは動きをご覧ください。
スマホのBlynkアプリのzeRGBaウィジェットから色信号をBLEで M5Stack ATOM Matrix に送信してLEDの色を変えています。

 

ここではさらにBlynkアプリから色情報に加えて文字を送ってM5Stack ATOM Matrixにスクロール表示させてみたいと思います。

 

Blynkアプリ

スマホにBlynkアプリをインストールします。
アカウント登録が必要です。
 https://blynk.io/en/getting-started

現在(2020/4/22) Blynkアプリのバージョンは2.27.15です。

プロジェクト設定

新規プロジェクトを作成します。HARDWRE MODELはESP32 Dev Boardを選択。
CONNECTION TYPEはBLEを選択しました。もちろんWiFi通信も可能です。
AUTH TOKENはArduinoコード作成時に使用します(アカウント登録したメールアドレスに送信されます)。

 

BLEとzeRGBa、Text Inputウィジェットを配置します。

 

zeRGBaウィジェットでLEDの色を設定できるようにします。
OUTPUTはMERGEを選択。それぞれ最小値0、最大値255とします。
SEND ON RELEASEはOFFにして随時データ送信できるようにします。
ここではヴァーチャルピンV0に出力するようにしました。

 

Text Inputウィジェットで表示する文字を設定します。
ここではヴァーチャルピンV1に出力するようにしました。

Arduinoコード 

以下のBlynkのArduino用ライブラリを使用してプログラムしました。バージョンは0.6.1。
 https://github.com/blynkkk/blynk-library

またM5Stack ATOM MatrixのLEDに文字を表示するためにFastLED_NeoMatrixライブラリを使用しました。
FastLED NeoMatrixライブラリを使用するためには Adafruit-GFX なども必要となります。
Arduino IDEのライブラリマネージャでFastLED NeoMatrixをインストールすれば必要なライブラリも同時にインストールされます。
現在(2020/4/22) FastLED NeoMatrixライブラリのバージョンは1.1.0です。

[スケッチの例] -> [Blynk] -> [Boards_Bluetooth]-> [ESP32_BLE]を参考にコードを作成しました。 

また表示用のフォントとして Adafruit-GFXライブラリのOrg_01フォント を使用しています。

 

LEDの輝度は20設定しました(L. 68)。

ヴァーチャルピンV0でBlynkアプリからのLED色情報を取得して、
ヴァーチャルピンV1でText Inputウィジェットの文字データを受信します。

L. 24~26でLEDマトリクスの設定をしております。
マトリクスの幅や高さ(5 × 5)、構成をここで指定します。
詳細は以下を参照ください。
 https://github.com/marcmerlin/FastLED_NeoMatrix

またFastLED NeoMatrixライブラリはAdafruit NeoMatrixライブラリとほぼ同じなので以下も参照ください。

Adafruit NeoMatrixライブラリを堪能

 

Blynk BLE接続 

BlynkプロジェクトのBLEウェジットをクリックして設定します。

 

“Connect BLE device”をクリックして “Blynk”が表示されたら選択しOKをクリックして接続する。

 

動作

 
 
 
 
 
この投稿をInstagramで見る
 
 
 
 
 
 
 
 
 

M5ATOM with Blynk

HomeMadeGarbage(@homemadegarbage)がシェアした投稿 –

 

簡単に文字と色情報をBLE送信し、表示することができました♪
色々応用できそうですね!!

 

Related Posts

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください