谷动谷力
标题: ESP-WIFI-MESH 开发框架 ESP-MDF 开发环境搭建 说明 [打印本页]
作者: 鸣涧 时间: 2022-12-2 11:47
标题: ESP-WIFI-MESH 开发框架 ESP-MDF 开发环境搭建 说明
ESP-WIFI-MESH 开发框架 ESP-MDF 开发环境搭建 说明注意事项
该版本的 MDF 基于 IDF master 分支,不建议用在产品开发上,如果寻求稳定版 MDF,建议使用 release/v1.0 分支。
MDF master 分支已支持 ESP32S2。但以下示例暂时无法在 ESP32S2 上使用,后续将会逐步为 ESP32S2 适配- function_demo/mconfig
- development_kit/buddy
- development_kit/button
- development_kit/light
- development_kit/sense
- wireless_debug
ESP-MDF (Espressif Mesh Development Framework) 是基于
ESP32 芯片的
ESP-WIFI-MESH 开发框架。ESP-WIFI-MESH 是一种基于 Wi-Fi 构建的 MESH 网络通信协议。
概述
ESP-MDF 在
ESP-WIFI-MESH 协议栈的基础上增加了配网、升级、调试机制及应用示例。使用 ESP-MDF 您可以快速上手 ESP-WIFI-MESH 开发。其主要特点如下:
- 快速配网:在 app 配网的基础上增加了设备间链式配网,以实现大范围快速配网;
- 稳定升级:通过断点续传、数据压缩、版本回退和固件检查等机制达到高效升级;
- 高效调试:支持指令终端、通过无线进行日志传输和调试等多种调试方式;
- 局域网控制:支持 app 控制、传感器控制等;
- 丰富的示例:提供了基于 ESP-MESH(又称 ESP-WIFI-MESH)、ESP-MESH-LITE 的照明等综合解决方案。
框架
ESP-MDF 共分为 Utils、Components 和 Examples 三个部分(如下图所示),他们之间的关系:Utils 是 ESP-IDF APIs 的抽象封装以及第三方库,Components 是基于 Utils APIs 组成的 ESP-MDF 功能模块,Examples 是基于 Components 完成的 ESP-WIFI-MESH 解决方案。
- Utils:
- Components:
- Examples:
使用 ESP-MDF 进行开发
开发板指南ESP32-MeshKit 开发套件
ESP32-MeshKit Light |
ESP32-MeshKit Sense |
ESP32-Buddy 开发板
ESP32-Buddy 是专为 ESP-WIFI-MESH 开发测试而设计的开发板。体积小,采用 USB 供电,方便做大数量设备的测试及距离测试。
- 功能:
- 16 MB 的 flash:存储运行日志
- OLED 屏:显示当前设备所在的层级、连接状态等信息
- LED:运行状态指示
- 温湿度传感器:数据采集
快速开始
ESP-WIFI-MESH 的优势布置方便:采用 Wi-Fi 组网,无需布线安装等复杂工作,支持自组网、自修复和自管理,用户只需配置路由器的密码即可;
无需网关:ESP-WIFI-MESH 采用去中心化的结构,其无需网关避免了单点故障造成整个网络瘫痪,仅一个 ESP-WIFI-MESH 设备也能正常工作;
传输更安全:数据链路层和应用层均可实施加密;
传输更可靠:两个设备之间的是可靠传输和流控,支持单播、组播和广播;
网络容量大:ESP-WIFI-MESH 采用树状结构,单个设备最多直接连接 10 个设备,单个网络可容纳 1000 个节点;
传输范围广:两个设备之间的传输距离隔墙 30 m,空旷环境 200 m(测试基于 ESP32-DevKitC);
- 智能家居:即使仅有三五个设备且隔墙也能够组成网络,可以满足家庭环境中,设备数量少无法相互通信的问题;
- 路灯方案:可能满足路灯场景中两个相距较远的设备之间的通信。
传输速率高:基于 Wi-Fi 传输,高达 10 Mbps 的传输率;
- 环境控制系统:可以直接传输传感器采集到的原始数据,对大量数据的分析来校准算法提高传感器准确性;
- 背景音乐系统:可以进行音视频传输。
能同时运行 BLE 协议栈:ESP32 芯片可以同时运行 Wi-Fi 和 BLE 协议栈,利用 ESP-WIFI-MESH 做为主干网络进行数据的传输,通过 BLE 接收探针、发送广播和连接设备;
- 物品跟踪:通过多个采集点监控同一设备发出的 BLE 或 Wi-Fi 数据包;
- 人流量检测:统计 Wi-Fi 设备发出的 Probe Request (探测请求)帧;
- 室内定位:每个设备相当于 Beacon 基站不断向四周发送蓝牙信号,手机通过分析与设备之间的信号强度,计算出当前的位置;
- 产品推广:通过 iBeacon 实时推送产品信息和优惠活动;
- 蓝牙网关:每个设备可以相当于一个蓝牙网关,使传统的蓝牙设备也能连接 ESP-WIFI-MESH 网络。
相关资源
作者: 鸣涧 时间: 2022-12-2 22:25
git clone --recursive https://github.com/espressif/esp-mdf.git //会失败
可以运行
git clone --recursive https://gitee.com/EspressifSystems/esp-mdf.git
如果您在没有 --recursive 标记的情况下克隆项目,转到 esp-mdf 目录并运行命令 git submodule update --init --recursive (重要不然运行命令失败)
作者: 鸣涧 时间: 2022-12-2 23:12
新建工程时,cmake会获取不到系统变量mdf_path
在CMakeLists.txt修改
if(NOT DEFINED $ENV{MDF_PATH})
set(ENV{MDF_PATH} D:/ESP_IDE/Espressif/frameworks/esp-mdf) #这里添加mdf路径,注意是反/
endif()
欢迎光临 谷动谷力 (http://bbs.sunsili.com/) |
Powered by Discuz! X3.2 |