4-1-1将参数添加到WiFiManager设置页面并将其保存到文件中

这篇博客介绍了如何利用WiFiManager库在ESP8266上添加MQTT服务器参数,如端口、用户、密码和主题,并将这些配置保存到SPIFFS的config.json文件中。当设备重启时,会自动从文件中读取这些设置,实现与MQTT代理的连接和订阅操作。
摘要由CSDN通过智能技术生成

到目前为止,从 WiFiManager 页面保存的唯一参数是网络的 SSID 和 密码。让我们添加其他参数,例如 MQTT 服务器,端口,用户,密码和主题,并将它们保存到位于 SPIFFS 中的配置文件:

#include <FS.h>
#include <espg266wiFi.h>
#include <pubsubClient.h>
#include <DNSServer.h>
#include <Esp8266WebServer.H>
#include <wiFiManager.h>

定义稍后将用于连接到 MQTT 代理的 CLIENT_ID

#define CLIENT_ID "ESP_%06X"

在此定义您的默认值;如果 config.json 中存在不同的值,则会覆盖它们:

char mqtt_server[ 40];
char mqtt_port[6] = "1883";
char mqtt_user[32];
char mqtt_pass[32];
char mqtt_topic[64];
char dev_name[50];

如果要再次初始化 ESP,请设置为 true

boolean clean_g = false;
WiFiClient espClient;
PubSubClient client(espClient);

当ESP8266收到来自MQTT代理的消息时,将触发此功能:

void mqtt_callback(char* topic, byte* payload, unsigned int length) {
  char rxj[512];
  for(inti=0;i<length;i++){
  rxj[i] = payload[i];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值