ESP-IDF 例程——MESH组网

10. mesh 目录

10.1 internal_communication

字段 描述
例程名称 mesh 内部通信示例
所在文件夹路径 examples\mesh\internal_communication
核心功能说明 演示如何使用 mesh API 设置 mesh 网络、在 mesh 网络上发送和接收消息,以及实现基于 mesh 的灯光控制应用
主要调用的内部/外部函数或模块 - ESP-MESH API
  • WiFi 驱动
  • 事件处理系统
  • 支持 ESP32、ESP32-C3、ESP32-C5、ESP32-C6、ESP32-C61、ESP32-S2、ESP32-S3 芯片 |
    | 输入输出参数说明 | 配置参数:
  • mesh 网络通道
  • 路由器 SSID 和密码
  • mesh softAP 设置

输出结果:

  • mesh 网络状态变化
  • 设备层级信息
  • 消息发送和接收状态
  • 灯光控制命令执行结果
  • RGB 灯颜色变化(ESP-WROVER-KIT 板) |
    | 适用场景及典型应用案例 | - 基于 mesh 的灯光控制系统
  • 智能家居设备网络
  • 传感器数据采集网络
  • 工业自动化控制系统
  • 大型场馆的无线网络覆盖
  • 物联网设备的自组织网络 |

10.2 ip_internal_network

字段 描述
例程名称 mesh IP 内部网络示例
所在文件夹路径 examples\mesh\ip_internal_network
核心功能说明 演示如何使用 mesh 创建支持 IP 的子网络,结合 MQTT 实现节点间通信和外部网络连接
主要调用的内部/外部函数或模块 - ESP-MESH API
  • WiFi 驱动
  • 事件处理系统
  • MQTT 客户端
  • 实验性 NAT 功能
  • DHCP 服务器
  • 支持多种 ESP32 芯片 |
    | 输入输出参数说明 | 配置参数:
  • mesh 网络通道
  • 路由器 SSID 和密码
  • mesh softAP 设置
  • MQTT 服务器配置

输出结果:

  • mesh 网络状态变化
  • 内部 IP 地址分配
  • MQTT 连接状态
  • 节点层级和 IP 信息发布
  • 路由表更新
  • 事件通知和消息传递 |
    | 适用场景及典型应用案例 | - 支持 IP 的 mesh 网络
  • 物联网设备的远程监控和控制
  • 传感器网络的数据采集和上传
  • 智能家居系统
  • 工业物联网应用
  • 大型建筑的网络覆盖 |

10.3 manual_networking

字段 描述
例程名称 mesh 手动组网示例
所在文件夹路径 examples\mesh\manual_networking
核心功能说明 演示如何禁用 ESP-MESH 的自组织网络功能,手动为节点选择和设置父节点,实现手动组网
主要调用的内部/外部函数或模块 - ESP-MESH API
  • WiFi 驱动
  • 事件处理系统
  • 支持多种 ESP32 芯片 |
    | 输入输出参数说明 | 配置参数:
  • mesh 网络通道
  • 路由器 SSID 和密码
  • mesh softAP 设置

输出结果:

  • mesh 网络状态变化
  • 父节点扫描和选择结果
  • 节点层级信息
  • RGB 灯颜色变化(ESP-WROVER-KIT 板) |
    | 适用场景及典型应用案例 | - 需要精确控制网络拓扑的场景
  • 特殊环境下的网络部署
  • 测试和调试 mesh 网络
  • 小型固定网络拓扑
  • 工业控制网络 |

10.4 技术要点

  • mesh 网络特性

    • 支持自组织网络和手动组网
    • 节点自动分层(根节点、子节点等)
    • 支持多跳通信
    • 节点故障自动恢复
    • 动态路由表更新
  • 通信方式

    • 低级别 mesh 消息发送/接收 API
    • IP 内部网络通信
    • MQTT 消息发布/订阅
    • 支持 IPv4(不支持 IPv6-only 配置)
  • 网络配置

    • 根节点通过 WiFi STA 连接到外部路由器
    • 根节点创建内部子网并运行 DHCP 服务器
    • 子节点通过 mesh 连接到根节点
    • 实验性 NAT 功能实现地址/端口转换
  • 设备层级指示

    • ESP-WROVER-KIT 板上的 RGB 灯显示设备层级
    • 根节点:粉色
    • 2 层:黄色
    • 3 层:红色
    • 4 层:蓝色
    • 5 层:绿色
    • 5 层以上:白色

10.5 构建与运行

所有 mesh 例程的构建方法基本一致:

  1. 配置项目:idf.py menuconfig
  2. 设置 mesh 网络参数、路由器信息和其他配置
  3. 构建项目:idf.py build
  4. 烧录到多个开发板:idf.py -p PORT flash monitor
  5. 观察 mesh 网络的形成和节点间通信

10.6 应用场景总结

  • internal_communication:适用于基于 mesh 的设备间直接通信,如灯光控制系统
  • ip_internal_network:适用于需要连接外部网络的 mesh 网络,结合 MQTT 实现远程监控
  • manual_networking:适用于需要精确控制网络拓扑的场景

这些例程展示了 ESP-MESH 技术的多种应用方式,从简单的设备间通信到复杂的 IP 内部网络,满足不同场景下的 mesh 网络需求。开发者可以根据自己的应用场景选择合适的例程作为基础,进行二次开发和扩展。


ESP-IDF 例程——MESH组网
https://blog.zhaosn.top/ESP32-examples/10.mesh/
作者
Zhao SN
发布于
2026年1月21日
更新于
2026年1月21日
许可协议