ESP32-S3和ESP32-C3通过ESP-Mesh-Lite组网 温湿度传感器案例

描述

传统Wi-Fi网络所有终端设备都需要直接与路由器相连,这使得Wi-Fi的覆盖区域受到路由器位置的限制,可接入终端设备的数量也受到路由器容量的限制。而乐鑫ESP-Mesh-Lite Wi-Fi组网方案,所有终端设备都可以与相邻设备连接,摆脱了对路由器位置和容量的依赖,用户可以享受到快速、稳定且安全的 Wi-Fi 覆盖,不再受到设备数量和路由器位置的限制。
 

 

ESP-Mesh-Lite支持ESP32、ESP32-C、ESP32-S等系列Wi-Fi SoC,广泛应用于智能家庭、智能灌溉、植物照明、智能充电站、太阳能发电等需要多设备组网部署和群控的自动化场景,可以实现了智能设备间的高效互联。


 

今天小启就给大家分享一个ESP-Mesh-Lite 组网方案,以ESP32-S3-Knorvo-2带屏开发板作为根节点,ESP32 C3带灯开发板作为子节点,做一个ESP-Mesh-Lite温湿度传感器小项目。
 

 

运行效果展示

 

 

01

项目功能描述

 

该项目主要有两种硬件部分组成,以Mesh-Lite为框架分为Root设备及非Root设备。其中非Root设备主要负责WS2812 RGB灯的驱动显示控制、LM75A温度传感器的数据读取、Mesh-Lite网络(非Root设备)数据数据传输及对应指令的响应等操作;其中Root设备主要负责 Web配网、屏幕驱动、mqtt服务器( 阿里云 )连接及数据传输、Mesh-Lite网络(Root设备)数据传输及对应指令的响应等操作。

 

02

功能实现流程图


 

传感器

 

 

03

功能实现流程简述

 

1、Root设备:


 

①初始化屏幕,生成需要使用的显示UI;初始化LM75A并开启循环读取任务,根据阈值进行开关灯警报;初始化Web配网,等待Web配网......

②Web配网成功,开启Mesh-Lite;连接router成功获取ip,开启阿里云连接及相应主题的订阅与推送。

③接收来自阿里云mqtt服务器的指令,通过Mesh网络广播给非root设备;接收来自非root设备的数据,通过mqtt推送到阿里云服务器。
 

 

2、非root设备:
 


①初始化Mesh-Lite,初始化LM75A并开启循环读取任务,并根据温度阈值显示对应的rgb颜色(小于25℃:绿色,大于25℃小于30℃:黄色,大于等于30℃:红色)。

②Mesh-Lite连接上root(或上层节点)后,设备温度等相关数据会向root发送,同时会接收来着root的广播信息。
 

③接收root广播信息,解析json并控制RGB灯(WS2812)进行对应显示。

 

04

主要功能及参考例程


 

1、软件开发环境:
 

ESP-IDF 4.4.4
 

 

2、硬件:

Root设备:ESP32-S3-Korvo-2 V3.1带屏开发板
 

非root设备:ESP32-C3-DevKitC-02 v1.1带RGB灯开发板
 

LM75A温度传感器

 

05

主要功能及参考例程

 

1、Root设备
 

①Web配网
 

examples/4-7_Web配网教程at master · Qixiaoyan6/examples · GitHub
 

②Mesh组网
 

esp-mesh-lite/examples/mesh_local_control at master · espressif/esp-mesh-lite · GitHub
 

③屏幕驱动及lvgl
 

esp-adf/examples/display/music_player at master · espressif/esp-adf · GitHub
 

④阿里云设备创建
 

创建阿里云设备(实操超详细)_阿里云物联网平台设备怎么激活-CSDN博客
 

⑤阿里云连接
 

esp-idf/examples/protocols/mqtt/ws at master·espressif/esp-idf·GitHub
 

⑥LED驱动
 

esp-idf/examples/peripherals/gpio/generic_gpio at master·espressif/esp-idf·GitHub
 

 

2、非Root设备
 

①Mesh组网
 

esp-mesh-lite/examples/mesh_local_control at master·espressif/esp-mesh-lite·GitHub
 

②WS2812
 

esp-idf/examples/peripherals/rmt/led_strip at master·espressif/esp-idf·GitHub
 

③LM75A
 

esp-idf/examples/peripherals/i2c/i2c_simple at master·espressif/esp-idf·GitHub

 

06

问题与解决

 

Web配网与Mesh-Lite共存问题,由于Mesh-Lite的设备一般需要ap+sta模式,会导致在Wi-Fi的初始化上面无法兼容。
解决方法:错开运行,在未获取到router相关信息时,Mesh-Lite功能暂不开启,在web配网获取到Wi-Fi相关信息后完全关闭web配网功能然后再启动Mesh-Lite功能。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分