0

我想使用 esp32 构建网状网络以创建智能家居。你推荐使用官方的 espressif 解决方案 (ESP-MDF)吗?还是应该使用与 Arduino 框架兼容的PainlessMesh库?

阅读 espressif 的文档,它指出您最多可以连接 1000 个节点:

网络容量大:ESP-MESH采用树形拓扑结构,单台设备最多可以连接10台设备,整个网络可以有1000多个节点。

视频:

ESP-MDF: https ://www.youtube.com/watch?v=MWgp4BbkPcY

PainlessMesh 库: https ://www.youtube.com/watch?v=gf39MLqPGkQ&t=42s

限制:

PainlessMesh 库:https ://github.com/gmag11/painlessMesh/blob/master/README.md#limitations-and-caveats

ESP-MDF:一台设备最多可以连接10台设备。(我假设 PainlessMesh 库也存在此限制。

问题:

  1. 通过阅读文档和视频,使用 PainlessMesh 库要简单得多。该库是否使用 ESP-MDF?

  2. 如果我将根节点连接到有互联网的路由器,我是否能够扩展我的 WiFi 信号,以便在目前没有 WiFi 覆盖的房屋部分有互联网?这可能同时使用 ESP-MDF 和 PainlessMesh 吗?

  3. 你推荐什么方法?如果我采用更难的方法(ESP-MDF),如果我决定添加更多智能设备,这是否会在未来打开新的大门?目前我只有 7 个智能家居设备,所以 PainlessMesh 库现在可能会很好用。但是,如果我决定将来添加更多设备,是否值得学习 ESP-MDF?

4

1 回答 1

1
  1. 不,painlessMesh 使用 ESP8266/ESP32 SDK、ArduinoJson 和 ESPAsyncTCP(ESP8266)/AsyncTCP(ESP32) 实现他们的网状网络。查看更多信息:https ://gitlab.com/painlessMesh/painlessMesh/-/tree/master/
  2. 不,两个库都将 WiFi 用于网格,因此它不能用于 AP 访问,可以在同一板上使用两个 ESP 在应用层上实现,但只有一个是不可能的。
  3. painlessMesh 它是无痛的,因此开发起来会更快,但始终依赖于 Arduino.h。ESP-MDF 允许更多设备,它更快、更可靠、可以连接互联网并且不依赖于 Arduino.h,但需要更多时间来配置和编码。在我看来,如果您 100% 确定 painlessMesh 对您的应用程序来说已经足够了,或者您不确定是否甚至需要一个网状网络,那么请使用 painlessMesh(不要浪费时间只等待代码);如果您不确定 painlessMesh 是否足够,请选择 ESP-MDF。
于 2021-10-12T23:03:33.037 回答