← Projects
Hubris on a NUCLEO-F412ZG
Oxide's embedded OS brought up on a NUCLEO-F412ZG, a board it does not support, at 100 MHz. The kernel did not change by a line; the debugger needed two fixes.
fork of Oxide
Hubris is the small Rust OS that Oxide Computer runs on the service processors of its servers; Humility is its debugger. Neither supports the STM32F412 of the NUCLEO-F412ZG, an ST development board.
- The kernel: unchanged.
- The board and the app: pure additions, with the clock tree configured for 100 MHz.
- Three shared drivers adapted, about 150 lines, without changing what the existing Discovery board builds.
- Humility: two fixes, kept in this fork.
What runs on the board: first light on the three LEDs, a console on the ST-LINK’s virtual serial port, and a demonstration of the memory protection unit, where a task faults on purpose and the supervisor restarts it. The whole port is told, layer by layer, in the post below.