2016-10-23 28 views
1

如果我希望分發基於NodeMCU的設備,我希望我的最終用戶設置Wifi密碼並存儲它。我希望使用以下其中一種方案來保護登錄:How to prevent WiFi Password from being leaked from Lua code?Nodemcu enduser_setup如何讓用戶設置他的Wifi憑據?

但是,在此之前,設備需要先登錄到用戶的網絡。

我想enduser.setup()將每http://nodemcu.readthedocs.io/en/master/en/modules/enduser-setup/#enduser_setupmanual

做到這一點,但就像我已經試過各種enduser_setup()選項,我看不到下面的指令將如何工作:

運行enduser_setup.start()之後,可以通過名爲SetupGadget_XXXXXX的無線網絡訪問上述門戶。

我在網絡中看不到「SetupGadget_XXXXXX」。

什麼是首選解決方案?

謝謝!

+0

'XXXXXX'將會是一個隨機數,記住這一點。 –

+0

這解決了嗎?如果是這樣,請考慮[upvoting/accepting](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)答案。 –

+0

這是個大問題。一旦從家庭網絡獲得STA IP,AP自動停止(它在AP停止前允許保護時間爲10秒)。之後,模塊將保存STA IP。現在,如果您嘗試將模塊連接到其他Wi-Fi網絡,end_user.setup()將不會啓動AP,因爲已經存在已保存的電臺IP地址。我一直依靠在STA + AP模式下運行的標準TCP服務器。 –

回答

0

我不能100%肯定,但最可能的原因是這(從文檔報價):

的IP地址後已成功獲得該模塊將 停止彷彿enduser_setup.stop ()已被調用。

您的設備可能使用了上次使用的WiFi憑證,即記住它們。因此,如果它位於已知AP的附近,它可能具有IP地址。

您可以重置WiFi配置,例如發出

wifi.setmode(wifi.STATION) 
wifi.sta.config("foo","") -- inexistent SSID 
0

我面臨類似的問題,我能夠找出問題。您必須定製NodeMCU固件並確保在構建中包含「最終用戶設置」模塊。您可以通過以下鏈接進行自定義構建。

https://nodemcu-build.com/

相關問題