import network try: from config import config except ImportError: config = {} ap_if = network.WLAN(network.AP_IF) wifi = network.WLAN(network.STA_IF) def connect(enable_ap=False): ap_if.active(enable_ap) if not config.get("wifi_ssid") or not config.get("wifi_pass"): print("WARNING: wifi_ssid or wifi_pass not configured in config.py") return status() if not wifi.isconnected(): wifi.active(True) wifi.connect(config["wifi_ssid"], config["wifi_pass"]) while not wifi.isconnected(): pass return status() def disconnect(): wifi = network.WLAN(network.STA_IF) wifi.active(False) def status(): results = { "ap": ap_if.ifconfig()[0] != "0.0.0.0", "wifi": { "ip": "0.0.0.0", "netmask": "0.0.0.0", "gateway": "0.0.0.0", "dns": "0.0.0.0", } } if wifi.isconnected(): ifconfig = wifi.ifconfig() results["wifi"] = { "ip": ifconfig[0], "netmask": ifconfig[1], "gateway": ifconfig[2], "dns": ifconfig[3], } return results