MicroPyServer. Управляем ESP8266/ESP32 через WiFi

Часто нам необходимо управлять IoT устройствами удаленно, при помощи сети и для этого нам нужен простой инструмент который позволит быстро сделать это. 

Рассмотрим небольшой пример как при помощи веб-сервера использующего библиотеку MicroPyServer написанную на языке программирования Python управлять ESP8266/ESP32 через WiFi или интернет.

Что такое MicroPyServer?

MicroPyServer -это простой веб-сервер написанный на Python, который позволяет управлять вашим устройством посредством запросов из браузера. MicroPyServer - популярное решения для быстрого  создания программ управления вашими IoT устройствами. 

Пример включения/выключения светодиода

Рассмотрим простой пример в котором нам надо удаленно управлять светодиодом подключённым к выводу GPIO13 (вывод D7  для Wemos D1 mini) модуля ESP8266 при помощи запросов из браузера.


from machine import Pin
from micropyserver import MicroPyServer
import esp
import time
import network

''' Connect to WiFi ''' wlan_id = "Your WiFi" wlan_pass = "Your wifi password"
wlan = network.WLAN(network.STA_IF) wlan.active(True) if wlan.isconnected() == False: wlan.connect(wlan_id, wlan_pass) while wlan.isconnected() == False: time.sleep(1) print('Device IP:', wlan.ifconfig()[0])

def do_on(request): ''' on request handler ''' pin.value(1) server.send("ON")

def do_off(request): ''' off request handler ''' pin.value(0) server.send("OFF")
pin = machine.Pin(13, machine.Pin.OUT) server = MicroPyServer() ''' add request handlers ''' server.add_route("/on", do_on) server.add_route("/off", do_off) ''' start server ''' server.start()

Как работает:

Открываем браузер и набрав урл http://IP_вашего_устройства/on вы включите светодиод, а набрав урл http://IP_вашего_устройства/off вы его выключите. Все очень просто и легко. При помощи таких подходов вы можете реализовывать не только передачу управляющих инструкций на свое устройство, но отдачу данных с ваше устройства при помощи любых форматов и протоколов, т.к. вам ничто не мешает сделать это.

Вывод

MicroPyServer - это мощный и простой инструмент который позволит вам управлять вашими IoT устройствами по сети Интернет или локальной сети через Wi-Fi.

Описание и исходники библиотеки MicroPyServer тут: https://github.com/troublegum/micropyserver