M5Stackでできること 〜BluetoothでPCにデータを送信する

スポンサーリンク
お役立ち情報

M5Stackで取得したデータを、Arduino IDEの「シリアルプロッタ」でグラフ表示するケースがあります。
USBケーブルでM5Stackとパソコンをつないだ状態で、Arduino IDEの「シリアルプロッタ」を開き、M5Stackから「Serial.println」などで数値データを書き出すと、その数値データが「シリアルプロッタ」上でグラフ表示されるというものです。

さて、このような使い方をする際には、用途によってはM5Stackをパソコンから少し離れた場所に置いておきたいことがあります。
M5StackとパソコンをUSBケーブルでつないでいると、M5Stackの設置場所に制約が生じてしまうため、Bluetoothを使ってM5Stackから数値データを書き出し、それを「シリアルプロッタ」でグラフ表示してみたいと思います。


「Bluetooth Serial」というライブラリを使います。

スケッチは以下のとおりです。

#include <M5Stack.h>
#include "BluetoothSerial.h"

BluetoothSerial bts;

void setup() {
  M5.begin();
  bts.begin("MSR IoT Device");
  M5.Lcd.setTextColor(WHITE);
  M5.Lcd.setTextSize(1);
  M5.Lcd.setTextDatum(4);
}

void loop() {
  int value = random(0, 1000);
  M5.Lcd.fillScreen(BLACK);
  M5.Lcd.drawNumber(value, 160, 120, 8);
  bts.println(value);
  delay(1000);
}

1秒毎にランダムな数値(0〜999)を取得し、その数値を「Bluetooth Serial」を使って書き出しているだけのものです。

このスケッチをM5Stackに書き込みます。

パソコン(今回はMacを使っています)の「システム設定」>「Bluetooth」で「Bluetooth」を「ON」にし、検出されたBluetoothデバイスのうち「MSR IoT Device」の「接続」をクリックします。
「MSR IoT Device」の接続状況が「接続済み」となったら接続できています。

Arduino IDEの「ツール」>「シリアルポート」で「/dev/cu.MSRIoTDevice」を選択します。

Arduino IDEの「ツール」>「シリアルプロッタ」をクリックし、「シリアルプロッタ」を開くと、M5Stackから書き出された数値データがグラフ表示されます。

Windows PC(Windows 11)の場合は、「設定」>「Bluetoothとデバイス」>「デバイスの追加」>「Bluetooth」で「MSR IoT Device」をクリックして接続した後、Arduino IDEの「ツール」>「シリアルポート」で「COM*」を選択すれば、同様にグラフ表示できます。

M5Stackをパソコンにつないでいなくても、M5Stackの状況をパソコンから確認できるので、いろいろと便利な使い方ができそうです。

 

なお、私がM5Stack、M5StickCの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。


ごく基本的なところから、かなり複雑なスケッチや、ネットワーク接続など、比較的高度なものまで、つまづかずに読み進めていけるような構成になっており、大変わかりやすい本です。