domingo, 27 de noviembre de 2016

Hola Mundo en Python con el Witty ESP8266


Arduino no es el único entorno en el que podemos programar nuestro Witty y en general el ESP8266. También podemos utilizar otros entornos, incluso otros lenguajes. Hoy vamos a realizar el mismo ejemplo de "Hola Mundo" que ya hicimos en Arduino, pero esta vez lo haremos utilizando el lenguaje Python. El programa que vamos a escribir, hará parpadear el led rojo del led RGB montado en el Witty. 
Utilizar Python para programar, en lugar de C, tiene bastantes ventajas y algún inconveniente. Como ventajas podemos citar que Python es uno de los lenguajes más fáciles de aprender y por ello está recomendado para iniciarse en la programación en general. Utilizarlo para iniciarnos en la programación de microcontroladores puede ser una buena manera de empezar en este mundillo. También es un lenguaje que nos permite prototipar más rápido que C y es más fácil de leer y de entender. Como puntos en contra podemos destacar que es más lento, menos eficiente, y permite menos control del hardware que estamos programando.
Para el ejemplo que vamos a realizar, debemos tener una versión de Python instalada en nuestra máquina. Como vamos a utilizar Ubuntu tendrás seguramente ya una en nuestro sistema, si no es así debes instalarla.

Primeramente descarga el último firmware para el ESP8266 de la página de micropython.

Instala esptool.

sudo pip install esptool

Borra el firmware del dispositivo.

esptool.py --port /dev/ttyUSB0 erase_flash

Instala el firmware descargado.

esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect -fm dio 0 esp8266-20161110-v1.8.6.bin

Ahora ya tienes un intérprete de Python en el Witty. Conecta con la consola.

minicom -b 115200 -D /dev/ttyUSB0

Accederás a la consola de Python del dispositivo y podrás realizar las operaciones habituales. Desde la consola podrías programar directamente el microcontrolador. Nosotros vamos a escribir el programa en un fichero en el PC y luego lo subiremos al Witty.


Ahora instala la herramienta de Adafruit Ampy. Esta herramienta sirve para interactuar con micropython a través del puerto de comunicaciones y nos permitirá subir archivos desde el ordenador al microcontrolador.

sudo pip install adafruit-ampy

Escribe el siguiente programa y guárdalo en un fichero llamado holamundo.py

from machine import Pin
import time
pinR = Pin(15, Pin.OUT)
pinG = Pin(12, Pin.OUT)
pinB = Pin(13, Pin.OUT)
pinG.low()
pinR.low()
while True:
 pinR.high()
 time.sleep(0.5)
 pinR.low()
 time.sleep(0.5)

Sube el programa desde el PC al Witty escribiendo la siguiente línea en el terminal:

ampy --port /dev/ttyUSB0  --baud  115200 put holamundo.py /main.py

Si has seguido todos los pasos sin problemas, resetea el Witty y verás parpadear en rojo el led del RGB.


No hay comentarios:

Publicar un comentario