UStackUStack
embedist icon

embedist

embedist es un entorno de escritorio para Windows para desarrollar firmware embebido: asistencia con IA, PlatformIO (compilar/cargar) y monitor serie en tiempo real.

embedist

¿Qué es embedist?

Embedist es una aplicación de escritorio para Windows que combina asistencia con IA para el desarrollo de firmware embebido. Está diseñada para ayudarte a trabajar en un único entorno con depuración asistida por IA, monitoreo serie y compilación/carga de firmware, utilizando contexto sobre tu hardware objetivo.

El proyecto está construido con Tauri 2, React y TypeScript. Su objetivo declarado es permitirte abrir una carpeta de proyecto embebido (por ejemplo, codebases de ESP32 o Arduino) y obtener soporte con IA consciente del tablero mientras editas, compilas, cargas y monitoreas la salida del dispositivo.

Características clave

  • Modos de IA para chat, planificación, ejecución de agente y chat de depuración: Ofrece múltiples estilos de interacción (Chat, Plan, Agent, Debug Chat) para diferentes etapas del trabajo embebido.
  • Soporte para múltiples proveedores de IA: Utiliza proveedores de IA como OpenAI, Anthropic, Google, DeepSeek, Ollama, NVIDIA NIM y endpoints personalizados de vLLM.
  • Contexto consciente del tablero para depuración: La depuración con IA aprovecha la información detectada del tablero (p. ej., variantes de ESP32 y tableros Arduino) para ofrecer correcciones específicas del hardware.
  • Monitor serie en tiempo real: Transmite la comunicación del dispositivo con tasas de baudios configurables y comportamiento de conexión automática.
  • Integración con PlatformIO para compilación y carga: Usa la CLI de PlatformIO con salida en streaming en vivo, analiza errores/advertencias en un panel de Problemas e incluye un botón Detener compilación.
  • Editor de código y navegación de proyecto: Incluye un explorador de archivos con migajas de pan, archivos recientes, cambio de nombre en línea, selección múltiple y un editor basado en Monaco con gestión de pestañas e indicadores de cambios pendientes.
  • Atajos de teclado y paleta de comandos al estilo VS Code: Soporta atajos basados en Ctrl para operaciones comunes y una Paleta de comandos (Ctrl+Shift+P).
  • Ejecutable ligero para Windows: Usa un backend en Rust de Tauri 2; el repositorio describe un tamaño de ejecutable de ~5,7 MB.
  • Claves de API persistentes para endpoints personalizados: Mantiene las claves de API para endpoints personalizados entre reinicios de la app.

Cómo usar embedist

  1. Descarga y ejecuta: Descarga embedist.exe desde Releases y ejecútalo en Windows.
  2. Abre una carpeta de proyecto: Presiona Ctrl+O o usa Archivo > Abrir carpeta para abrir la carpeta que contiene tu código embebido.
  3. Configura IA y proveedores: En Configuración (Ctrl+,), configura tu proveedor de IA y credenciales si es necesario.
  4. (Opcional para compilación/carga): Asegúrate de tener PlatformIO instalado si deseas funcionalidad de compilación y carga.
  5. Compila, carga y monitorea: Usa el panel de Compilación para compilación/carga impulsada por PlatformIO, luego visualiza la salida en tiempo de ejecución en el Monitor serie.

Si ves una advertencia de Windows SmartScreen para una aplicación sin firmar, el repositorio indica que es una pantalla de seguridad estándar de Windows para apps sin firmar y recomienda usar Más información y luego Ejecutar de todos modos.

Casos de uso

  • Depuración de firmware con IA consciente del tablero: Cuando tu proyecto apunta a un tablero conocido (p. ej., ESP32 Dev Module o Arduino Uno), usa el modo Debug IA para solicitar correcciones basadas en el hardware detectado.
  • Planificación antes de codificar: Usa el modo Plan para colaborar en un plan de proyecto antes de implementar cambios de código, luego continúa con ediciones en el editor integrado.
  • Iteración autónoma con seguimiento de actividad: En modo Agent, delega pasos de implementación y revisa un registro de actividad en vivo mientras se aplican los cambios.
  • Monitoreo del comportamiento del dispositivo por serie: Conéctate a tu dispositivo y usa el monitor serie para ver salida en tiempo real, ajustando la tasa de baudios y confiando en la conexión automática para reducir la configuración manual.
  • Compilación y triaje de errores de compilación/carga: Ejecuta compilaciones de PlatformIO con salida en streaming y errores/advertencias analizados mostrados en un panel de Problemas para acelerar la iteración.

Preguntas frecuentes

¿Está embedist disponible en plataformas distintas a Windows?
El repositorio describe una aplicación de escritorio para Windows y lista Windows 10/11 (64 bits) como requisito previo.

¿Necesito PlatformIO?
PlatformIO se lista como requisito previo opcional, pero es necesario para la funcionalidad de compilación y carga.

¿Necesito una clave de API de IA para usar la app?
Los requisitos previos listan una “Clave de API de IA” opcional que es necesaria para las funciones de depuración con IA. Si solo quieres un flujo de trabajo sin IA, la app podría seguir siendo usable, pero la depuración con IA requerirá la clave.

¿Qué tableros están soportados?
Los tableros soportados incluyen tableros de la familia ESP32 (como ESP32 Dev Module, ESP32 WROOM/WROVER, ESP32 S3, ESP32 C3/C6 y ESP32 CAM) y tableros de la familia Arduino (Uno/Nano/Mega, Pro Mini, Leonardo, Due y Zero), con ESP8266 también referenciado.

¿Cómo maneja embedist los endpoints de IA personalizados?
Soporta la edición de endpoints personalizados y afirma que las claves de API de endpoints personalizados persisten entre reinicios.

Alternativas

  • PlatformIO en un editor/IDE (con un asistente de IA separado): Si principalmente necesitas compilar/cargar y análisis de errores, PlatformIO integrado en tu IDE existente puede cubrir el flujo de compilación, mientras que la asistencia con IA vendría de otra herramienta.
  • VS Code con extensiones para desarrollo embebido + herramientas de IA: Una configuración común es usar VS Code para edición y extensiones tipo PlatformIO para flujos embebidos, combinado con una herramienta de chat/depuración de IA externa.
  • Herramientas de terminal serie de propósito general: Si tu necesidad principal es monitoreo serie, aplicaciones dedicadas de terminal serie pueden ofrecer streaming y configuración de baudios, aunque no incluirán depuración con IA consciente del tablero ni compilación/carga integrada.
  • Herramientas de codificación/chat con IA con contexto de proyecto: Para usuarios que quieren asistencia con IA pero ya tienen una cadena de herramientas embebidas preferida, asistentes de codificación con IA generales pueden ayudar, aunque no ofrecerán la misma depuración consciente del tablero e integración serie/compilación específica para embebidos descrita para embedist.
embedist | UStack