M5StickC Plusを使ってMacやiPadのKindleのページを簡単にめくろう!

M5StickC Plusとは?

M5StickC Plusは、ESP32チップを搭載したコンパクトながら多機能を備えた開発ボードです。Wi-FiとBluetooth機能が内蔵されており、1.14インチのカラーディスプレイ、加速度センサー、赤外線エミッター、マイクロフォンなどが組み込まれています。このデバイスを使って、Kindleのページ送りデバイスを作る方法を紹介します。

必要な材料

  • M5StickC Plus (今回はPlus2を使ってます。どれでもOK)
  • USBケーブル
  • PC<M1Mac>(Arduino IDEを使用)

ステップ1: M5StickC Plusの設定

M5StickC PlusをPCに接続し、必要なドライバをインストールします。Arduino IDEが未インストールの場合は、公式サイトからダウンロードしてください。

ステップ2: Arduino IDEでのプログラム環境の設定

Arduino IDEを開き、「M5StickC-Plus」をボードマネージャーからインストールし、ツールメニューから「M5StickC-Plus」を選択します。

ライブラリの導入

「BleKeyboard」と「M5Unified」ライブラリをArduino IDEからインストールします。

BleKeyboard

以下のライブラリー(最新版のZipファイル)をダウンロードします。

Arduino IDEの “Sketch” -> “Include Library” -> “Add .ZIP Library…” と進んで、Zipファイルを選択

M5Unified

M5Unifiedはライブラリマネージャーの検索窓に「M5Unified」と入力して、出てきた候補から「インストール」を押します。

ライブラリの導入は以上です。

ステップ3: スクリプトの解説

Arudino言語を使って、M5StickC Plusのボタンと加速度センサーを使用してKindleのページを送っています。

#include <BleKeyboard.h> // BLEキーボードライブラリをインクルード
#include <M5Unified.h>   // M5Stackライブラリをインクルード

BleKeyboard bleKeyboard; // BLEキーボードオブジェクトの宣言

void setup() {
    auto cfg = M5.config();  // M5Stackの設定を取得
    M5.begin(cfg);           // M5Stackを初期化
    M5.Power.begin();        // M5Stackの電源管理を開始
    bleKeyboard.begin();     // BLEキーボードを初期化
    M5.Display.setBrightness(20); // ディスプレイの明るさを設定
}

void loop() {
    if (bleKeyboard.isConnected()) { // BLEキーボードが接続されているか確認
        M5.update(); // M5Stackの状態を更新
        static unsigned long lastTime = 0; // 最後の時間を記録する変数(未使用)
        float accX, accY, accZ; // 加速度センサー値を格納する変数
        M5.Imu.getAccel(&accX, &accY, &accZ); // 加速度センサーの値を取得

        if (M5.BtnA.wasPressed()) { // ボタンAが押されたか確認
            if (accX > 0) {
                bleKeyboard.write(KEY_RIGHT_ARROW); // 加速度が正の場合、右矢印キーを送信
            } else if (accX < 0) {
                bleKeyboard.write(KEY_LEFT_ARROW); // 加速度が負の場合、左矢印キーを送信
            }
        }
    } else {
        M5.Display.println("Waiting for connection..."); // 接続を待っている状態を表示
        delay(2000); // 2秒待機
    }
}

ステップ4: スクリプトのアップロード

Arduino IDEにスクリプトをコピーし、M5StickC Plusにアップロード「書き込み」をします。その後、M5StickC PlusをmacのBluetoothデバイスとしてペアリングします。

ステップ5: MacとのBluetooth接続

  1. M5StickC Plusにスクリプトをアップロード。
  2. Macのシステム環境設定から「Bluetooth」を選択。
  3. ESP32 Keyboard」が検出されたら「ペアリング」をクリック。
  4. 接続が確立したら、テキストエディタなどでテストします。
  5. iPadでも基本的には同じです。

応用例

このデバイスを使えば、

  1. プレゼンテーションリモコン
  2. 音楽プレーヤーのコントロール
  3. ゲームコントローラー
  4. スマートホームのリモコン

など、送信するキーバインドを変更するだけで、色々応用可能です。

他にもアイデア次第で色々なことができるM5stack。ぜひ楽しんでみてください!!

Shareこの記事をシェアしよう!