代码之家  ›  专栏  ›  技术社区  ›  StealthRT

ESP8266使用新WiFi密码更新OTA

  •  0
  • StealthRT  · 技术社区  · 7 年前

    嘿,我有一个C程序,允许我将.bin文件上传到我的ESP8266(wemos d1 mini)板,如果需要更新的话,这在更新.ino代码方面做得很好。

    但是,我想知道,如果我的WiFi网络更改了访问WiFi的密码,我会怎么做?

    我使用MDN是为了不关心wifi的IP地址,但是我还没有找到任何东西,当wifi从.ino文件中编码的密码更改为密码时,仍然允许我进行ota更新。

    因此,如果我将密码保存到spiff中,如果密码发生更改,并且需要更新wemos d1 mini上的密码以反映密码更改,我将如何访问wemos d1 mini?在我看来,它不会连接,因为旧的密码会被用来做一个在线旅行社的更新?

    我可能想的太多了——或者错过了一些我正在考虑的非常明显的事情,但是关于如何解决这个问题的任何想法都是非常好的!

    1 回复  |  直到 7 年前
        1
  •  0
  •   Dawn Minion    7 年前

    如果ESP8266不能再连接到您的WiFi网络,您可以始终启动它自己的接入点。我做了类似的事情,在几分钟无法连接后,我让它启动了软AP。然后,它将允许您向它推送固件更新,或者通过Web API更改密码。

    通过软AP+更新服务器更新固件的示例: https://github.com/esp8266/Arduino/blob/master/libraries/ESP8266HTTPUpdateServer/examples/WebUpdater/WebUpdater.ino

    Arduinoota应该 只是工作而已 在软AP模式下也是正常的。

    除上述两种模式外,您可以始终使用ESP8266的“smartconfig”模式,该模式允许您通过移动应用程序设置密码而不与接入点关联。有了这个,您不应该仅仅为了更改密码而需要固件更新。

    要启用smartconfig模式:

    WiFi.beginSmartconfig()
    ... 
    WiFi.stopSmartConfig()
    
    推荐文章