Skip to content

Software

libopencm3

By libopencm3, from github.com/libopencm3/libopencm3 (opens in a new tab)

  • Microcontrollers and firmware tools
  • Library
  • LGPL-3.0-or-later

A firmware library for various ARM Cortex-M microcontrollers, written from scratch from vendor datasheets. It is meant to be built with a GCC ARM toolchain.

Facts

GitHub stars
3,673read on 6 Nov 2026
Last update
6 Nov 2026Newest commit on master
Maintenance
Activea commit in the last 90 days
Difficulty
Advanced
Hardware it needs, as the project states it
Requires Python and an arm-none-eabi or arm-elf toolchain; builds on Ubuntu, Fedora or Windows (via MSYS). No specific board or computer requirements are stated.

Checked on GitHub on 6 Nov 2026.

Licenses

Code
LGPL-3.0-or-later (opens in a new tab)

Read by Robotheca from COPYING.GPL3 (opens in a new tab) (GPL-3.0-only) and COPYING.LGPL3 (opens in a new tab) (LGPL-3.0-only) at commit a3977e1 (opens in a new tab), on 6 Nov 2026. The files name several licenses: a person at Robotheca set it on 9 Nov 2026.

Commercial use
Yes

Copyleft: Modified source must be published.

Overview

What it does: Robotheca's summary

  • Code is written from scratch based on vendor datasheets, programming manuals and application notes.
  • Built with a GCC toolchain for ARM (arm-none-eabi or arm-elf); flashing is done with OpenOCD.
  • Building requires Python, since some code is generated; the build can be limited to specific MCU series.
  • Support is partial: not all subsystems of all microcontrollers are supported yet, and the API is still changing before version 1.0.
  • Example projects are provided in separate repositories.

Written by Robotheca from the project's README (opens in a new tab) at commit 9629751, not by its creator.

The README

Read the README on GitHub (opens in a new tab)

Files and versions

Facts read at commit a3977e1

Robotheca read the repository at two versions: the summary at 9629751 and the facts at a3977e1 (read on 6 Nov 2026).

Robotheca never hosts the code: each link goes to the creator's own page.

Use it

How to install it, in the creator's words: The project's README (opens in a new tab)

Robotheca doesn't review code. Read it before running it.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.