Le micrologiciel BreadboardOS pour le Raspberry Pi RP2040 comprend un terminal de type Linux

BreadboardOS Raspberry Pi Pico

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.

Planche à painOS Raspberry Pi Pico
BreadboardOS fonctionnant sur la carte Raspberry Pi Pico

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
Contrôle GPIO du terminal Raspberry Pi RP2040
Exemples de commandes pour lister les appareils et contrôler les broches GPIO (à partir de la vidéo ci-dessous)

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.

Youtube video

À 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.

Carte mère ROCK 5 ITX RK3588 mini-ITX

Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

Youtube video