import network, socket, time from machine import Pin SSID = "YOUR_WIFI_NAME" PASSWORD = "YOUR_WIFI_PASSWORD" led = Pin("LED", Pin.OUT) wlan = network.WLAN(network.STA_IF) wlan.active(True) wlan.connect(SSID, PASSWORD) deadline = time.ticks_add(time.ticks_ms(), 15000) while not wlan.isconnected(): if time.ticks_diff(deadline, time.ticks_ms()) <= 0: raise RuntimeError("Wi-Fi connection timed out") time.sleep_ms(100) print("Open http://" + wlan.ifconfig()[0]) server = socket.socket() server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) server.bind(("0.0.0.0", 80)) server.listen(1) try: while True: client, address = server.accept() try: client.settimeout(2) request = client.recv(1024) route = request.split(b"\r\n", 1)[0].split(b" ") if len(route) >= 2 and route[0] == b"POST": if route[1] == b"/on": led.on() if route[1] == b"/off": led.off() state = "ON" if led.value() else "OFF" body = ("Pico LED" "

Pico LED: " + state + "

" "
" "
" "

Local learning prototype

").encode() header = ("HTTP/1.1 200 OK\r\nContent-Type: text/html; charset=utf-8\r\n" "Content-Length: " + str(len(body)) + "\r\nConnection: close\r\n\r\n").encode() client.sendall(header + body) except OSError as error: print("Request failed:", error) finally: client.close() finally: server.close() led.off()