センサーごとに新しい ESP32 を購入するのはやめましょう – Bluetooth プロキシには予備のピンがあります
ESP32 ボードは信じられないほど安価です。非常に安価なので、プロジェクトを構築するたびに新しいボードを使用する習慣がつきがちです。そうすると、一度に複数のジョブを処理できる ESP32 の機能が無駄になる可能性があります。
Bluetooth プロキシはまだ汎用 ESP32 です
それが単なる代理人であれば、テーブルの上にお金を残しておくことになります
Bluetooth プロキシは、セットアップできる最も単純な ESP32 プロジェクトの 1 つです。 Bluetooth プロキシを使用すると、スマート ホーム サーバーがサーバー自体の Bluetooth 範囲外にある場合でも、Bluetooth デバイスと通信できるようになります。 Bluetooth プロキシは Bluetooth 経由でデバイスと通信し、Wi-Fi 経由でスマート ホーム サーバーに情報をやり取りします。
多くの ESP32 ボードには Bluetooth と Wi-Fi が搭載されているため、通常は追加のハードウェアは必要ありません。 ESPHome には、Bluetooth プロキシとして機能する関連コードを ESP32 にフラッシュするために使用できる既製のプロジェクトがあるため、ESP32 をコンピュータに接続して指示に従うだけで簡単です。
ESP32 が Bluetooth プロキシとして動作できるファームウェアを実行しているからといって、それだけで機能できるわけではありません。これはまだ ESP32 であり、それを使ってできることがさらにたくさんある可能性があります。
ESPHome により、Bluetooth プロキシに複数のジョブを実行させることができます
同じ構成にセンサーを追加できます
多くの ESP32 ボードには汎用入出力 (GPIO) ピンが付属しています。これらは、Raspberry Pi のピンと同様に、マイクロコントローラーが外部ハードウェアと対話できるようにする物理接続です。 GPIO ピンは、スイッチが開いているか閉じているかを判断するなどの単純な操作や、高度なセンサー モジュールとの通信などのより複雑な操作を行うことができます。
ESP32 を Bluetooth プロキシとして設定するには、これらのピンを使用する必要はありません。 ESP32 を Bluetooth プロキシとしてのみ使用している場合、その可能性の多くが無駄になります。これは、ESPHome を使用すると、複数のジョブを実行するように ESP32 をセットアップできるためです。
を追加すると、 bluetooth_proxy ESPHome 構成にコンポーネントを追加するだけでなく、ESP32 が複数のジョブを実行できるようにする追加コンポーネントを含めることもできます。たとえば、GPIO ピンに接続するセンサーを公開するコンポーネントを追加できます。
これは、1 つの ESP32 を Bluetooth プロキシとして使用し、別の ESP32 をセンサーへの接続に使用する必要がないことを意味します。同じ ESP32 を使用して両方のジョブを実行できます。
予備のピンを使用すると、驚くほど便利なセンサーを追加できます
1 台の ESP32 で複数の専用デバイスを置き換えることができます
これはまさに私が自宅でやっていることです。私はしばらくの間、自宅の周囲で ESP32 ボードを Bluetooth プロキシとして使用してきました。私は、Home Assistant サーバーから直接接続するには遠すぎる SwitchBot フィンガー ロボットと通信するために 1 つを使用しています。
また、バミューダ統合で使用するものを家の周りにさらにいくつか配置しています。この統合により、各 Bluetooth プロキシで iPhone と Apple Watch からの信号強度が測定されます。この統合により、これらのデバイスがどの部屋にあるかを推定できるため、自動化で使用できる部屋ベースの存在検出が効果的に得られるほか、携帯電話を置き忘れたときにいつでもアシスタントに場所を尋ねることができます。
当初、これらの ESP32 は純粋に Bluetooth プロキシとして使用されていましたが、それはその可能性の無駄であることにすぐに気づきました。これらの ESP32 の一部に安価な土壌水分センサーを追加し、GPIO ピンに接続しました。現在、私の Bluetooth プロキシには土壌水分モニターとしての 2 つの役割もあり、そのデータをホーム アシスタントにフィードバックして、植物に水やりが必要なときにいつでも警告を受け取ることができるようにしています。
これは、すでに別のジョブを実行している ESP32 に追加できるもののほんの一例です。温度および湿度センサー、接触センサー、ミリ波プレゼンスセンサーなど、あらゆる種類の便利なセンサーを追加できます。使用しているセンサーと利用可能なピンによっては、ESP32 に複数のセンサーを追加できる場合があり、さらに便利になります。
すべての予備に見えるピンが実際には予備であるわけではありません
何かを接続する前にボードを確認してください
ESP32 には多くのセンサーを追加できますが、利用可能なすべての予備ピンに何かを接続できるという意味ではありません。 ESP32 ボードが異なれば、使用可能なピンも異なり、配置が大きく異なる場合があります。
一部の ESP32 ピンは、デバイスの起動方法の決定など、特定の目的に役立ちます。これらのピンにセンサーを接続すると、ESP32 が正しく起動しない可能性があります。ランダムなセンサーをランダムなピンに接続することはできません。
これらのピンは 3.3V ロジックも使用するため、ボードがより高い電圧を受け入れることができる場合でも、GPIO ピンは 5V 信号を安全に受け入れられない可能性があります。 ESP32 ボードのピン配置図を注意深く確認して、センサーに使用できるピンと、センサーの電圧と配線の要件を判断してください。多くの場合、答えは通常かなり単純で、適切なワイヤを適切なピンに接続するだけですが、後悔するよりは安全を確保した方が良いでしょう。
ESP32 を最大限に活用する
ESP32 ボードが 1 つのジョブのみを実行している場合は、それらのボードをさらに活用できる可能性があります。処理できるマルチタスクの量には制限がありますが、多くの場合、ESP32 が既存のタスクの実行を継続するのを妨げることなく、単純なセンサーを追加できます。
このテーマについてさらに詳しく知りたい方は以下をご覧ください