使用ApConfig配置成功后重启不会自动联网-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: fcwys

[已解答] 使用ApConfig配置成功后重启不会自动联网

[复制链接]
 楼主| 发表于 2021-6-12 14:04 | 显示全部楼层
三水 发表于 2021-6-11 18:13
https://github.com/blinker-iot/b ... s/heads/dev_3.0.zip
ap配网是直接读取esp8266sdk缓存到flash中的配 ...

使用dev3.0的库还是一样的
  1. __       __                __
  2. /\ \     /\ \    __        /\ \              v0.3.80210611
  3. \ \ \___ \ \ \  /\_\    ___\ \ \/'\      __   _ __   
  4. \ \ '__`\\ \ \ \/\ \ /' _ `\ \ , <    /'__`\/\`'__\
  5.   \ \ \L\ \\ \ \_\ \ \/\ \/\ \ \ \\`\ /\  __/\ \ \./
  6.    \ \_,__/ \ \__\\ \_\ \_\ \_\ \_\ \_\ \____\\ \_\  
  7.     \/___/   \/__/ \/_/\/_/\/_/\/_/\/_/\/____/ \/_/  
  8.     To better use blinker with your IoT project!
  9.     Download latest blinker library here!
  10.     => https://github.com/blinker-iot/blinker-library

  11. [108] _aliType:
  12. [109] _duerType:
  13. [111] _miType:
  14. [112] _authKey: XXXXXXXXX
  15. [117] check wlan config
  16. [118] wlan config check,success
  17. [620] Connecting to WiFi:
  18. [620] ESP8266_MQTT initialized...
  19. [620]
  20. ===========================================================
  21. ================== Blinker Timer loaded! ==================
  22.      EEPROM address 1536-2431 is used for Blinker Timer!
  23. ========= PLEASE AVOID USING THESE EEPROM ADDRESS! ========
  24. ===========================================================

  25. [643] countdown state: false
  26. [644] _cdRunState: 0
  27. [646] _totalTime: 0
  28. [647] _runTime: 0
  29. [649] _action:
  30. [651] loop state: false
  31. [653] _lpRunState: 0
  32. [655] _times: 0
  33. [656] _tri_times: 0
  34. [658] _time1: 0
  35. [659] _action1:
  36. [661] _time2: 0
  37. [662] _action2:
  38. [664] _lpData: 0
  39. [666] checkNum count: 3
  40. [668] checkNum count: 3
  41. [670] checkNum count: 3
复制代码
发表于 2021-6-13 11:11 | 显示全部楼层
调试信息看是没有读取到储存的wifi配置信息,你确定已经擦除了储存到eeprom的标志位吗(或者调用Blinker.reset擦除)。擦除后重新配网。
 楼主| 发表于 2021-6-13 14:37 来自手机 | 显示全部楼层
每次下载都是擦除flash后进行测试的,第一次配置成功可以正常使用,重启后就是这样
发表于 2021-6-13 14:51 | 显示全部楼层
那不太清楚原因了,无法复现这个问题,调试信息看读取到eeprom信息有配置成功但是读取出来的配置信息为空。建议可以下载时不擦除flash,使用例程中button长按擦除配置的方法测试一下。
 楼主| 发表于 2021-6-14 00:36 | 显示全部楼层
三水 发表于 2021-6-13 14:51
那不太清楚原因了,无法复现这个问题,调试信息看读取到eeprom信息有配置成功但是读取出来的配置信息为空。 ...

长按擦除配置本来代码里面就有的,主要是调用Blinker.reset()方法,重置以后配置可以正常使用,但是重启后依然还是没法自动连接,现在已改为web方式配网(WiFiManager)完成后将参数传递到Blinker.begin()方法里面,重启后可以自动连接。此方案目前工作正常,测试了四块芯片(ESP01S两块、ESP8266-EX、ESP32)均正常。

点评

你这么一说,看了下你代码。。。请不要把重置调用放在loop中。。。应该就是这个原因  详情 回复 发表于 2021-6-14 10:23
发表于 2021-6-14 10:23 | 显示全部楼层
fcwys 发表于 2021-6-14 00:36
长按擦除配置本来代码里面就有的,主要是调用Blinker.reset()方法,重置以后配置可以正常使用,但是重启 ...


你这么一说,看了下你代码。。。

1.请不要把重置调用放在loop中
2.给按键加上下拉电阻
3.参考例程使用onebutton调用reset
4.了解下什么叫回调函数


应该就是这些原因了。。。最近没有用户反映相同的问题,且我们已测试确认了例程无问题。

如之前我同事所说,测试例程,如果例程没有问题,通常都是你自己的代码问题,



发表于 2021-6-14 11:20 | 显示全部楼层
fcwys 发表于 2021-6-14 00:36
长按擦除配置本来代码里面就有的,主要是调用Blinker.reset()方法,重置以后配置可以正常使用,但是重启 ...

我看了下wifimanager的源代码,他获取配置信息的方式和我用的是一样的是用package自动缓存到flash的配置信息。只不过我读取的当前缓存,wifimanager默认读取前一次缓存,我一会儿也改成读取前一次缓存,你到时候再试一试。
发表于 2021-6-14 12:14 | 显示全部楼层
 楼主| 发表于 2021-6-14 12:51 | 显示全部楼层
奈何col 发表于 2021-6-14 10:23
你这么一说,看了下你代码。。。

1.请不要把重置调用放在loop中

好的,谢谢了,我再弄下
 楼主| 发表于 2021-6-14 13:09 | 显示全部楼层
三水 发表于 2021-6-14 12:14
https://github.com/blinker-iot/blinker-library/archive/refs/heads/dev_3.0.zip
已更新 可以测试下 ...

好的,谢谢!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 11:43 , Processed in 0.102439 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表