Small example of running bare-metal STM32G0 firmware in Renode
  • Nix 32.2%
  • Shell 18%
  • C 17.4%
  • Linker Script 16.7%
  • Makefile 8.1%
  • Other 7.6%
Find a file
sid e4ffa0e47a
All checks were successful
Test STM32G0 Firmware / build-and-test (push) Successful in 9s
Release Firmware / release (push) Successful in 3s
initial commit
2026-06-09 05:05:28 +02:00
.forgejo initial commit 2026-06-09 05:05:28 +02:00
linker initial commit 2026-06-09 05:05:28 +02:00
renode initial commit 2026-06-09 05:05:28 +02:00
src initial commit 2026-06-09 05:05:28 +02:00
test initial commit 2026-06-09 05:05:28 +02:00
.envrc initial commit 2026-06-09 05:05:28 +02:00
.gitignore initial commit 2026-06-09 05:05:28 +02:00
build.sh initial commit 2026-06-09 05:05:28 +02:00
flake.lock initial commit 2026-06-09 05:05:28 +02:00
flake.nix initial commit 2026-06-09 05:05:28 +02:00
Makefile initial commit 2026-06-09 05:05:28 +02:00
README.md initial commit 2026-06-09 05:05:28 +02:00

renode-stm32g0

Small example of running bare-metal STM32G0 firmware in Renode, an open-source embedded system emulator. Cross-compile with arm-none-eabi-gcc, run a Cortex-M0 binary, and test it headlessly via Robot Framework. CI-ready with Forgejo Actions.

Quick start

nix develop                      # enter devshell (renode + libopencm3 + arm-none-eabi-gcc)
make
renode-test test/stm32g0.robot   # run tests

If you have a display, run interactively to see UART output in a window:

renode renode/run.resc