偉大なるESP-MESH

ESP-MESH

ESP-MESH - ESP32 - — ESP-IDF Programming Guide latest documentation

ESP-MESHは通常のWiFiルーターにoot Nodeが接続して一般的なWiFi規格上で双方向Mesh通信できるようになっている。 各ノードは上位にはStationが接続し、SoftAPが機能している。 f:id:jijiken0417:20210425115536p:plain

更に一般的なネットワークで使われるTCP/IPプロトコルへの接続可用性も残し、

WiFi規格上に独自のESP-MESHパケットを内包する事でMACルーティングテーブルに基づく双方向Mesh通信を可能としている。ルートノードはTCP / IPでルーターと通信する事で外部IPネットワークとの間でパケットを送受信できる f:id:jijiken0417:20210425125512p:plain

・各ノードとルーター間の信号強度に基づくルートノードを動的選択できる。

・親ノードの自己修復ができる。  ”1つ以上の子ノードを持つ親ノードが故障した場合、または親ノードとその子ノード間の接続が不安定になった場合に発生します。ESP-MESHの子ノードは、新しい親ノードを自律的に選択し、それとアップストリーム接続を形成して、ネットワークの相互接続性を維持できる。”

MACアドレスに基づくマルチキャスト通信 ができる。
・動的な物理チャネル切り替えが可能である。

これらにより柔軟な自律ネットワークが構成される。

条件:

“各ノードは、同じメッシュネットワークID、ルーター構成、およびsoftAP構成で構成する必要がある。” メッシュネットワークID、softAP構成を特に変わるもので無いため良い。 各ノードでルーター構成を同じにするという事はルーターが1台の場合には問題ないが、複数の場合には接続先のルーター情報(SSID/PW/暗号化方式)を同じにしておく必要があるという事だ。

WiFiテザリングとの違い:

上位WiFiルーターに接続しているWindowsPCやスマホテザリングを数珠繋ぎにする構成だと、上位から下位以下へ接続ができない。これは基本的にはRouting tableが無いためだ。勿論ファイアウォールで制限されている可能性もある。SSIDを選択しなければ接続できないため、完全自動でリーフノードが最上位へ接続できるわけではない。

考察

 物理チャネルはSTAとSoftAPで同一チャネルとなってしまうのか?分けられないのか?