UARTおじさんの帰還

※ この記事は極めて偏った超保守的思想で書かれています。

BLEとはなんぞやというような話は2010年代にさんざん聞かされたし、その概念が分からないわけではないけども、ゼロベースで素直に考え直せばUART/SPPのほうが適しているケースも多いのです。

しかしそうは言ってもコスト面の問題があります。UARTおじさん御用達のRN42が2000円以上するのに対してBLEモジュールは1000円を切ることもあります。

そこでM5Stamp Picoですよ! こいつはSPPもできて800円台ですから。
UARTおじさんはRN42の代替にM5Stamp PicoでSPPやろうぜ!
(量産に使えるかはさておき。あと消費電力の問題もあるけど。)

f:id:licheng:20211125193935j:plain:w640

サンプル

UARTとSPPをブリッジするArduinoスケッチ

#include "BluetoothSerial.h"

BluetoothSerial SerialBT;

void setup() {
  Serial.begin(115200);
  SerialBT.begin("ESP32");
  delay(500);
}

void loop() {
  if(Serial.available()){
    SerialBT.write(Serial.read());
  }
  if(SerialBT.available()){
    Serial.write(SerialBT.read());
  }
}

補足

WebSocketみたいな迂遠で珍妙なプロトコルを平気で使っていながらBLEで16進文字列を送ることを非難するのはダブルスタンダードだと思ってます。もっとも、ちょっと大きめのデータを送ると破綻するようなオレオレなんちゃってBLEシリアル通信は論外です。若者はJSONが好きなので、SPPでシリアル通信すれば良いと思います。