ESP8266 Python: Programación de ESP8266 con Python

ESP8266 Python: Programación de ESP8266 con Python

El ESP8266 es un microcontrolador Wi-Fi de bajo costo y alto rendimiento. Es una plataforma popular para la creación de proyectos de Internet de las Cosas (IoT).

MicroPython es una implementación de Python para sistemas embebidos. Es una versión reducida de Python 3, diseñada para ser eficiente en recursos.

En este tutorial, aprenderemos a programar el ESP8266 con MicroPython.

Requisitos

  • Un ESP8266
  • Un cable microUSB
  • Un ordenador con Python 3 instalado
  • La herramienta esptool

Instalación de MicroPython

Para instalar MicroPython en el ESP8266, necesitamos descargar el firmware y la herramienta esptool.

El firmware se puede descargar desde la página web de MicroPython. Elija el firmware para su modelo de ESP8266.

La herramienta esptool se puede descargar desde GitHub.

Una vez que tenga el firmware y la herramienta esptool, siga estos pasos para instalar MicroPython:

  1. Conecte el ESP8266 a su ordenador con el cable microUSB.
  2. Abra una terminal y vaya a la carpeta donde descargó el firmware.
  3. Ejecute el siguiente comando para poner el ESP8266 en modo de descarga:
esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 write_flash 0x00000 firmware.bin

Reemplace /dev/ttyUSB0 con el nombre del puerto USB de su ESP8266.

  1. El firmware se instalará en el ESP8266.

Comunicación con el ESP8266

Una vez que MicroPython esté instalado en el ESP8266, podemos comunicarnos con él usando la consola REPL.

Para abrir la consola REPL, siga estos pasos:

  1. Conecte el ESP8266 a su ordenador con el cable microUSB.
  2. Abra una terminal y vaya a la carpeta donde descargó el firmware.
  3. Ejecute el siguiente comando para iniciar la consola REPL:
ampy --port /dev/ttyUSB0 --baud 115200

Reemplace /dev/ttyUSB0 con el nombre del puerto USB de su ESP8266.

La consola REPL es una interfaz de línea de comandos que le permite ejecutar código Python en el ESP8266.

Ejemplos de código

Aquí hay algunos ejemplos de código que puede usar para comenzar a programar el ESP8266 con MicroPython:

Blinking LED

Este código hace que un LED parpadee:

Python
import machine

led = machine.Pin(2, machine.Pin.OUT)

while True:
    led.on()
    time.sleep(1)
    led.off()
    time.sleep(1)

Conectando a Wi-Fi

Este código conecta el ESP8266 a una red Wi-Fi:

Python
import network

wifi = network.WLAN(network.STA_IF)
wifi.active(True)
wifi.connect("SSID", "password")

while not wifi.isconnected():
    pass

print("Conectado a la red Wi-Fi")

Enviando datos a un servidor web

Este código envía datos a un servidor web:

Python
import urequests

url = "http://www.example.com/"
data = {"key": "value"}

response = urequests.post(url, json=data)

if response.status_code == 200:
    print("Los datos se enviaron correctamente")
else:
    print("Error al enviar los datos")

Conclusiones

MicroPython es una herramienta poderosa para programar el ESP8266. Con MicroPython, puede crear proyectos de IoT interesantes y útiles.

Para obtener más información sobre MicroPython, consulte la documentación oficial: https://docs.micropython.org/en/latest/