src/eric7/MicroPython/Devices/MCUScripts/mpyWiFiConnect.py

Thu, 02 Mar 2023 17:53:38 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Thu, 02 Mar 2023 17:53:38 +0100
branch
mpy_network
changeset 9836
902ec9a04ebe
child 9890
66a6d3f131cc
permissions
-rw-r--r--

MicroPython
- completed the 'pico wireless' WiFi support

9836
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 try:
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2 import secrets
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 def connectWiFi():
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5 import network
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 from time import sleep
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 print("Connecting WiFi to '{0}' ...".format(secrets.WIFI_SSID))
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 wifi = network.WLAN(network.STA_IF)
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 wifi.active(False)
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 wifi.active(True)
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 wifi.connect(secrets.WIFI_SSID, secrets.WIFI_KEY if secrets.WIFI_KEY else None)
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 max_wait = 140
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 while max_wait:
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 if wifi.status() < 0 or wifi.status() >= 3:
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 break
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 max_wait -= 1
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 sleep(0.1)
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 if wifi.isconnected():
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 print("WiFi connected:", wifi.ifconfig())
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 else:
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 print("WiFi connection failed")
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 connectWiFi()
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 except ImportError:
902ec9a04ebe MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 print("WiFi secrets are kept in 'secrets.py', please add them there!")

eric ide

mercurial