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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62f4727921ea069514e1a726c4a51f081b9a312f205cab90c589134cf17eb016
|
|
| MD5 |
fefcc0f08de22100e2f56a637d777317
|
|
| BLAKE2b-256 |
ecebc5d524059f0e5372c5e447cdcfbe74cf8e5dc07c3eacdcce1824b588fffd
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26b07beee58b2b91fb179a09660f6d8e43ec040d18f6c9dd61d9f86893808c42
|
|
| MD5 |
623776c6ab2041071039085418d0e4a3
|
|
| BLAKE2b-256 |
f13a0ac16fb19b3fb7bb86bd82f18fa28a947ad079ab93b015e3e5a5955ce068
|