ESP32 Bluetoothテスト
JH7UBC 2020.2.7
ESP32のBluetoothのテストをします。
テストのための簡単なスケッチをESP32にコンパイル書き込みをします。
「Hello World!」の文字をESP32側からパソコンにシリアル送信し、パソコンでそれを受信して、表示するスケッチです。
#include "BluetoothSerial.h"
BluetoothSerial SerialBT; void setup() { void loop() { |
ESP32とパソコンをBluetooth接続する必要があります。(したがって、Bluetooth機能を持っていないパソコンではできません。)
ESP32に電源が入った状態でパソコン(Windows10)側からBluetooth接続(ペアリング)の設定をします。
Windows10のウインドウズロゴ→設定→デバイス(Bluetoothとその他のデバイス)と進み
「Bluetoothまたはその他のデバイスを追加する」をクリックするとESP32のBluetoothが検出されます。
この場合、ESP32testを選ぶ(クリック)すると接続(ペアリング)が完了します。
ペアリングが完了するとパソコン側に新たなシリアルポート(COMポート)が開かれます。
ウインドウズロゴで右クリックして、デバイスマネージャーを開きます。
ESO32に接続してるシリアルポート(この場合COM4)の他にBluetooth経由の標準シリアルCOM5とCOM6が新たに加わっています。
Arduino IDEでツール→シリアルポートでCOM6を選び、シリアルモニタを開くとESP32からシリアル通信で
送信された「Hello World!」の文字列を1秒ごとに受信し表示されます。(通信速度は115200bpsにします)
ここで、ちょっとした注意が必要です。ESP32とパソコンとの通信には、COM6を使っていますが、
ESP32にスケッチを書き込むには、Arduino IDEのシリアルポートを本来のESP32とパソコンの接続(この場合COM4)に戻す必要があります。
Bluetooth接続は単なるシリアル通信ですから、TeraTermなどの通信ソフトでもESP32と通信することができます。
TeraTermで受信した画面です。
ESP32とパソコン間でBluetooth接続(ペアリング)ができ、通信できることが確認できましたので、
パソコンからの指示でESP32に接続したLEDを点灯、消灯するスケッチを試してみます。
スケッチです。
#include "BluetoothSerial.h" BluetoothSerial SerialBT; void setup() { void loop() { |
スケッチを書き込み、COM6でシリアルモニタを開き、「1」を送信するとLEDが点灯します。「2」を送信するとLEDは消灯します。
ESP32からは、「LED ON」「LED OFF」といいう文字が送られてきます。
動作を確認することができました。