PyBLE: un IDE MicroPython de código abierto para programar por Bluetooth LE desde tabletas y iPad

PyBLE es un IDE MicroPython de código abierto con licencia MIT para programar placas de microcontroladores a través de Bluetooth Low Energy (BLE), orientado a usuarios de tabletas Android y iPad.

PyBLE combina un IDE basado en Flutter para iPad y Android con soporte para MicroPython y programación visual (Blockly), un firmware agente MicroPython abierto y el protocolo PBLE/1 totalmente documentado por el desarrollador. El IDE admite actualmente funciones como editar y ejecutar Python, una consola en vivo y gestión inalámbrica de archivos, e inicialmente el firmware admite los microcontroladores inalámbricos ESP32, ESP32-S3 y ESP32-C3.

Aplicación PyBLE en modo horizontal: bloques NeoPixel GPIO 48 junto al MicroPython generado.

Características destacadas de PyBLE:

  • Aplicación Flutter
    • Detección BLE filtrada y soporte del protocolo abierto PBLE/1
    • Editor MicroPython con guardar, ejecutar, detener, reinicio suave y consola en vivo
    • Exploración y transferencia inalámbrica de archivos con comprobaciones de integridad
    • Espacio de trabajo Blockly sin conexión con bloques GPIO y bloques NeoPixel estándar de MicroPython
    • Ejemplos editables para principiantes
    • Reapertura exacta del sidecar de Blockly y un importador limitado de Python a bloques
    • Interfaz adaptativa para tabletas en orientación vertical y horizontal
    • Funcionamiento local sin cuenta, análisis ni dependencia de la nube.
  • Firmware
    • Construido con MicroPython oficial
    • Expone PBLE/1 como periférico BLE GATT
    • Control de ejecución, detención, consola y reinicio suave
    • Operaciones del sistema de archivos con validación CRC y cargas atómicas
    • Comportamiento de transferencia reanudable y recuperación limitada del transporte
    • Protección opcional de ejecución automática de main.py
    • Soporte de nombre e identificación de la placa
    • El módulo neopixel estándar de MicroPython.
Firmware PyBLE ejecutándose en la placa Waveshare ESP32-S3-LCD-1.47B

Puedes empezar en tres pasos:

  1. Usa un cable USB una vez para instalar el firmware PyBLE (v0.5.1) para tu placa.
  2. Abre la aplicación PyBLE en la tableta/iPad, encuentra la placa cercana y conéctate directamente por BLE.
  3. Edita archivos, organiza bloques, ejecuta código y usa la consola por BLE.

Actualmente se proporcionan tres archivos de firmware para placas ESP32 clásicas con 4 MB de flash SPI (sin PSRAM), placas ESP32-S3-N16R8 genéricas con 16 MB de flash y 8 MB de PSRAM, y la Waveshare ESP32-S3-LCD-1.47B. También está previsto el soporte para placas ESP32-C3 con 4 MB de flash. El firmware es de código abierto, por lo que deberías poder portarlo a tu propia placa si lo deseas.

Encontrarás más detalles en el sitio web de PyBLE y en la cuenta de GitHub con el código fuente del firmware y la aplicación y documentación detallada. La aplicación para iPad y Android aún no se ha publicado públicamente en la App Store de Apple ni en Google Play. Mientras tanto, puedes instalar la beta para iPad desde TestFlight o compilar la aplicación de Android desde el código fuente. También hay una versión de Android disponible solo para evaluadores internos aprobados.

Arquitectura del sistema PyBLE

Este es un proyecto de código abierto de SciLabPro, principalmente del Dr. Viwat Vchirawongkwin, profesor asociado de química en la Universidad de Chulalongkorn en Bangkok, Tailandia. Además de PyBLE, también diseñaron la placa TitraLab ESP32 para enseñar valoración automatizada (también utilizada en las aulas) y la beta del IDE MicroPad para la placa TitraLab, y están trabajando en el Thermab, un registrador de datos de temperatura portátil recargable por USB-C diseñado para medir dos sondas PT100 simultáneamente.

Traducido del artículo en inglés «PyBLE open-source MicroPython IDE works over Bluetooth LE for tablet and iPad users» de Jean-Luc Aufranc (CNXSoft).

Salir de la versión móvil