wlan.py 1010 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. def wlscan():
  2. #activate WLAN
  3. import network, time
  4. wl = network.WLAN(network.STA_IF)
  5. if not wl.active():
  6. wl.active(True)
  7. return wl.scan()
  8. ### select WLAN to connect to
  9. def wlbestSSID():
  10. import network, time
  11. wl = network.WLAN(network.STA_IF)
  12. if wl.active():
  13. wlist=list()
  14. for w in wlscan():
  15. wlist.append([w[3],w[0].decode()])
  16. wlist.sort(reverse=True)
  17. return wlist[0][1]
  18. else:
  19. return []
  20. ### try to connect to WLAN
  21. def wlconnect(SSID,pwd):
  22. import network, time
  23. wl = network.WLAN(network.STA_IF)
  24. if wl.active():
  25. print("debug: wlan active")
  26. wl.connect(SSID,pwd)
  27. else:
  28. print("debug: wlan DEactive")
  29. wl.active(True)
  30. wl.connect(SSID,pwd)
  31. time.sleep(6)
  32. if wl.isconnected() or wl.status() == 5:
  33. print("debug: connected")
  34. return True
  35. else:
  36. wl.disconnect()
  37. print("debug: not connected")
  38. return False