Skip to main content

CLI para automatizar proyectos PlatformIO con FreeRTOS en base a Framework Arduino y un ESP32

Project description

RTOS CLI – Automatizador de Proyectos FreeRTOS para ESP32

rtos_cli es una herramienta de línea de comandos diseñada para acelerar y estructurar el desarrollo de proyectos basados en FreeRTOS, PlatformIO y ESP32. Permite crear, visualizar, documentar y gestionar tareas, periféricos, mensajes y recursos de sistema en proyectos de firmware embebido.


🚀 Propósito

Facilitar la creación y mantenimiento de arquitecturas basadas en tareas FreeRTOS, siguiendo principios de diseño inspirados en ROS (tópicos, mensajes, nodos), con soporte para documentación Doxygen, visualización de arquitectura y generación automatizada desde descripciones YAML.


🎯 Características principales

  • Generación automática de estructuras de proyecto PlatformIO (ESP32 + Arduino).
  • Creación modular de tareas, tópicos, colas, timers, mutex y otros recursos RTOS.
  • Generador de HALs (abstracción de periféricos como I2C, SPI, GPIO, etc).
  • Documentación técnica integrada vía Doxygen.
  • Visualización de arquitectura basada en YAML mediante grafos.
  • Sistema de inicialización de proyectos desde definiciones HDaC (Hardware Description as Code).

📁 Estructura general

rtos_cli/
├── commands/         # Comandos disponibles en el CLI
├── templates/        # Plantillas base para generar archivos
├── utils/            # Módulos auxiliares internos
├── README.md         # Documentación principal
├── setup.py          # Configuración del paquete
└── rtos_cli.py       # Punto de entrada del CLI

🔧 Estado actual

Esta herramienta está en constante evolución. La versión actual permite:

  • Construcción de proyectos a partir de archivos YAML
  • Generación automática de documentación y visualización
  • Modularidad para escalar y mantener sistemas embebidos complejos

📌 Próximas mejoras

  • Validación estructural del YAML
  • Sistema de sincronización incremental de proyectos
  • Biblioteca reutilizable de bloques funcionales
  • Interfaz web opcional para modelado visual

🛠️ Requisitos

  • Python 3.7+
  • PlatformIO
  • Doxygen
  • Graphviz
  • Dependencias: pyyaml, pydot, networkx, graphviz, rtos_cli (editable)

📄 Licencia

MIT License © Efraín Reyes Araujo


Para conocer más sobre los comandos disponibles o contribuir al proyecto, revisa la documentación técnica o ejecuta:

rtos_cli --help

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtos_cli-2.0.2.tar.gz (37.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtos_cli-2.0.2-py3-none-any.whl (49.0 kB view details)

Uploaded Python 3

File details

Details for the file rtos_cli-2.0.2.tar.gz.

File metadata

  • Download URL: rtos_cli-2.0.2.tar.gz
  • Upload date:
  • Size: 37.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.13

File hashes

Hashes for rtos_cli-2.0.2.tar.gz
Algorithm Hash digest
SHA256 62f4727921ea069514e1a726c4a51f081b9a312f205cab90c589134cf17eb016
MD5 fefcc0f08de22100e2f56a637d777317
BLAKE2b-256 ecebc5d524059f0e5372c5e447cdcfbe74cf8e5dc07c3eacdcce1824b588fffd

See more details on using hashes here.

File details

Details for the file rtos_cli-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: rtos_cli-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 49.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.13

File hashes

Hashes for rtos_cli-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 26b07beee58b2b91fb179a09660f6d8e43ec040d18f6c9dd61d9f86893808c42
MD5 623776c6ab2041071039085418d0e4a3
BLAKE2b-256 f13a0ac16fb19b3fb7bb86bd82f18fa28a947ad079ab93b015e3e5a5955ce068

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page