Aller au contenu
storagebits
← Projets

Hubris sur une NUCLEO-F412ZG

L'OS embarqué d'Oxide démarré sur une NUCLEO-F412ZG, une carte qu'il ne prend pas en charge, à 100 MHz. Le noyau n'a pas changé d'une ligne ; le débogueur a eu besoin de deux correctifs.

fork d'Oxide
La carte NUCLEO-F412ZG branchée en USB, ses LED verte, bleue et rouge allumées.

Hubris est le petit OS en Rust qu’Oxide Computer fait tourner sur les processeurs de service de ses serveurs ; Humility est son débogueur. Aucun des deux ne prend en charge le STM32F412 de la NUCLEO-F412ZG, une carte de développement de ST.

  • Le noyau : inchangé.
  • La carte et l’appli : de purs ajouts, avec l’arbre d’horloges réglé à 100 MHz.
  • Trois pilotes partagés adaptés, environ 150 lignes, sans changer ce que construit la carte Discovery existante.
  • Humility : deux correctifs, gardés dans ce fork.

Ce qui tourne sur la carte : les trois LED, une console sur le port série virtuel du ST-LINK, et une démonstration de l’unité de protection mémoire, où une tâche plante exprès et le superviseur la relance. Tout le portage est raconté, couche par couche, dans le billet ci-dessous.