DEV Community

Cover image for MIT-Licensed STM32C5 BluePill Clone Runs Oberon-2 Instead of C
circuitrocks
circuitrocks

Posted on Originally published at blog.circuit.rocks

MIT-Licensed STM32C5 BluePill Clone Runs Oberon-2 Instead of C

What you need on the bench

A breadboard, a USB-C cable, jumper wires, and one thing most BluePill tutorials skip: an SWD programmer. An ST-Link V2 clone runs about PHP 300 locally, and on this board it is not optional. The USB Type-C port carries power and serial traffic through a CH340E bridge, but it will not flash the chip. Wire SWDIO and SWCLK to the on-board header first, then worry about code.

The board itself

Norwegian engineer Runar Tenfjord, working through his company Tenko, published KiCad v10 design files and firmware for an STM32C5 board shaped exactly like the BluePill everyone already owns. Everything sits under the MIT license on GitHub, so you can fork the schematic, move a footprint, and send it to a fab without asking anyone. Tenfjord notes the STM32C5 family is new enough that supply was thin when he laid the board out, so he designed around an LQFP-48 footprint that should accept other variants as they land at distributors.

What is inside

The silicon is an STM32C551CE: one 32-bit Arm Cortex-M33 core at up to 144MHz, 128kB of SRAM, and 512kB of flash. Around it sit a 3.3V LDO regulator, a reset button, and a user LED and button for the first blink test. The interesting part is the toolchain. Alongside normal C/C++, the board supports ECSOberon, an embedded dialect of Oberon-2 with a native bit SET type that makes poking peripheral registers read like set arithmetic instead of shift-and-mask soup. Modules replace header files, so name collisions stop being a build problem. Tenfjord is honest about the tradeoffs: uppercase keywords everywhere, no preprocessor, and almost no example code, which means writing your own drivers from scratch.

Worth a weekend?

If you have ever wondered why embedded programming feels welded to C, this board is a cheap way to test that assumption on real hardware you can also program the boring way. Pull the KiCad project and firmware from the GitHub repo linked in Hackster's write-up, check STMicro's LQFP-48 stock before you commit to a variant, and flash a plain C blink over SWD before switching languages. If your ST-Link refuses to connect, hold reset while it probes; the C5 boots fast enough to lock the debug port on a cold start.


Originally published on blog.circuit.rocks.

pcbdesign #kicad #electronics #hardwareengineering #circuitrocks

Top comments (0)