スマホからESP32を操作したいと思ったところ、Blynkというアプリを使うとESP32を操作できるという記事を見つけました。
前提
- arduino ide が使える
- blynkがダウンロードできる
使ったデバイス
- iPhone 8
- ESP32 WROOM 32
- LED ライト1つ
- 300オーム抵抗1つ
配線は以下のようにします。IO21にLEDをつけて、330オームの抵抗で続けます。
Blynkの設定
まず New projectで新しいプロジェクトを作成します。
esp32 demoという名前にしてデバイスはESP32 Dev Boardを選びます。Connection TypeはBLEです。
プロジェクトが作成されるとメールが送信されるはずです。このメールに書かれている認証トークンをソースコードで使います。
ボタンを以下のように右のサイドバーから追加します。
ボタンを押して、設定を選びます。ピンをとりあえずDigitalのGP21に設定します。他は何もいじりません。
続いてBLEボタンを右のサイドバーから選びます。
ソースコード
ソースコードの your auth
にはメールで届いたトークンを記述してください。
//Blynk で リモートLチカ
# define BLYNK_PRINT Serial
# define BLYNK_USE_DIRECT_CONNECT
# include <BlynkSimpleEsp32_BLE.h>
# include <BLEDevice.h>
# include <BLEServer.h>
char auth[] = "your auth";
void setup(){
pinMode(21, OUTPUT);
Serial.begin(9600);
Serial.println("Waiting for connections...");
Blynk.setDeviceName("L-chika");
Blynk.begin(auth);
}
void loop(){
Blynk.run();
}
アップロードがすんだら、ESP32のBLE信号の発信が始まります。
走らせる
これでBlynkの右上のボタンを押すと、自動的にBLEの接続をしてくれます。
これでボタンを実際に押してみると、以下のように対応したLEDが光ります!