基于Arduino IDE 野火ESP8266模块 一键配网 的开发

一、配网介绍

 ESP8266 一键配网(也称为 SmartConfig 或 FastConfig)是一种允许用户通过智能手机上的应用程序快速配置 ESP8266 Wi-Fi 模块的方法,而无需手动输入 SSID 和密码。为了实现这一功能,则需要一个支持 SmartConfig 的智能手机应用程序(如 ESP-TOUCH for Android 或 iOS 设备上的类似应用),以及 ESP8266 上运行的相应固件。

二、库文件

 使用 WiFiManager 库,这是一个第三方库,用于简化 ESP8266 的 Wi-Fi 连接过程,包括一键配网。要使用 WiFiManager,需要将它添加到 Arduino IDE 库中。可以通过 Arduino IDE 的库管理器来安装它,或者从 GitHub 上的源代码手动安装。

安装 WiFiManager 的方法:

1.打开 Arduino IDE。

2.转到"工具" > "管理库..."。

3.在库管理器中搜索 WiFiManager。

4.选择它并点击"安装"。

三、代码

编写测试代码,代码如下:

复制代码
#include <ESP8266WiFi.h>  
#include <WiFiManager.h>  
  
// 初始化 WiFiManager  
WiFiManager wifiManager;  
  
void setup() {  
  Serial.begin(115200);  
  delay(10);  
  
  // 设置自定义参数(可选)  
  wifiManager.setAPCallback(configModeCallback);  
  wifiManager.setDebugOutput(true);  
    
  // 尝试连接到之前保存的 Wi-Fi  
  if (!wifiManager.autoConnect("MyESP8266")) {  
    Serial.println("Failed to connect");  
    // 停留并监听配置  
    ESP.restart();  
  }  
  
  Serial.println("Connected to WiFi");  
  Serial.print("IP Address: ");  
  Serial.println(WiFi.localIP());  
}  
  
void loop() {  
  // 主循环保持空闲,可以在这里添加其他功能  
  delay(1000);  
}  
  
void configModeCallback (WiFiManager *myWiFiManager) {  
  Serial.println("Entered config mode");  
  Serial.println(WiFi.softAPIP());  
  // 在这里可以添加额外的配置代码  
}

1.WiFiManager 库被用来管理 Wi-Fi 连接。

2.autoConnect 方法尝试连接到之前保存的网络,如果找不到,则进入配置模式。

3.configModeCallback 是一个可选的回调函数,当 ESP8266 进入配置模式时会被调用。

4."MyESP8266" 是 ESP8266 在 AP(接入点)模式下显示的 SSID。

 一旦 ESP8266 启动并进入配置模式(即没有找到已知的 Wi-Fi 网络或首次启动),它将作为一个 Wi-Fi 接入点出现。可以使用智能手机上的 Wi-Fi 设置连接到这个接入点,并使用支持 SmartConfig 的应用程序(如 ESP-TOUCH)来发送 Wi-Fi 凭据给 ESP8266。一旦 ESP8266 接收到了这些凭据,它将尝试连接到指定的 Wi-Fi 网络,并保存这些设置以便将来使用。

注意:WiFiManager 库还在不断更新和改进,所以最好查看最新的文档和示例代码,以获取关于其功能和用法的最新信息。此外,请确保手机和 ESP8266 设备在同一个 Wi-Fi 范围内,并且智能手机上已经安装了支持 SmartConfig 的应用程序。

测试结果:

esp8266模块启动

使用 ESP-TOUCH 软件进行配置,提示配网失败,原因可能是固件版本不支持。。。。

问题参考:https://github.com/espressif/esp-idf/issues/4975

软件下载

ESP-TOUCH for Android 下载地址:
https://www.espressif.com.cn/zh-hans/support/download/apps

相关推荐
优信电子5 天前
STM32F103C8T6连接ESP-01S实现WiFi通信:TCP客户端开发实战(二)
stm32·嵌入式硬件·物联网·tcp/ip·esp8266·stm32f103c8t6·esp01/01s
DoLovya7 天前
从零实现 ESP8266 + MQTT 智能门禁:公网一键开门、舵机控制、在线监控完整方案
python·物联网·mqtt·嵌入式·esp8266·门禁系统
daad7777 天前
802.11 前导码与 STF 深度解析(含检测算法与 5G 对比
人工智能·算法·5g·wifi·802.11·前导码
daad77711 天前
用 HackRF + GNU Radio 抓取并解析 5 GHz Wi‑Fi 帧:从理论到 pcap 落地
wifi·802.11·gnuradio·beacon
daad77712 天前
从电磁波到比特:用具体数字读懂 FM 与 WiFi 的 IQ 解调
5g·wifi·fm·gnuradio
汤姆yu15 天前
基于ESP32的玫瑰大棚智能系统
物联网·esp32·arduino·大棚温湿度
W.W.H.19 天前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动
永栀哇20 天前
RT-Thread studio STM32F407+RW007模块+物联网软件包-阿里云-onenet云平台
阿里云·wifi·onenet·rtthread-stm32·物联网软件包
永栀哇20 天前
RT-Thread studio W25Q64 SFUD-FAL分区-存储参数+虚拟文件-ulog-RTC存储日志到文件-wifi-导出文件到电脑
wifi·rtthread·rw007·存储参数+日志文件+导出文件
万亿少女的梦16824 天前
基于STM32、RFID与OneNET的开放性实验室电源节点设计
stm32·物联网·onenet·rfid·esp8266