Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



54 Commits

Repository files navigation

STM32-base project

Welcome to the STM32-base project main repository! Here you will find the code and scripts that make up the STM32-base project. Visit for more information and documentation on the STM32-base project.

WARNING: This project is work in progress! Anything can (and probably will) change! Do not use the code found in this project for any critical system(s). The use of the code and documentation is at your own risk!


The purpose of the STM32-base project is to provide you with a simple and easy to use base project for working with STM32 microcontrollers. More information on why this project came into being can be found on the about page.

Getting started

Check out the getting started with STM32 microcontrollers guide. This guide is intended for beginners who want to get started with STM32 microcontrollers but don't know how or where to get started.

You can get started with the STM32-base project by reading the setup guide. A brief version of this guide is included in this README.

Quick start

  1. Create a workspace directory
    Create a directory named STM32-base. Create four directories in that folder. Name them libraries, projects, templates, and tools.
  2. Install required software
    Install Git and make. Download the GNU ARM Embedded Toolchain. Extract the downloaded archive to the tools directory. Install the open-source ST-Link Tools.
  3. Clone this and the STM32-base-STM32Cube repositories
    Clone both this and the STM32-base-STM32Cube repositories in the STM32-base directory.
  4. Clone the template repositories
    Clone one or more of the template repositories.
    git clone
    git clone
    git clone
    git clone
    git clone
    git clone
  5. Test the setup
    In one of the templates, create two symbolic links to the STM32-base and the STM32-base-STM32Cube repositories. The run make. You have successfully set up the STM32-base project on your machine if compilation succeeds.


The STM32-base documentation contains a lot of information on many different STM32 development boards. A lot of the Chinese STM32 development boards that are available are listed on the board page.


Refer to the file to learn more about contributing to the STM32-base project.