network.WLAN(network.STA_IF) will create a access point if connection failed.
I am running MicroPython v1.20.0 on 2023-04-26; ESP module with ESP8266
I put the following code in boot.py and nothing in main.py:
from debugfun import breakpoint, vars
print("Activating network")
import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('ssid', 'password')
if my router power off when esp8266 connected, Then the esp8266 will create a new access point with the same ssid and password as my router. It's DHCP is 192168.4.*.
It will prevent the other devices to reconnect to the router.
WLAN.config(reconnects) and WLAN.status() doesn't work as intended
Hello!
MicroPython v1.20.0 on ESP8266.
Example:
import network
from time import sleep_ms
sleep_ms(3000)
sta = network.WLAN(network.STA_IF)
sta.active(True)
while not sta.active():
sleep_ms(100)
_wlan_status = sta.status()
sta.config(auto_connect=False, reconnects=0) # Number of reconnect attempts to make (integer, 0=none, -1=unlimited)
sta.connect('MyAPP')
while True:
_wlan_status = sta.status()
if _wlan_status == 0:
print('IDLE')
if _wlan_status == 1:
print('CONNECTING')
if _wlan_status == 2:
print('WRONG PASSWORD')
if _wlan_status == 3:
print('AP NOT FOUND')
if _wlan_status == 4:
print('CONNECTION FAILED')
if _wlan_status == 5:
print('SUCCESS')
sleep_ms(1000)
-
With
sta.config(reconnects=-1)the result isAP NOT FOUND, while withsta.config(reconnects=0)it isCONNECTING. -
When we are connecting to the non-existing AP, we receive
AP NOT FOUND, while connecting with wrong password we getCONNECTION FAILED. -
I am unable to capture
WRONG PASSWORDwhen using wrong password.
PR associated with this is https://github.com/micropython/micropython/pull/9460