ESP32 MPY-Jama un nuevo entorno de desarrollo para Micropython

Micropython es un entorno de programación en constante desarrollo, por lo que frecuentemente tenemos noticias de nuevas funcionalidades o placas que lo soportan. Ocurre lo mismo con las herramientas de desarrollo que nos permiten llevar adelante nuestros proyectos. En esta ocasión haré una breve introducción a una de aparición reciente que tiene algunas características interesantes.

Introducción

El entorno de desarrollo que utilicemos para programar es una pieza fundamental de nuestro trabajo. Lo utilizaremos durante muchas horas mientras desarrollemos un proyecto, así que tendrá que reunir varias características como facilidad de uso, ayudas a la escritura, herramientas para programar e interactuar con la placa empleada, etc.

En un artículo anterior hice un repaso de los entornos mas populares para Micropython hasta ese momento, pero afortunadamente desde esa fecha han aparecido nuevas opciones.

Hoy te cuento de que se trata una de ellas, ESP32 MPY-Jama, un entorno de desarrollo o IDE para Micropython que tiene algunas características que seguro te van a encantar.

ESP32 MPY-Jama

Este IDE, específico para el ESP32, es obra de Jean-Christophe Bos, un desarrollador francés. Es software libre, así que es completamente gratuito y se lo puede descargar de su repositorio en GitHub.

Funciona en los SO mas comunes como Windows, MacOS y Linux. Para los dos primeros hay instaladores listos para descargar y para Linux debemos correr directamente el código en Python, el lenguaje empleado para diseñarlo.

Fig. 1. Pantalla principal

Funcionalidades

Lo primero que vemos al iniciar MPY Jama es un gran botón para conectar el dispositivo o placa ESP32 que vamos a utilizar. Al presionarlo nos pedirá el puerto donde se encuentra la placa, como es habitual. Luego de conectado, se nos habilitan todas las funciones que tenemos disponibles.

Del lado izquierdo podemos apreciar un panel que tiene dos solapas: En una de ellas tenemos un menú de funciones y en la otra un browser o explorador del sistema de archivos de la placa, donde podremos ver los archivos .py, librerías y cualquier otro archivo que tengamos guardado en el ESP32.

En la parte inferior una ventana de estado nos muestra el estado de la conexión, la cantidad de memoria RAM ocupada, la temperatura del ESP32 y el tiempo transcurrido desde el momento de la conexión.

Editor de código

MPY Jama incluye un editor de código con las funciones básicas, como coloreo de sintaxis, donde podemos escribir nuestro programa, hacerlo correr, detenerlo, etc. En la parte inferior tenemos disponible una consola o REPL desde donde también podemos enviar comandos directamente al dispositivo.

Fig. 2. Editor de código

Desde el editor tenemos la opción de instalar paquetes o módulos desde micropython-lib de una forma sencilla. Simplemente debemos presionar el ícono del instalador y Jama nos pedirá el nombre del paquete a instalar. Si todo funciona correctamente, lo descargará en una carpeta /lib del sistema de archivos para que la podamos importar en nuestro código.

Desde luego, para que se pueda realizar la instalación, el dispositivo debe estar conectado a Internet. Esto lo podemos hacer fácilmente con la función Wi-fi connection.

Fig. 3. Instalando un módulo desde el repositorio.

También desde el editor podemos importar módulos previamente cargados en el dispositivo para utilizarlos desde la consola REPL. Haciendo click en el ícono de Python podemos importar los módulos que necesitemos, aunque es sólo para su uso desde la consola, no se refleja en el código.

El último ícono de la derecha nos muestra una plantilla con todos los pines de la placa ESP32-Wroom, muy útil a la hora de hacer las conexiones.

Funciones

Jama nos permite correr funciones o mini aplicaciones en cualquier momento para realizar alguna función especifica. Por ejemplo, si tenemos un sensor conectado y queremos leer su valor, no es necesario correr el programa principal, podemos tener una mini aplicación que realice la lectura y nos devuelva el valor correspondiente. Hay varias de estas funciones incluidas y una plantilla para que escribamos las que necesitemos.

Fig. 4. Funciones o mini aplicaciones

Terminal REPL

Si necesitamos mas espacio para trabajar con la consola o terminal REPL, esta opción nos permite hacerlo a pantalla completa.

Información del sistema

En esta función Jama nos muestra información sobre la placa y Micropython. También podemos observar el comportamiento de los pines de GPIO en tiempo real y cambiar la frecuencia del clock.

Fig. 5. Información del sistema

Información de redes inalámbricas

Pulsando sobre Networks info obtendremos información sobre el estado de las conexiones inalámbricas de nuestro dispositivo, tanto Bluetooth como Wifi.

Fig. 6. Información de redes

Conexión Wifi

Desde aquí podemos gestionar la conexión Wifi de la placa y hacer que se conecte a una red disponible de una manera sencilla.

Punto de acceso Wifi

Usando esta función podremos crear y configurar un punto de acceso con nuestro dispositivo.

Hard Reset

Permite realizar un RESET de la placa.

Herramientas de firmware

Con esta función podremos borrar la memoria de nuestro dispositivo y grabar el firmware de Micropython.

Fig. 7. Grabación de firmware

Conclusiones

ESP32-MPY Jama es un desarrollo novedoso con funciones interesantes que hacen mas fácil nuestro trabajo de programación. Evidentemente aún hay aspectos a mejorar y errores a solucionar, pero si se mantiene en el tiempo puede ser una opción importante entre los entornos de desarrollo disponibles para Micropython.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Habilitar notificaciones OK No, gracias