问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Android实现ESP32配网(超简单)

创作时间:
作者:
@小白创作中心

Android实现ESP32配网(超简单)

引用
CSDN
1.
https://m.blog.csdn.net/m0_46426465/article/details/144638841

项目效果预览

Android实现ESP32配网(超简单)

序言

ESP32现在比较流行,已经是玩物联网的首选之一了。ESP32由于其强大的处理能力、内置Wi-Fi与蓝牙模块、丰富的外设接口以及开源的开发环境,已经成为业余爱好者和专业人士进行物联网项目开发的首选平台之一。相比于传统的51单片机或STM32系列微控制器,ESP32提供了更高层次的抽象,减少了开发者直接操作硬件寄存器的需求,使得编程更加简便高效,使用ESP32无需记忆大量的寄存器,而是通过简洁的软件编程,能够用极少的代码实现丰富的功能。

ESP32官方为开发者提供了一套完整的配网(Smart Config)工具,这允许用户通过手机或其他设备轻松地将ESP32连接到家庭或办公室的无线网络中。对于不支持蓝牙的ESP系列(如ESP8266),我们可以通过WiFi创建一个通用的配网解决方案,使用户能够利用智能手机快速完成ESP32的动态配置。尽管ESP32也支持蓝牙配网,但官方提供的工具可能不够灵活,难以完全满足特定项目的集成需求。

最近的研究探索了如何使用Android操作系统来操作WiFi,并研究了ESP32动态配网的方法。这些努力旨在简化用户配置过程,提高用户体验,同时确保安全性和可靠性。

介绍

市面上大都数智能家居的配网流程大部分流程是这样的:
首先,启动应用程序并检查Token状态(也就是登录),如果有Token则继续扫描设备;如果没有,则提示用户登录获取Token。接着,应用程序扫描可用的ESP32设备,并列出设备ID供选择。选定设备后,将SSID、PASSWORD和Token发送给ESP32。随后,应用程序向服务器发送请求验证配置信息是否正确,如果验证成功则继续下一步,如果失败则返回重新配置或提示错误。同时,ESP32检测到配网指令后进入配网模式,开启配网服务。用户长按ESP32上的按键触发配网模式,ESP32接收到配置信息后存储Token并重启。最后,ESP32连接服务器进行验证,如果验证通过,则配网成功。

ESP32进入配网模式

为了开始配网过程,用户需要将ESP32置于配网模式,在此状态下,ESP32准备好接收来自外部设备(如智能手机)的网络配置信息。进入配网模式后,ESP32会启动一个临时的接入点(AP)或监听周围的WiFi信号,准备接收来自客户端设备的配置指令。

为了启动配网流程,我们设计了一个简单的按钮长按机制。当用户长按ESP32设备上的特定按钮时,设备将进入配网模式。在这个模式下,ESP32将等待来自手机端的配置指令,并准备好接收WiFi网络的名称和密码等信息。

扫描ESP32设备

在手机端,我们开发了ESP32的EasyConfig应用。该应用能够扫描附近的ESP32设备,并列出所有处于配网模式的设备供用户选择。通过这一功能,用户可以轻松地找到需要配置的设备,并准备进行下一步操作。

选择WiFi

在选中目标ESP32设备后,用户将进入配置页面。在该页面上,用户需要选择希望连接的WiFi网络,并输入相应的密码。这些信息将被加密并发送到ESP32设备上,用于后续的网络配置过程。用户只需按照指示操作即可,整个过程简单明了,降低了误操作的可能性。

验证配置

选定的WiFi名称和密码将被发送至ESP32。成功接收到信息后,ESP32尝试连接到指定的WiFi网络,并返回连接状态给手机端以确认配置是否成功。如果连接失败,应用程序可能会提示错误原因,并允许用户重新尝试配置。这一反馈机制保证了用户能够及时了解配置结果,从而采取适当的措施解决问题。

配网记录

为了方便管理和回顾,应用程序还可以维护一份历史配网记录,包含每次配置的时间戳、WiFi名称等信息。这些记录不仅有助于用户回顾过去的设置动作或解决潜在问题,也为后续分析和优化提供了有价值的数据。

到此本节文章内容已结束,谢谢您的阅读!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号