はじめに
この記事はカヤックUnity アドベントカレンダー2018の5日目の記事になります。
こんにちは!デバイスエンジニアの宮野です。
今日はBluetooth内蔵のマイコンボードESP32とUnityを接続してシンプルなコントローラを作成します。 Bluetooth Serial通信でUnityにボタン情報を送り、Unity側でその情報をもとに画面上のオブジェクトを操作します。
環境と用意するもの
- Windows 10 PC
- Unity 2018.2.7f1
- Arduino IDE 1.8.7
- ESP32開発ボード
- 両面スルーホールユニバーサル基板
- タクトスイッチ
- 工具、材料類(はんだごて、はんだ、すずめっき線等)
Arduino IDEとESP32のセットアップ
1.Arduino IDEでESP32が使えるようにする
Arduino IDEを立ち上げ、ファイル > 環境設定を開きます。
追加のボードマネージャのURL:にhttps://dl.espressif.com/dl/package_esp32_index.jsonを入力してOKを押します。
ツール > ボード > ボードマネージャを開きます。
検索窓にesp32と入力し、esp32 by Espressif Systemsをインストールします。
2. テストプログラムの書き込み
arduino-esp32/SerialToSerialBT.ino at master · espressif/arduino-esp32やESP32でserial bluetooth接続 - Qiitaを参考に以下のプログラムを打ち込みます。
ファイル > スケッチ例 > BluetoothSerial > SerialToSerialBTからもサンプルプログラムを参照できます。
#include "BluetoothSerial.h" #if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED) #error Bluetooth is not enabled! Please run `make menuconfig` to and enable it #endif BluetoothSerial SerialBT; void setup() { SerialBT.begin("ESP32"); //Bluetooth device name } void loop() { SerialBT.println("Hello"); delay(1000); }
ESP32をUSBポートに接続して、ツール > ボード:でESP32 Dev Moduleを選択し、シリアルポートでESP32が接続されているポートを選びます。
その他の設定は変更していません。
スケッチ > マイコンボードに書き込むを押し、プログラムを書き込みます。
書き込みが完了すると、IDEの下のほうにボードへの書き込みが完了しました。というメッセージが表示されます。
3. テストプログラムの確認
Windowsメニューの設定からデバイスを選択しBluetoothまたはその他のデバイスを追加するを押します。
デバイスを追加するでBluetoothを選択します。
先ほど書き込んだプログラムで指定したデバイス名(今回は)ESP32を選択してペアリングします。