BreadboardOS de Cavin McKinley est une plate-forme de micrologiciel open source pour le MCU Raspberry Pi RP2040 (pour l’instant) construite autour de FreeRTOS et dotée d’une CLI riche en fonctionnalités qui me rappelle le terminal Linux.
L’implémentation du terminal est basée sur un fork du projet microshell avec quelques personnalisations supplémentaires. Il est organisé en dossiers/fichiers de style POSIX offrant une interface utilisateur familière pour interagir avec le matériel du MCU.

Points forts de BreadboardOS :
- Basé sur FreeRTOS
- Outils de vérification des ressources système telles que les commandes ps, top, free et df
- Interaction avec les E/S de la puce et les bus série depuis le terminal à l’aide de commandes telles que cat et echo par exemple, vous pouvez imprimer la liste des GPIO avec :
- Système de fichiers flash intégré avec nivellement d’usure (s’appuyant sur le projet LittleFS)
- Routines d’initialisation du matériel périphérique
- Service de surveillance pour la récupération sécurisée du système
- Gestionnaire de tâches RTOS pour contrôler dynamiquement les services système au moment de l’exécution

Le « rootfs » propose des répertoires similaires (mnt, etc, bin, proc, dev et lib) comme dans une distribution Linux minimale. Vous trouverez le code source publié sous licence MIT et des instructions pour créer BreadboardOS sur GitHub. Il n’y a aucune documentation sur les commandes disponibles que j’ai pu trouver, et la meilleure façon de les vérifier est de regarder la vidéo ci-dessous ou d’installer Breadboard OS sur un Raspberry Pi Pico ou Pico W.

À l’heure actuelle, BreaboardOS, ou BBOS en abrégé, est implémenté uniquement sur le Raspberry Pi RP2040. Cependant, Cavin explique que la plate-forme a été conçue en pensant au portage et que le projet a été structuré de telle sorte que tout le code spécifique au matériel réside dans un seul répertoire (hardware_pico ) avec un fichier d’en-tête (hardware_config.h) fournissant la fonctionnalité HAL.
Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

