• Stars
    star
    343
  • Rank 123,371 (Top 3 %)
  • Language
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

This repo describes all STM32 MCU related GitHub projects. The open source offer for the STM32 MCU products

STM32Cube MCU Overall Offer

Overview

STM32Cube is an STMicroelectronics original initiative to ease the developers life by reducing efforts, time and cost.

STM32Cube covers the overall STM32 products portfolio (MCU and MPU). It includes a comprehensive embedded software platform, delivered for each STM32 series.

  • The CMSIS modules (core and device) corresponding to the ARM(tm) core implemented in this STM32 product.
  • The STM32 HAL-LL drivers, an abstraction layer offering a set of APIs ensuring maximized portability across the STM32 portfolio.
  • The BSP drivers of each evaluation, demonstration, or nucleo board provided for this STM32 series.
  • A consistent set of middleware libraries such as RTOS, USB, FatFS, graphics, touch sensing library...
  • A full set of software projects (basic examples, applications, and demonstrations) for each board provided for this STM32 series.

GitHub is a new publication model for the STM32Cube MCU embedded software. Different models of publication are proposed:

  • The MCU Package: A unique repo per STM32 MCU series containing the different components of a STM32 MCU firmware (Drivers, Middleware, Utilities, Examples). Please refer to the STM32Cube MCU Packages chapter below.
  • The MCU components: Each component of a STM32 MCU firmware (Drivers, Middleware, Utilities) is proposed in a dedicated repo, allowing the user to select and get only the required ones. Please refer to the STM32Cube MCU Components chapter below.
  • The X-CUBE: Expansion software proposing examples and applications that complement the ones of the STM32Cube firmware.
  • A set of MCU Utilities: Various utility features proposed in dedicated repos.

Please note that a MPU offer is also proposed for the STM32 MPU Products. You can refer to the repo STM32MPU_EmbSW_Overall_Offer.

Description

This repo is a simple Readme describing all STM32 MCU related GitHub projects, the overall offer for the STM32 MCU products.

This new publication channel of the STM32Cube embedded software components will provide new added values:

  • In complement to the MCU Package zip files today proposed on st.com, the capability for STM32 customers to get a configuration management based delivery (Git)
  • A more direct communication between developers, thanks to the Issues features. Caution: only software related questions will be taken into account. Any other subject must be submitted to the ST Community forum
  • Thanks to the deployment of a Contributor License Agreement feature (please refer to each repo CONTRIBUTING guide), the Pull-Request permits also to take into account customers proposed updates and enrich the STM32Cube FW offer.

For general communication and support, you can use

Content

STM32Cube MCU Packages

STM32Cube MCU Packages Description
STM32CubeC0 The STM32CubeC0 FW MCU Package
STM32CubeF0 The STM32CubeF0 FW MCU Package
STM32CubeF1 The STM32CubeF1 FW MCU Package
STM32CubeF2 The STM32CubeF2 FW MCU Package
STM32CubeF3 The STM32CubeF3 FW MCU Package
STM32CubeF4 The STM32CubeF4 FW MCU Package
STM32CubeF7 The STM32CubeF7 FW MCU Package
STM32CubeH5 The STM32CubeH5 FW MCU Package
STM32CubeH7 The STM32CubeH7 FW MCU Package
STM32CubeG0 The STM32CubeG0 FW MCU Package
STM32CubeG4 The STM32CubeG4 FW MCU Package
STM32CubeL0 The STM32CubeL0 FW MCU Package
STM32CubeL1 The STM32CubeL1 FW MCU Package
STM32CubeL4 The STM32CubeL4 FW MCU Package
STM32CubeL5 The STM32CubeL5 FW MCU Package
STM32CubeU5 The STM32CubeU5 FW MCU Package
STM32CubeWB The STM32CubeWB FW MCU Package
STM32CubeWBA The STM32CubeWBA FW MCU Package
STM32CubeWL The STM32CubeWL FW MCU Package

X-CUBE Expansion softwares

The STM32Cube expansion software contains embedded software components that complement the functionalities of the STM32Cube and/or enable the usage of a multitude of ST devices in domains such as of sensing, power management, connectivity or audio, together with the most appropriate STM32 MCUs.

STM32Cube Azure RTOS X-CUBE Description
x-cube-azrtos-f4 Azure RTOS Expansion Package for STM32Cube, for STM32F4 series.
x-cube-azrtos-f7 Azure RTOS Expansion Package for STM32Cube, for STM32F7 series.
x-cube-azrtos-g0 Azure RTOS Expansion Package for STM32Cube, for STM32G0 series.
x-cube-azrtos-g4 Azure RTOS Expansion Package for STM32Cube, for STM32G4 series.
x-cube-azrtos-h7 Azure RTOS Expansion Package for STM32Cube, for STM32H7 series.
x-cube-azrtos-l4 Azure RTOS Expansion Package for STM32Cube, for STM32L4 series.
x-cube-azrtos-l5 Azure RTOS Expansion Package for STM32Cube, for STM32L5 series.
x-cube-azrtos-wb Azure RTOS Expansion Package for STM32Cube, for STM32WB series.
x-cube-azrtos-wl Azure RTOS Expansion Package for STM32Cube, for STM32WL series.
STM32Cube Connectivity X-CUBE Description
x-cube-ble1 BlueNRG-M0 Bluetooth Low Energy Expansion Package for STM32Cube.
x-cube-ble2 BlueNRG-2 Bluetooth Low Energy Expansion Package for STM32Cube.
x-cube-blemgr Expansion Package to set and configure bluetooth connectivity from board to mobile application such as ST BLE Sensor.
x-cube-nfc4 Dynamic NFC/RFID tag IC (ST25DV04K device) Expansion Package for STM32Cube.
x-cube-nfc7 Dynamic NFC/RFID tag IC (ST25DV64KC device) Expansion Package for STM32Cube.
x-cube-sfxs2lp1 Embedded software S2-LP Sigfox library and GUI PC application to transmit messages to the Sigfox network.
x-cube-subg2 Sub 1 GHz RF communication for S2-LP Expansion Package for STM32Cube.
STM32Cube FreeRTOS X-CUBE Description
x-cube-freertos FreeRTOS Expansion Package for STM32H5 and STM32U5.
STM32Cube IoT X-CUBE Description
x-cube-aws AWS IoT Expansion Package for STM32Cube.
x-cube-azure-telematics Azure IoT Expansion Package for STM32Cube.
x-cube-iota1 IOTA Distributed Ledger Technology Expansion Package for STM32Cube.
STM32Cube MEMS and Sensors X-CUBE Description
x-cube-ispu Provides examples and drivers for STM32 to recognize sensors and collect temperature, humidity, pressure, motion, and ISPU (Intelligent Sensor Processing Unit) data.
x-cube-mems1 X-CUBE-MEMS1 Expansion Package for STM32Cube. (X-NUCLEO-IKS01A2, X-NUCLEO-IKS01A3 and X-NUCLEO-IKS02A1).
x-cube-memsmic1 Provides examples for STM32 using ST analog and digital MEMS microphones, and ultrasound condition monitoring (UltrasoundFFT).
x-cube-soundter1 Provides drivers and middleware for STM32 to interface with the STA350BW Sound Terminal component mounted on X-NUCLEO-CCA01M1 expansion board.
STM32Cube USB-PD X-CUBE Description
x-cube-tcpp USB-IF certified Expansion Package for the integration of TCPPs protection circuits (OV/OC).
x-cube-usb-pd USB-IF certified Expansion Package as USB Type-C port manager (TCPM).
STM32Cube Miscellaneous X-CUBE Description
x-cube-eeprma1 M24XX I2C and M95XX SPI EEPROMs Expansion Package for STM32Cube.
x-cube-gnss1 Teseo-LIV3F GNSS Expansion Package for STM32Cube.

STM32Cube Function Packs

STM32 Function Packs (FP) are a combination of low-level drivers, middleware libraries and sample applications assembled into a single software package. You can get the entire list of available Function Packs on st.com here.

The below list represents the Function Packs available on github.com

STM32Cube Function Packs Description
fp-atr-sigfox1 STM32Cube function pack for reading data from GNSS and environmental sensors and sending this information via Sigfox.
fp-aud-aec1 STM32Cube function pack for Acoustic Echo Cancellation implementing a USB smart speaker use case with microphone.
fp-aud-smartmic1 STM32Cube function pack for acquiring audio signals from 4 digital MEMS microphones, processing them, and streaming them to both a USB host and a loudspeaker.
fp-sns-allmems1 STM32Cube function pack for IoT node with BLE connectivity to view environmental and intertial sensors data, plus some advanced functionalities (e.g., voice communication over BLE, sound source localization).
fp-sns-datalog1 STM32Cube function pack for IoT node with BLE connectivity to save data from any combination of sensors and microphones configured up to the maximum sampling rate.
fp-sns-datalog2 STM32Cube function pack for IoT node with BLE connectivity to save data from any combination of sensors and microphones configured up to the maximum sampling rate (evolution of the fp-sns-datalog1 pack).
fp-sns-flight1 STM32Cube function pack for IoT node with BLE connectivity to view time-of-flight sensors data in real-time.
fp-sns-motenv1 STM32Cube function pack for IoT node with BLE connectivity to view environmental and intertial sensors data for F4, L0, and L4 based on the BlueNRG transceiver.
fp-sns-motenvwb1 STM32Cube function pack for IoT node with BLE connectivity to view environmental and intertial sensors data for WB.
fp-sns-smartag2 STM32Cube function pack for IoT node to read the ambient light, motion, and environmental sensor data by means of a NFC-enabled reader.

STM32Cube MCU Components

As mentioned above, the STM32Cube Components is an alternative delivery model to the STM32 Packages. In this case, each module is delivered as individual repos, allowing the customer to select and download only the pertinent features.

  • Components available today: CMSIS - HAL/LL - BSP - Base MW (USB, FatFS, FreeRTOS, LwIP)
  • Components upcoming: Other MW - Utilities

In each module README file you will find the cross compatibility information. When all modules will be available a set of new Manifest files (series by series) will be proposed to drive the user.

STM32Cube CMSIS

STM32Cube CMSIS core Description
cmsis_core The STM32 CMSIS Core, issued from ARM (tm) publication. Please check the ST_README.md file.
STM32Cube CMSIS Devices Description
cmsis_device_c0 The STM32C0 CMSIS Device files
cmsis_device_f0 The STM32F0 CMSIS Device files
cmsis_device_f1 The STM32F1 CMSIS Device files
cmsis_device_f2 The STM32F2 CMSIS Device files
cmsis_device_f3 The STM32F3 CMSIS Device files
cmsis_device_f4 The STM32F4 CMSIS Device files
cmsis_device_f7 The STM32F7 CMSIS Device files
cmsis_device_g0 The STM32G0 CMSIS Device files
cmsis_device_g4 The STM32G4 CMSIS Device files
cmsis_device_h5 The STM32H5 CMSIS Device files
cmsis_device_h7 The STM32H7 CMSIS Device files
cmsis_device_l0 The STM32L0 CMSIS Device files
cmsis_device_l1 The STM32L1 CMSIS Device files
cmsis_device_l4 The STM32L4 CMSIS Device files
cmsis_device_l5 The STM32L5 CMSIS Device files
cmsis_device_u5 The STM32U5 CMSIS Device files
cmsis_device_wb The STM32WB CMSIS Device files
cmsis_device_wba The STM32WBA CMSIS Device files
cmsis_device_wl The STM32WL CMSIS Device files

STM32Cube HAL Drivers

The HAL Drivers MCU Components propose the HAL and LL Drivers modules controlling all the HW IPs embedded in the STM32 products.

  • HAL Drivers:

    • A set of portable abstraction APIs offering high level services, built around standalone processes. The HAL drivers are functionalities oriented, example: for the Timer peripheral, the APIs could be split into several categories following the functions offered by the IPs (Basic timer, capture, PWM...) for a communication IP: an initialisation function, eventually a configuration function and data transfer services (polling, interruption or DMA based)
    • The compatibility SHALL be guaranteed across all the STM32 families for the generic APIs, including generic macros and common structures defines. Any specific feature is given in a dedicated extension model available in the associated extension files
  • LL Drivers:

    • Low Layer Drivers: a set of basic functions with direct hardware access (no standalone process), this layer can be called either by applications or by the HAL drivers.

HAL and LL Drivers are provided in the same module/repo

The dynamic usage of HAL APIs is provided thru projects examples, available in the respective STM32Cube MCU Packages STM32Cubexx where xx correspond to the series

STM32Cube HAL Drivers Description
stm32c0xx_hal_driver The STM32C0 HAL-LL Drivers
stm32f0xx_hal_driver The STM32F0 HAL-LL Drivers
stm32f1xx_hal_driver The STM32F1 HAL-LL Drivers
stm32f2xx_hal_driver The STM32F2 HAL-LL Drivers
stm32f3xx_hal_driver The STM32F3 HAL-LL Drivers
stm32f4xx_hal_driver The STM32F4 HAL-LL Drivers
stm32f7xx_hal_driver The STM32F7 HAL-LL Drivers
stm32g0xx_hal_driver The STM32G0 HAL-LL Drivers
stm32g4xx_hal_driver The STM32G4 HAL-LL Drivers
stm32h5xx_hal_driver The STM32H5 HAL-LL Drivers
stm32h7xx_hal_driver The STM32H7 HAL-LL Drivers
stm32l0xx_hal_driver The STM32L0 HAL-LL Drivers
stm32l1xx_hal_driver The STM32L1 HAL-LL Drivers
stm32l4xx_hal_driver The STM32L4 HAL-LL Drivers
stm32l5xx_hal_driver The STM32L5 HAL-LL Drivers
stm32u5xx_hal_driver The STM32U5 HAL-LL Drivers
stm32wbxx_hal_driver The STM32WB HAL-LL Drivers
stm32wbaxx_hal_driver The STM32WBA HAL-LL Drivers
stm32wlxx_hal_driver The STM32WL HAL-LL Drivers

STM32Cube BSP Drivers

The BSP Drivers MCU Components propose the BSP Drivers modules, which are constituted from the:

  • STM32Cube BSP Boards Drivers, based on the HAL drivers, and providing a set of high level APIs allowing a quick access to the boards services (e.g., audio, graphics, access to external memories).
  • STM32Cube BSP Components Drivers providing a set of high level APIs allowing a quick access to the (e.g., audio codecs, LCD drivers, SD cards, MEMS). The link between these external components and the HAL drivers (e.g., a SD card and the OSPI/QSPI HAL driver) is done within the BSP Boards drivers.

NOTE: A number of BSP components drivers (particularly of MEMS) come in two forms, each addressing a different purpose. For each one of such BSP components drivers, two repositories are available as explained below:

  • PID: Platform-Independent Drivers. Recognizable to their repositories' names <bspcomp> (e.g., hts221). Are low-level drivers allowing direct access to components' registers. These drivers are independent of any software platform, as the acronym PID suggests. The complete list can be found here.

  • STM32: STM32Cube-compatible drivers. Recognizable to their repositories' names stm32-<bspcomp> (e.g., stm32-hts221). Are hardware-abstracted drivers, specially designed to be compatible with the STM32Cube software offer, as the stm32- prefix suggests. The complete list is provided below (refer particularly to tables MEMS and Temperature Sensor).


STM32Cube BSP Boards Drivers

STM32CubeC0 BSP Boards Drivers Description
nucleo-c031c6-bsp NUCLEO-C031C6 BSP Driver
stm32c0116-dk-bsp STM32C0116-DK BSP Driver
stm32c0316-dk-bsp STM32C0316-DK BSP Driver
STM32CubeF0 BSP Boards Drivers Description
stm32f0xx-nucleo-32-bsp F0 nucleo 32 BSP Driver
stm32f0xx-nucleo-bsp F0 nucleo BSP Driver
stm32091c-eval-bsp STM32091C_EVAL BSP Driver
stm32072b-eval-bsp STM32072B_EVAL BSP Driver
32f072bdiscovery-bsp 32F072BDISCOVERY BSP Driver
32f0308discovery-bsp 32F0308DISCOVERY BSP Driver
STM32CubeF1 BSP Boards Drivers Description
stm3210c-eval-bsp STM3210C_EVAL BSP Driver
stm3210e-eval-bsp STM3210E_EVAL BSP Driver
stm32f1xx-nucleo-bsp F1 nucleo BSP Driver
stm32vldiscovery-bsp STM32VLDISCOVERY BSP Driver
STM32CubeF2 BSP Boards Drivers Description
stm322xg-eval-bsp STM322xG_EVAL BSP Driver
stm32f2xx-nucleo-144-bsp F2 nucleo BSP Driver
STM32CubeF3 BSP Boards Drivers Description
stm32303c-eval-bsp STM32303C_EVAL BSP Driver
stm32303e-eval-bsp STM32303E_EVAL BSP Driver
stm32373c-eval-bsp STM32373C_EVAL BSP Driver
stm32f3discovery-bsp STM32F3-Discovery BSP Driver
stm32f3xx-nucleo-bsp F3 nucleo BSP Driver
stm32f3xx-nucleo-144-bsp F3 nucleo 144 BSP Driver
stm32f3xx-nucleo-32-bsp F3 nucleo 32 BSP Driver
32f3348discovery-bsp 32F3348DISCOVERY BSP Driver
STM32CubeF4 BSP Boards Drivers Description
stm32f4xx-nucleo-144-bsp F4 nucleo 144 BSP Driver
stm32f4xx-nucleo-bsp F4 nucleo BSP Driver
stm324xg-eval-bsp STM324xG-EVAL BSP Driver
stm32469i-eval-bsp STM32469I_EVAL BSP Driver
32f469idiscovery-bsp 32F469IDISCOVERY BSP Driver
32f429idiscovery-bsp 32F429IDISCOVERY BSP Driver
32f401cdiscovery-bsp 32F401CDISCOVERY BSP Driver
stm32446e-eval-bsp STM32446E-EVAL BSP Driver
32f411ediscovery-bsp 32F411EDISCOVERY BSP Driver
32f412gdiscovery-bsp 32F412GDISCOVERY BSP Driver
32f413hdiscovery-bsp 32F413HDISCOVERY BSP Driver
stm32f4-discovery-bsp STM32F4-Discovery BSP Driver
stm324x9i-eval-bsp STM324x9I-EVAL BSP Driver
STM32CubeF7 BSP Boards Drivers Description
stm32756g-eval-bsp STM32756G_EVAL BSP Driver
stm32f7308-dk-bsp STM32F7308-Discovery BSP Driver
stm32f7508-dk-bsp STM32F7508-Discovery BSP Driver
stm32f769i-eval-bsp STM32F769I_EVAL BSP Driver
stm32f7xx-nucleo-144-bsp F7 nucleo BSP Driver
32f769idiscovery-bsp 32F769IDISCOVERY BSP Driver
32f723ediscovery-bsp 32F723EDISCOVERY BSP Driver
32f746gdiscovery-bsp 32F746GDISCOVERY BSP Driver
STM32CubeG0 BSP Boards Drivers Description
stm32g0316-disco-bsp STM32G0316-DISCO BSP Driver
stm32g071b-disco-bsp STM32G071B-DISCO BSP Driver
stm32g081b-eval-bsp STM32G081B_EVAL BSP Driver
stm32g0c1e-ev-bsp STM32G0C1E-EV BSP Driver
stm32g0xx-nucleo-bsp G0 nucleo BSP Driver
stm32g0xx-nucleo-32-bsp G0 nucleo BSP Driver
STM32CubeG4 BSP Boards Drivers Description
b-g474e-dpow1-bsp B-G474E-DPOW1 BSP Driver
stm32g474e-eval-bsp STM32G474E-EVAL BSP Driver
stm32g4xx-nucleo-bsp G4 nucleo BSP Driver
STM32CubeH5 BSP Boards Drivers Description
stm32h573i-discovery-bsp STM32H573I-DK BSP Driver
stm32h5xx-nucleo-bsp H5 nucleo BSP Driver
STM32CubeH7 BSP Boards Drivers Description
stm32h7b3i-dk-bsp STM32H7B3I-DK BSP Driver
stm32h750b-dk-bsp STM32H750B-DK BSP Driver
stm32h747i-eval-bsp STM32H747I-EVAL BSP Driver
stm32h747i-disco-bsp STM32H747I-DISCO BSP Driver
stm32h745i-disco-bsp STM32H745I-DISCO BSP Driver
stm32h743i-eval-bsp STM32H743I-EVAL BSP Driver
stm32h735g-dk-bsp STM32H735G-DK BSP Driver
stm32h7b3i-eval-bsp STM32H7B3I-EVAL BSP Driver
stm32h7xx-nucleo-bsp H7 nucleo BSP Driver
STM32CubeL0 BSP Boards Drivers Description
stm32l073z-eval-bsp STM32L073Z-EVAL BSP Driver
stm32l0xx-nucleo-bsp L0 nucleo BSP Driver
stm32l0xx-nucleo-32-bsp L0 nucleo 32 BSP Driver
32l0538discovery-bsp 32L100CDISCOVERY BSP Driver
STM32CubeL1 BSP Boards Drivers Description
stm32l152d-eval-bsp STM32L152D-EVAL BSP Driver
stm32l1xx-nucleo-bsp L1 nucleo BSP Driver
32l152cdiscovery-bsp 32L152CDISCOVERY BSP Driver
32l100cdiscovery-bsp 32L100CDISCOVERY BSP Driver
STM32CubeL4 BSP Boards Drivers Description
b-l475e-iot01a-bsp B-L475E-IOT01A BSP Driver
b-l4s5i-iot01a-bsp B-L4S5I-IOT01A BSP Driver
stm32l476g-eval-bsp STM32L476G-EVAL BSP Driver
stm32l4p5g-dk-bsp STM32L4P5G-DK BSP Driver
stm32l4r9i-eval-bsp STM32L4R9I-EVAL BSP Driver
stm32l4xx-nucleo-bsp L4 nucleo BSP Driver
stm32l4xx-nucleo-144-bsp L4 nucleo 144 BSP Driver
stm32l4xx-nucleo-32-bsp L4 nucleo 32 BSP Driver
32l496gdiscovery-bsp 32L496GDISCOVERY BSP Driver
32l4r9idiscovery-bsp 32L4R9IDISCOVERY BSP Driver
32l476gdiscovery-bsp 32L476GDISCOVERY BSP Driver
STM32CubeL5 BSP Boards Drivers Description
stm32l562e-dk-bsp STM32L562E-DK BSP Driver
stm32l552e-ev-bsp STM32L552E-EV BSP Driver
stm32l5xx-nucleo-bsp L5 nucleo BSP Driver
STM32CubeU5 BSP Boards Drivers Description
b-u585i-iot02a-bsp B-U585I-IOT02A BSP Driver
stm32u575i-ev-bsp STM32U575I-EV BSP Driver
stm32u5x9j-dk-bsp STM32U5A9J-DK and STM32U5G9J-DK1 BSP Driver
stm32u5g9j-dk2-bsp STM32U5G9J-DK2 BSP Driver
stm32u5xx-nucleo-bsp U5 nucleo BSP Driver
STM32CubeWB BSP Boards Drivers Description
stm32wb5mm-dk-bsp STM32WB5MM-DK BSP Driver
nucleo-wb15cc-bsp NUCLEO-WB15CC BSP Driver
p-nucleo-wb55-nucleo-bsp P-NUCLEO-WB55.Nucleo BSP Driver
p-nucleo-wb55-usb-dongle-bsp P-NUCLEO-WB55.USBDongle BSP Driver
STM32CubeWBA BSP Boards Drivers Description
stm32wbaxx-nucleo-bsp WBA nucleo BSP Driver
STM32CubeWL BSP Boards Drivers Description
stm32wlxx-nucleo-bsp WL nucleo BSP Driver

STM32Cube BSP Components Drivers

STM32Cube BSP Audio Components Drivers Description
stm32-adv7533 The ADV7533 BSP Component Driver
stm32-ak4343 The AK4343 BSP Component Driver
stm32-cs42l51 The CS42L51 BSP Component Driver
stm32-cs42l52 The CS42L52 BSP Component Driver
stm32-cs43l22 The CS43L22 BSP Component Driver
stm32-wm8994 The WM8994 BSP Component Driver
STM32Cube BSP Camera Components Drivers Description
stm32-ov2640 The OV2640 BSP Component Driver
stm32-ov5640 The OV5640 BSP Component Driver
stm32-ov9655 The OV9655 BSP Component Driver
stm32-s5k5cag The S5K5CAG BSP Component Driver
STM32Cube BSP IO Expander Components Drivers Description
stm32-mfxstm32l152 The MFXSTM32L152 BSP Component Driver
stm32-stmpe1600 The STMPE1600 BSP Component Driver
stm32-stmpe811 The STMPE811 BSP Component Driver
STM32Cube BSP LCD Components Drivers Description
stm32-ampire480272 The AMPIRE480272 BSP Component Driver
stm32-ampire640480 The AMPIRE640480 BSP Component Driver
stm32-hx8347d The HX8347D BSP Component Driver
stm32-hx8347g The HX8347G BSP Component Driver
stm32-hx8347i The HX8347I BSP Component Driver
stm32-ili9320 The ILI9320 BSP Component Driver
stm32-ili9325 The ILI9325 BSP Component Driver
stm32-ili9328 The ILI9328 BSP Component Driver
stm32-ili9341 The ILI9341 BSP Component Driver
stm32-ls016b8uy The LS016B8UY BSP Component Driver
stm32-nt35510 The NT35510 BSP Component Driver
stm32-otm8009a The OTM8009A BSP Component Driver
stm32-rk043fn48h The RK043FN48H BSP Component Driver
stm32-rk070er9427 The RK070ER9427 BSP Component Driver
stm32-spfd5408 The SPFD5408 BSP Component Driver
stm32-ssd1315 The SSD1315 BSP Component Driver
stm32-st7735 The ST7735 BSP Component Driver
stm32-st7789h2 The ST7789H2 BSP Component Driver
STM32Cube BSP MEMS Components Drivers Description
stm32-hts221 The HTS221 BSP Component Driver
stm32-ism330dhcx The ISM330DHCX BSP Component Driver
stm32-ism330dlc The ISM330DLC BSP Component Driver
stm32-i3g4250d The I3G4250D BSP Component Driver
stm32-l3gd20 The L3GD20 BSP Component Driver
stm32-lan8742 The LAN8742 BSP Component Driver
stm32-lis302dl The LIS302DL BSP Component Driver
stm32-lis3dsh The LIS3DSH BSP Component Driver
stm32-lis3mdl The LIS3MDL BSP Component Driver
stm32-lps22hb The LPS22HB BSP Component Driver
stm32-lps22hh The LPS22HH BSP Component Driver
stm32-lsm303agr The LSM303AGR BSP Component Driver
stm32-lsm303c The LSM303C BSP Component Driver
stm32-lsm303dlhc The LSM303DLHC BSP Component Driver
stm32-lsm6dsl The LSM6DSL BSP Component Driver
stm32-s70kl1281 The S70KL1281 BSP Component Driver
STM32Cube BSP Magnetometer Components Drivers Description
stm32-iis2mdc The IIS2mdc BSP Component Driver
STM32Cube BSP QSPI/OSPI Components Drivers Description
stm32-iss66wvh8m8 The ISS66WVH8M8 BSP Component Driver
stm32-mt25ql512abb The MT25QL512ABB BSP Component Driver
stm32-mt25tl01g The MT25TL01G BSP Component Driver
stm32-mx25l512 The MX25L512 BSP Component Driver
stm32-mx25lm51245g The MX25LM51245G BSP Component Driver
stm32-mx25r6435f The MX25R6435F BSP Component Driver
stm32-n25q128a The N25Q128A BSP Component Driver
stm32-n25q256a The N25Q256A BSP Component Driver
stm32-n25q512a The N25Q512A BSP Component Driver
stm32-s25fl128s The S25FL128S BSP Component Driver
stm32-s25fl512s The S25FL512S BSP Component Driver
STM32Cube BSP SDRAM Components Drivers Description
stm32-is42s16800j The IS42S16800J BSP Component Driver
stm32-is42s32800g The IS42S32800G BSP Component Driver
stm32-is42s32800j The IS42S32800J BSP Component Driver
stm32-mt48lc4m32b2 The MT48LC4M32B2 BSP Component Driver
STM32Cube BSP Temperature Sensor Components Drivers Description
stm32-stlm75 The STLM75 BSP Component Driver
stm32-stts22h The STTS22H BSP Component Driver
stm32-stts751 The STTS751 BSP Component Driver
STM32Cube BSP Touch Screen Components Drivers Description
stm32-cy8c4014lqi The CY8C4014LQI BSP Component Driver
stm32-exc7200 The EXC7200 BSP Component Driver
stm32-ft3x67 The FT3X67 BSP Component Driver
stm32-ft6x06 The FT6X06 BSP Component Driver
stm32-ft5336 The FT5336 BSP Component Driver
stm32-ts3510 The TS3510 BSP Component Driver
STM32Cube BSP USB-C Components Drivers Description
stm32-cbtl08gp053 The CBTL08GP053 BSP Component Driver
stm32-sn65dp141 The SN65DP141 BSP Component Driver
stm32-tusb546 The TUSB546 BSP Component Driver
STM32Cube BSP miscellaneous Components Drivers Description
stm32-gde021a1 The GDE021A1 BSP Component Driver
stm32-m24lr64 The M24LR64 BSP Component Driver
stm32-m24sr The M24SR BSP Component Driver
stm32-ina230 The INA230 BSP Component Driver

STM32Cube Middleware Libraries and Applications

STM32Cube Classic Core MW Libraries Description
stm32_mw_fatfs FatFS middleware library
stm32_mw_freertos FreeRTOS middleware library
stm32_mw_lwip LwIP middleware library
stm32_mw_openbl Open Bootloader middleware library
stm32_mw_usb_device USB Device middleware library
stm32_mw_usb_host USB Host middleware library
STM32Cube Azure RTOS MW Libraries Description
stm32_mw_netxduo Azure RTOS NetX Duo library
stm32_mw_threadx Azure RTOS ThreadX library
STM32Cube Classic Core MW Applications Description
stm32h5-classic-coremw-apps Applications based on ST USB Device, ST USB Host, FatFS, and LwIP libraries for STM32H5 series.
stm32u5-classic-coremw-apps Applications based on ST USB Device, ST USB Host, and FreeRTOS libraries for STM32U5 series.
STM32Cube Open Bootloader MW Applications Description
stm32l5-openbl-apps Applications based on the Open Bootloader library for STM32L5 series.
stm32wb-openbl-apps Applications based on the Open Bootloader library for STM32WB series.
stm32wl-openbl-apps Applications based on the Open Bootloader library for STM32WL series.

STM32Cube Utilities and Miscellaneous repos

Repository Description
stm32-external-loader Flashloaders source code of external memories embedded in the STM32 HW boards.
stm32ai Open source AI offer in STM32 products.
STM32_open_pin_data This repo provides all the information required for the pin and board configuration of products based on STM32 MCU.

More Repositories

1

STM32CubeF4

STM32Cube MCU Full Package for the STM32F4 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
618
star
2

STMems_Standard_C_drivers

Platform-independent drivers for STMicroelectronics MEMS motion and environmental sensors, based on standard C programming language.
C
590
star
3

STM32CubeF1

STM32Cube MCU Full Package for the STM32F1 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
371
star
4

STM32CubeH7

STM32Cube MCU Full Package for the STM32H7 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
340
star
5

stm32ai-modelzoo

AI Model Zoo for STM32 devices
C
263
star
6

STM32CubeF7

STM32Cube MCU Full Package for the STM32F7 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
251
star
7

STM32CubeL4

STM32Cube MCU Full Package for the STM32L4 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
202
star
8

STM32CubeWB

Full Firmware Package for the STM32WB series: HAL+LL drivers, CMSIS, BSP, MW, plus a set of Projects (examples and demos) running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits).
C
155
star
9

STMems_Machine_Learning_Core

Configuration files, examples and tools for the Machine Learning Core feature (MLC) available in STMicroelectronics MEMS sensors. Some examples of devices including MLC: LSM6DSOX, LSM6DSRX, ISM330DHCX, IIS2ICLX, LSM6DSO32X, ASM330LHHX, LSM6DSV16X, LIS2DUX12, LIS2DUXS12
C
136
star
10

STM32CubeG0

STM32Cube MCU Full Package for the STM32G0 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
129
star
11

x-cube-azrtos-h7

X-CUBE-AZRTOS-H7 (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32H7 series of microcontrollers.
C
120
star
12

STM32CubeG4

STM32Cube MCU Full Package for the STM32G4 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
116
star
13

STM32CubeF0

STM32Cube MCU Full Package for the STM32F0 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
114
star
14

stm32f4xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32F4 series.
C
110
star
15

STM32CubeF3

STM32Cube MCU Full Package for the STM32F3 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
107
star
16

stm32-mw-openbl

Provides the Open Bootloader library, part of the STM32Cube MCU Component "middleware", for all STM32xx series.
C
102
star
17

STBLESensor_Android

"ST BLE Sensor" Android application source code.
Kotlin
99
star
18

meta-st-stm32mp

meta-st-stm32mp
C++
97
star
19

stm32h7xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32H7 series.
C
96
star
20

stm32_mw_usb_device

Provides the USB Device library part of the STM32Cube MCU Component "middleware" for all STM32xx series.
C
88
star
21

STM32MPU_EmbSW_Overall_Offer

STM32MPU_EmbSW_Overall_Offer
87
star
22

STM32CubeMP1

stm32cube_fw_mp1
C
80
star
23

BlueSTSDK_Android

Bluetooth low energy Sensors Technology Software Development Kit (Android version)
Kotlin
80
star
24

stm32-external-loader

Provides drivers, examples, loader files and testing routines for external loaders for STM32 series of microcontrollers.
C
80
star
25

STM32CubeL0

STM32Cube MCU Full Package for the STM32L0 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
78
star
26

STM32CubeU5

Full Firmware Package for the STM32U5 series: HAL+LL drivers, CMSIS, BSP, MW, plus a set of Projects (examples and demos) running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits).
C
76
star
27

fp-aud-smartmic1

FP-AUD-SMARTMIC1 provides a firmware running on STM32 which acquires audio signals of four digital MEMS microphones, elaborates them by means of embedded DSP libraries and streams the processed audio to both an USB host and a loudspeaker connected to the relevant expansion board.
C
72
star
28

STMems_Linux_IIO_drivers

DISCONTINUED (October 2022): the maintenance for this repository has been discontinued. Please refer to https://github.com/STMicroelectronics/st-mems-android-linux-drivers-iio for the up-to-date drivers repository. This repository contains Linux Kernel (v3.10, v3.14, v3.18, v4.9, v4.14, v4.19) including STMicroelectronics MEMS IIO sensor support
C
69
star
29

cmsis_device_f4

Provides the STM32Cube MCU Component "cmsis_device_f4" of the STM32F4 series.
C
63
star
30

STM32CubeWL

STM32Cube MCU Full FW Package for the STM32WL series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on boards provided by ST (Nucleo boards)
C
62
star
31

meta-st-openstlinux

meta-st-openstlinux
C
55
star
32

stm32f1xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32F1 series.
C
54
star
33

BlueSTSDK_Python

Bluetooth Low Energy Sensors Technology Software Development Kit (Python version for Linux Gateways)
Python
53
star
34

STMems_Linux_Input_drivers

DISCONTINUED (October 2022): the maintenance for this repository has been discontinued. Please refer to https://github.com/STMicroelectronics/st-mems-android-linux-drivers-input for the up-to-date drivers repository. This repository contains Mainline Linux Kernel (v3.4, v3.10, v4.19) including STMicroelectronics MEMS Input sensor support
C
53
star
35

STMems_Finite_State_Machine

Configuration files and examples for the Finite State Machine feature (FSM) available in STMicroelectronics MEMS sensors
C
51
star
36

x-cube-usb-pd

x-cube-usb-pd STM32 Expansion Package related to USB-IF Type-C Power Delivery protocol is no more recommended for new design. The USB power delivery PHY is now integrated in the new STM32 series. See below link.
C
50
star
37

STBLESensor_iOS

"ST BLE Sensor" iOS application source code.
Swift
48
star
38

STM32CubeH5

Full firmware package for STM32H5 series containing CMSIS, HAL-LL, BSP drivers, MW libraries plus a set of projects.
C
46
star
39

cmsis-device-f1

Provides the STM32Cube MCU Component "cmsis_device_f1" of the STM32F1 series.
C
45
star
40

cmsis-core

CMSIS Core module, fully aligned with ARM versions.
C
44
star
41

X-CUBE-MEMS1

X-CUBE-MEMS1 is an expansion software package for STM32Cube. The software runs on the STM32 and includes drivers that recognize the sensors and collect temperature, humidity, pressure and motion data.
C
44
star
42

meta-st-x-linux-ai

This repository contains the OpenEmbedded meta layer to install AI frameworks and tools for the STM32MP1
C++
40
star
43

x-cube-azrtos-f4

X-CUBE-AZRTOS-F4 (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32F4 series of microcontrollers.
C
40
star
44

STM32CubeL5

STM32Cube MCU Full Package for the STM32L5 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
37
star
45

oe-manifest

oe-manifest
36
star
46

stm32l4xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32L4 series.
C
34
star
47

STMems_Android_Sensor_HAL_IIO

DISCONTINUED (October 2022): the maintenance for this repository has been discontinued. Please refer to https://github.com/STMicroelectronics/st-mems-android-linux-sensors-hal for the up-to-date HAL repository. This repository contains ST Android sensor Hardware Abstraction Layer (HAL) for MEMS Linux IIO drivers
C++
34
star
48

stm32ai-tao

Nvidia TAO (Train, Adapt, Optimize) with STM32Cube.AI Developer Cloud
Jupyter Notebook
33
star
49

STM32_open_pin_data

This repo provides all the information required for the pin and board configuration of products based on STM32 MCU.
33
star
50

BlueSTSDK_iOS

Bluetooth low energy Sensors Technology Software Development Kit (iOSversion)
Swift
32
star
51

stm32_mw_usb_host

Provides the USB Host library part of the STM32Cube MCU Component "middleware" for all STM32xx series.
C
32
star
52

STM32CubeL1

Full Firmware Package for the STM32L1 series: HAL+LL drivers, CMSIS, BSP, MW, plus a set of Projects (examples and demos) running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits).
C
31
star
53

STM32CubeF2

STM32Cube MCU Full Package for the STM32F2 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))
C
31
star
54

stm32ai

git repo for the open source AI offer in STM32 products
Jupyter Notebook
30
star
55

STMems_Overall_Offer

STMicroelectronics offers a full set of drivers and configuration examples for using MEMS sensors with different operating systems. This repository describes all open source GitHub projects related to MEMS sensors.
28
star
56

STMems_Android_Sensor_HAL_Input

DISCONTINUED (November 2022): the maintenance for this repository has been discontinued. Please refer to: https://github.com/STMicroelectronics/st-mems-android-linux-sensors-hal for the up-to-date HAL repository. This repository contains ST Android sensor Hardware Abstraction Layer (HAL) for MEMS Linux Input drivers.
C
27
star
57

stm32f7xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32F7 series.
C
26
star
58

cmsis_device_h7

Provides the STM32Cube MCU Component "cmsis_device_h7" of the STM32H7 series.
C
23
star
59

st-mems-android-linux-drivers-iio

stm mems iio drivers for Android and Linux platforms.
C
21
star
60

STM32AI_Overall_Offer

This repo is the entry point to all other STM32 MCU/MPU AI-related GitHub repos.
20
star
61

stm32_mw_lwip

Provides the LwIP library part of the STM32Cube MCU Component "middleware" for all STM32xx series.
C
20
star
62

stm32_mw_freertos

Provides the FreeRTOS library part of the STM32Cube MCU Component "middleware" for all STM32xx series.
C
19
star
63

st-mems-android-linux-sensors-hal

stm mems sensors-hal for Android and Linux platforms.
C++
17
star
64

STM32CubeMP13

C
16
star
65

fp-sns-datalog2

The FP-SNS-DATALOG2 function pack represents an evolution of FP-SNS-DATALOG1 and provides a comprehensive solution for saving data from any combination of sensors and microphones configured up to the maximum sampling rate. Please check st.com where a more recent version of the software might be available.
C
16
star
66

STNFCSensor_Android

ST NFC Sensor Android application source code.
Kotlin
15
star
67

stm32_mw_fatfs

Provides the FatFS library part of the STM32Cube MCU Component "middleware" for all STM32xx series.
C
15
star
68

gnu-tools-for-stm32

C
15
star
69

stm32f0xx-hal-driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32F0 series.
C
14
star
70

stm32g0xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32G0 series.
C
14
star
71

stm32u5-classic-coremw-apps

Provide a set of applications for STM32U5xx series based on the STM32 Classic Core Middleware libraries.
C
14
star
72

stm32f3xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32F3 series.
C
13
star
73

stm32g4xx_hal_driver

Provides the STM32Cube MCU Component "hal_driver" of the STM32G4 series.
C
13
star
74

STM32MPU_EmbSW_Android_Overall_Offer

STM32MPU_EmbSW_Android_Overall_Offer
13
star
75

x-cube-tcpp

STM32 expansion package providing an integrated solution for a robust protection of MCU-based USB Type-C applications
C
13
star
76

meta-st-stm32mpu-app-logicanalyser

Application example: high data rate exchange from Cortex-M4 to Cortex-A7
C
13
star
77

x-cube-iota1

The X-CUBE-IOTA1 is an expansion software package for STM32Cube. The software runs on the STM32 and includes the middleware for enabling the IOTA Distributed Ledger Technology.
C
13
star
78

stm32-bsp-common

Provides the COMMON driver, part of the STM32Cube BSP Component for all STM32xx series.
CSS
12
star
79

stm32-ov5640

Provides the ov5640 driver, part of the STM32Cube BSP Component for all STM32xx series.
C
12
star
80

x-cube-azrtos-g4

X-CUBE-AZRTOS-G4 (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32G4 series of microcontrollers.
C
12
star
81

stm32-ili9341

Provides the ILI9341 driver, part of the STM32Cube BSP Component for all STM32xx series.
CSS
11
star
82

STNFCSensor_iOS

ST NFC Sensor iOS application source code.
Swift
11
star
83

STADG_Teseo_Android_HAL

Android HAL for STMicroelectronics positioning solution: Teseo
C++
11
star
84

stm32ai-perf

MLPerf (tm) Tiny Deep Learning Benchmarks for STM32 devices
C
11
star
85

cmsis_device_f7

Provides the STM32Cube MCU Component "cmsis_device_f7" of the STM32F7 series.
C
10
star
86

STSELib

Host software library for ST Authentication Secure Elements
C
10
star
87

stm32-ov2640

Provides the ov2640 driver, part of the STM32Cube BSP Component for all STM32xx series.
C
10
star
88

x-cube-azrtos-f7

X-CUBE-AZRTOS-F7 (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32F7 series of microcontrollers.
C
10
star
89

amazon-freertos-ST

ST vendor contribution to amazon freertos
9
star
90

x-cube-freertos

X-CUBE-FREERTOS (FreeRTOSâ„¢ software expansion for STM32Cube) provides a full integration of the FreeRTOSâ„¢ kernel in the STM32Cube environment for a set of STM32 series of microcontrollers.
C
9
star
91

STM32CubeC0

Full firmware package for STM32C0 series containing CMSIS, HAL-LL, BSP drivers, MW libraries, and a set of projects ready for use on STM32C0 boards
C
9
star
92

STM32CubeWBA

Full firmware package for STM32WBA series containing CMSIS, HAL-LL, BSP drivers, MW libraries, and a set of projects ready for use on STM32WBA boards
C
9
star
93

stm32wl-openbl-apps

Provides a set of applications for STM32WLxx series showing how to use the Open Bootloader library.
C
9
star
94

WireSTSDK_Python

WireST SDK is a library for Linux gateways that allows easy access to the data exported by an IO-Link device that implements the IOLinkST Protocol.
Python
9
star
95

STM32CubeH7RS

STM32Cube MCU Full Package for the STM32H7RS series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST)
C
9
star
96

stm32-st7735

Provides the st7735 driver, part of the STM32Cube BSP Component for all STM32xx series.
C
9
star
97

EdgeSTSDK_Python

IoT Edge computing abstraction library (Python version for Linux Gateways)
Python
9
star
98

lsm6dsox-pid

lsm6dsox platform independent driver based on Standard C language and compliant with MISRA standard
C
9
star
99

x-cube-azrtos-wb

X-CUBE-AZRTOS-WB (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32WB series of microcontrollers.
C
8
star
100

stm32h5-classic-coremw-apps

Provide a set of applications for STM32H5xx series based on the STM32 Classic Core Middleware libraries.
C
8
star