# Release Notes for Projects of STM32CubeF1 Firmware Package

Copyright © 2017 STMicroelectronics

# Purpose

The projects are a set of applicative tasks that aim to explain and provide use cases of the different products features based on the products hardware (Boards, STM32 Core(s) features, interconnections and peripherals) and built around the different firmware components. They can be directly used or adapted by the STM32CubeF1 Firmware Package users. They provide basic functionalities, show main features or demonstrate performance. They are provided with preconfigured projects for the main supported toolchains.

In the STM32CubeF1 Firmware Package, the projects are organized in a sequential scheme based on the following levels:

- Boards : Hardware platform (evaluation, discovery, nucleo boards)
- Project Category:
  - Applications
  - Demonstrations
  - Examples
  - Examples_LL
  - Examples_MIX
  - Templates
  - Templates_LL
- Project Class
- Project Subclass

The Project Class refers to the main peripherals (drivers), middleware libraries or BSP classes while the projects Subclass stands for a project specific feature within a class.

The exhaustive list of projects is provided in this table: STM32CubeProjectsList.

# Update History

V1.8.6 / 22-July-2024

## Maintenance release

### Main Changes

STM3210C_EVAL:

- USB Host MSC applications: fix stack corruption due to inconsistent type of local variable in MSC_File_Operations() API.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.8.6 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.8.6 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.8.6 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.8.6 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.8.6 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.8.6 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.8.6 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.8.6 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.8.6 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.8.6 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.8.6 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.8.6 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.8.6 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.8.6 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.8.6 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.8.6 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.8.6 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.8.6 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.8.6 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.8.6 | Projects\STM3210E_EVAL\Templates_LL

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.9+ ST-Link
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.38 (or upper) + ST-LINK, pack available here:
  - www.keil.com/dd2/Pack/ (Section : STMicroelectronics STM32F1 Series Device Support)
  - Only template projects are migrated to Arm Compiler 6 with MDK-ARM 5.31 (“AC-like Warnings” mode).
- System Workbench for STM32 (SW4STM32) (7-2018-q2-update) toolchain V2.9.0 + ST-Link

V1.8.5 / 07-April-2023

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Applications

  - Replace hard-coded page end address by a variable in EE_VerifyPageFullyErased() to consider both PAGE 0 and PAGE 1 instead of only PAGE 0 in EEPROM emulation application.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.8.5 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.8.5 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.8.5 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.8.5 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.8.5 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.8.5 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.8.5 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.8.5 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.8.5 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.8.5 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.8.5 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.8.5 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.8.5 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.8.5 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.8.5 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.8.5 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.8.5 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.8.5 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.8.5 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.8.5 | Projects\STM3210E_EVAL\Templates_LL

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V8.40.2+ ST-Link
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 (or upper) + ST-LINK, pack available here:
  - www.keil.com/dd2/Pack/ (Section : STMicroelectronics STM32F1 Series Device Support)
  - Only template projects are migrated to Arm Compiler 6 with MDK-ARM 5.31 (“AC-like Warnings” mode).
- System Workbench for STM32 (SW4STM32) (7-2018-q2-update) toolchain V2.9.0 + ST-Link

V1.8.4 / 21-May-2021

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Examples

  - Update examples and applications to avoid clearing DMA using global flag GIFx.

STM3210C_EVAL:

- Examples

  - Update examples and applications to avoid clearing DMA using global flag GIFx.

STM3210E_EVAL:

- Examples

  - Update examples and applications to avoid clearing DMA using global flag GIFx.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.8.4 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.8.4 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.8.4 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.8.4 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.8.4 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.8.4 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.8.4 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.8.4 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.8.4 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.8.4 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.8.4 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.8.4 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.8.4 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.8.4 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.8.4 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.8.4 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.8.4 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.8.4 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.8.4 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.8.4 | Projects\STM3210E_EVAL\Templates_LL

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V8.40.2+ ST-Link
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V2.9 + ST-Link

V1.8.3 / 20-October-2020

## Maintenance release

### Main Changes

- No changes compared to previous version.

V1.8.2 / 07-September-2020

## Maintenance release

### Main Changes

- No changes compared to previous version.

## Known Limitations

- SW4STM32 projects aren’t provided for STM32VL-Discovery board because it embeds STLinv1 version that is not hardware supported by SW4STM32 toolchain.

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V8.20.2+ ST-Link
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.26 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V2.9 + ST-Link

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.8.1 / 30-July-2020

## Maintenance release

### Main Changes

- No changes compared to previous version.

V1.8.0 / 26-June-2019

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Examples

  - Update HAL I2C examples to be compliant with new I2C API

STM3210C_EVAL:

- Applications

  - Update STemWin applications to be compliant with new STemWin architecture
  - Update USB HOST projects to be compliant with USB Host Stack V3.3.3:
    - Add the following USB callback in usbh_conf.c user file: - HAL_HCD_PortEnabled_Callback() - HAL_HCD_PortDisabled_Callback()
  - Update USB Device projects for 103xx/107xx devices to be compliant with USB Device 2.5.3
    - USB HS mode isn’t supported by these STM32 devices
  - Update USB device applications by adding a UNUSED() macro in the followings API on file usbd_desc.c files in order to avoid compilation warnings
    - USBD_DFU_DeviceDescriptor()
    - USBD_DFU_LangIDStrDescriptor()
    - USBD_DFU_ManufacturerStrDescriptor()
    - USBD_DFU_SerialStrDescriptor()
  - Remove useless setting of ep0_mps in usbd_conf.c file for USB device applications
    - usbd_conf.h: Optimize USB device string descriptor size (USBD_MAX_STR_DESC_SIZ)
  - Update HID_Standalone application available on STM3210E_EVAL board to be compliant new HAL PCD driver.

STM3210E_EVAL:

- Applications

  - Update STemWin applications to be compliant with new STemWin architecture
  - Update USB HOST projects to be compliant with USB Host Stack V3.3.3:
    - Add the following USB callback in usbh_conf.c user file: - HAL_HCD_PortEnabled_Callback() - HAL_HCD_PortDisabled_Callback()
  - Update USB Device projects for 103xx/107xx devices to be compliant with USB Device 2.5.3
    - USB HS mode isn’t supported by these STM32 devices
  - Update USB device applications by adding a UNUSED() macro in the followings API on file usbd_desc.c files in order to avoid compilation warnings
    - USBD_DFU_DeviceDescriptor()
    - USBD_DFU_LangIDStrDescriptor()
    - USBD_DFU_ManufacturerStrDescriptor()
    - USBD_DFU_SerialStrDescriptor()
  - Remove useless setting of ep0_mps in usbd_conf.c file for USB device applications
    - usbd_conf.h: Optimize USB device string descriptor size (USBD_MAX_STR_DESC_SIZ)
  - Update HID_Standalone application available on STM3210E_EVAL board to be compliant new HAL PCD driver.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.8.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.8.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.8.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.8.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.8.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.8.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.8.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.8.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.8.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.8.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.8.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.8.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.8.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.8.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.8.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.8.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.8.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.8.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.8.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.8.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- SW4STM32 projects aren’t provided for STM32VL-Discovery board because it embeds STLinv1 version that is not hardware supported by SW4STM32 toolchain.
- Register callback feature will be deployed on HAL I2C driver in next release

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V8.20.2+ ST-Link
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.26 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V2.9 + ST-Link

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.7.0 / 09-October-2018

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Applications

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Demonstrations

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Examples

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Examples_MIX

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Templates

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

STM32VL-Discovery:

- Examples

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Templates

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

STM3210C_EVAL:

- Applications

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Examples

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Templates

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

STM3210E_EVAL:

- Applications

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Examples

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Examples_MIX

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

- Templates

  - Update stm32f1xx_hal_conf.h files to add support to HAL CAN Legacy Module.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.7.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.7.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.7.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.7.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.7.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.7.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.7.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.7.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.7.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.7.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.7.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.7.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.7.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.7.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.7.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.7.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.7.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.7.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.7.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.7.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- SW4STM32 projects aren’t provided for STM32VL-Discovery board because it embeds STLinv1 version that is not hardware supported by SW4STM32 toolchain.

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.4
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.5.2
- System Workbench for STM32 (SW4STM32) toolchain V1.13

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.6.1 / 09-March-2018

## Maintenance release

### Main Changes

- No changes compared to previous version.

V1.6.0 / 12-May-2017

## Maintenance release

### Main Changes

STM3210C_EVAL:

- Applications

  - General updates to be compliant with Linux platforms

STM3210E_EVAL:

- Applications

- General updates to be compliant with Linux platforms

- Templates

  - Update TrueSTUDIO project configuration.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.6.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.6.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.6.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.6.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.6.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.6.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.6.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.6.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.6.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.6.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.6.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.6.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.6.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.6.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.6.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.6.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.6.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.6.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.6.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.6.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- SW4STM32 projects aren’t provided for STM32VL-Discovery board because it embeds STLinv1 version that is not hardware supported by SW4STM32 toolchain.

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.4
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.5.2
- System Workbench for STM32 (SW4STM32) toolchain V1.13

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.5.0 / 14-April-2017

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Applications

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - Update applications using FreeRTOS to use TIM HW as time base source

- Demonstrations

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h

- Examples

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - Update WWDG examples to be in line with latest updates done on HAL WWDG drivers
    - Remove the HAL_WWDG_Start function in the main.c file
    - Remove HAL_WWDG_MspDeInit function from stm32f1xx_hal_msp.c file
  - Update HAL examples to use TIM HW as time base source instead of Systick
  - Add 2 new HAL TimeBase examples : HAL_TimeBase_RTC_ALARM and HAL_TimeBase_RTC_WKUP
  - Add 2 new I2C examples to explore the repeat start feature: I2C_TwoBoards_RestartAdvComIT and I2C_TwoBoards_RestartComIT
  - Rework I2C_TwoBoards_AdvComIT and I2C_TwoBoards_ComIT examples following changes in latest HAL version
    - Update to allow master to restart communication when slave doesn’t acknowledge its address
  - Update I2C_TwoBoards_ComDMA example to be inline with new HAL I2C DMA model :
    - Configure and enable the I2C IRQ in HAL_I2C_MspInit() function
    - In stm32f1xx_it.c file: add a call to HAL_I2C_IRQHandler() function

- Templates

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h

STM32VL-Discovery:

- Examples

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - Update HAL examples to use TIM HW as time base source instead of Systick
  - Add 2 new HAL TimeBase examples : HAL_TimeBase_RTC_ALARM and HAL_TimeBase_RTC_WKUP

- Templates

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h

STM3210C_EVAL:

- Applications

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - Update applications using FreeRTOS to use TIM HW as time base source
  - Update applications related to STemWin library to support STemWin 5.32 version
  - Update LwIP Applications:
    - Add Support to DHCP server
    - Add support to LCD use
    - Update to refresh Ethernet Status
  - Update IAP Applications following modifications in HAL UART

- Examples

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - General examples projects update to be aligned with new HAL SD and BSP Drivers implementation
  - Update HAL examples to use TIM HW as time base source instead of Systick
  - Add 2 new HAL TimeBase examples : HAL_TimeBase_RTC_ALARM and HAL_TimeBase_RTC_WKUP
  - Update IWDG example to be in line with latest updates done on HAL IWDG drivers
    - Remove the HAL_IWDG_Start function in the main.c file

- Templates

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h

STM3210E_EVAL:

- Applications

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - Update applications using FreeRTOS to use TIM HW as time base source
  - Update applications related to STemWin library to support STemWin 5.32 version
  - Update IAP Applications following modifications in HAL UART

- Examples

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h
  - General examples projects update to be aligned with new HAL SD and BSP Drivers implementation
  - Update HAL examples to use TIM HW as time base source instead of Systick
  - Add 2 new HAL TimeBase examples : HAL_TimeBase_RTC_ALARM and HAL_TimeBase_RTC_WKUP
  - Add 2 new I2C examples to explore the repeat start feature: I2C_TwoBoards_RestartAdvComIT and I2C_TwoBoards_RestartComIT
  - Rework I2C_TwoBoards_AdvComIT and I2C_TwoBoards_ComIT examples following changes in latest HAL version
    - Update to allow master to restart communication when slave doesn’t acknowledge its address
  - Update I2C_TwoBoards_ComDMA example to be inline with new HAL I2C DMA model :
    - Configure and enable the I2C IRQ in HAL_I2C_MspInit() function
    - In stm32f1xx_it.c file: add a call to HAL_I2C_IRQHandler() function
  - Fix wrong GPIO configuration of CAN RX in CAN_Networking example
  - Update BSP NAND Demo in BSP Example and FSMC NAND Example after HAL NAND driver rework

- Templates

  - Update stm32f1xx_hal_conf.h file to be aligned with new conf_template.h

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.5.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.5.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.5.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.5.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.5.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.5.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.5.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.5.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.5.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.5.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.5.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.5.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.5.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.5.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.5.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.5.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.5.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.5.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.5.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.5.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.4
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.5.2
- System Workbench for STM32 (SW4STM32) toolchain V1.13

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.4.0 / 29-April-2016

# Maintenance release

## Main changes

STM32F103RB-Nucleo:

- Applications

  - Change license to “Ultimate Liberty”.
  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Demonstrations

  - Change license to “Ultimate Liberty”.
  - Adapt Adafruit demonstration to support 4Gb sd cards.

- Examples

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Templates

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

STM32VL-Discovery:

- Examples

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Templates

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

STM3210C_EVAL:

- Applications

  - Change license to “Ultimate Liberty”.
  - Adapt Adafruit demonstration to support 4Gb sd cards.

- Examples

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Templates

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

STM3210E_EVAL:

- Applications

  - Change license to “Ultimate Liberty”.
  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Examples

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

- Templates

  - Update all the system_stm32f1xx.c with new AHBPrescTable and APBPrescTable.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.4.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.4.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.4.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.4.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.4.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.4.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.4.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.4.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.4.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.4.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.4.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.4.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.4.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.4.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.4.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.4.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.4.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.4.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.4.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.4.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.17 + ST-LINK
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.5.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.3.1 / 11-January-2016

## Maintenance release

### Main Changes

- No changes compared to previous version.

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.17 + ST-LINK
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.5.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.3.0 / 18-December-2015

## Maintenance release

### Main Changes

STM32F103RB-Nucleo:

- Applications

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW.
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM.
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH.
    - aliases are created to keep backward compatibility.
  - Change the “Liberty” License with the new license “Ultimate Liberty” for the applications.
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Demonstrations

  - Change the “Liberty” License with the new license “Ultimate Liberty” for the applications.
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Examples

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Change the “Liberty” License with the new license “Ultimate Liberty” for the applications.
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Templates

  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

STM32VL-Discovery:

- Examples

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.

- Templates

  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

STM3210C_EVAL:

- Applications

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Change the “Liberty” License with the new license “Ultimate Liberty” for the applications.
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Examples

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Templates

  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

STM3210E_EVAL:

- Applications

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Change the “Liberty” License with the new license “Ultimate Liberty” for the applications.
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Examples

  - To ensure the full compatibility of the GPIO interfaces across all the STM32 families, the gpio speed definition have been renamed:
    - GPIO_SPEED_LOW to GPIO_SPEED_FREQ_LOW
    - GPIO_SPEED_MEDIUM to GPIO_SPEED_FREQ_MEDIUM
    - GPIO_SPEED_HIGH to GPIO_SPEED_FREQ_HIGH
    - aliases are created to keep backward compatibility
  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

- Templates

  - Reduce the default timeout value for the startup of the HSE form 5s to 100ms.
  - Update the Keil projects from V4 to V5.
  - Adapt the SW4STM32 projects to version 1.5.0 of the IDE.

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.3.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.3.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.3.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.3.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.3.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.3.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.3.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.3.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.3.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.3.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.3.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.3.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.3.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.3.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.3.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.3.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.3.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.3.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.3.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.3.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.17 + ST-LINK
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.5.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.2.0 / 31-July-2015

# Maintenance release

## Main changes

STM32F103RB-Nucleo:

- Applications

  - FreeRTOS:
    - Reduce heap size accordingly to the OS resources used inside the application. A margin of 10% rounded to the upper Kb is used. This permit to significantly reduce the memory usage within the following applications:
      - FreeRTOS_ThreadCreation: Reduced from 15 Kb of heap (RAM) to 2Kb. (FreeRTOSConfig.h/configTOTAL_HEAP_SIZE)
      - For more details about FreeRTOS implementation on STM32Cube, please refer to UM1722 “Developing Applications on STM32Cube with RTOS”.
    - Updates linked to middleware version changes:
      - Minor updates to be compliant with FreeRTOS V8.2.1.

- Demonstrations

  - Updates linked to middleware version changes:
    - Minor updates to be compliant with FatFs R0.11.

- Examples

  - FLASH_WriteProtection: Simplify the example.

- Templates

  - No Changes

STM32VL-Discovery:

- Examples

  - Removing SW4STM32 projects as not supported by SW4STM32.
    - SW4STM32 support only STLinkv2 and STLinkv2.1, not STLinkv1.

- Templates

  - Removing SW4STM32 projects as not supported by SW4STM32.
    - SW4STM32 support only STLinkv2 and STLinkv2.1, not STLinkv1.

STM3210C_EVAL:

- Applications

  - FreeRTOS:
    - Reduce heap size accordingly to the OS resources used inside the application. A margin of 10% rounded to the upper Kb is used. This permit to significantly reduce the memory usage within the following applications:
      - FreeRTOS_ThreadCreation: Reduced from 15 Kb of heap (RAM) to 2Kb. (FreeRTOSConfig.h/configTOTAL_HEAP_SIZE)
      - For more details about FreeRTOS implementation on STM32Cube, please refer to UM1722 “Developing Applications on STM32Cube with RTOS”.
  - IAP:
    - Rework of the application.
  - Updates linked to middleware version changes:
    - Minor updates to be compliant with FreeRTOS V8.2.1.
    - Minor updates to be compliant with FatFs R0.11.
    - Projects configuration update to include the library STemWin528 instead of STemWin526.

- Examples

  - SMARTCARD_T0: Rework of the example to improve robustness.

- Templates

  - No Changes

STM3210E_EVAL:

- Applications

  - FreeRTOS:
    - Adding new projects to introduce the FreeRTOS V8.2.1 new features:
      - FreeRTOS_SignalFromISR (thread signaling from an interrupt)
      - FreeRTOS_Signal (thread signaling)
      - FreeRTOS_Mail (mail queues)
    - Reduce heap size accordingly to the OS resources used inside the application. A margin of 10% rounded to the upper Kb is used. This permit to significantly reduce the memory usage within the following applications:
      - FreeRTOS_ThreadCreation: Reduced from 15 Kb of heap (RAM) to 2Kb. (FreeRTOSConfig.h/configTOTAL_HEAP_SIZE)
      - FreeRTOS_SignalFromISR: 3Kb of heap.
      - FreeRTOS_Signal: 5kb of heap.
      - FreeRTOS_Mail: 3Kb of heap.
      - For more details about FreeRTOS implementation on STM32Cube, please refer to UM1722 “Developing Applications on STM32Cube with RTOS”.
  - IAP:
    - Add the IAP application with its associated led blinking project. This project demonstrates how to build an application to be loaded into Flash memory using In-Application Programming (IAP, through USART).
  - Updates linked to middleware version changes:
    - Minor updates to be compliant with FreeRTOS V8.2.1.
    - Minor updates to be compliant with FatFs R0.11.
    - Projects configuration update to include the library STemWin528 instead of STemWin526.

- Examples

  - CORTEX_MPU: This example now uses the new HAL api on MPU.
  - SMARTCARD_T0: Rework of the example to improve robustness.

- Templates

  - No Changes

## Contents

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.2.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.2.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.2.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.2.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.2.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.2.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.2.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.2.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.2.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.2.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.2.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.2.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.2.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.2.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.2.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.2.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.2.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.2.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.2.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.2.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.10 + ST-LINK
  - Important note: some of MDK-ARM projects were created with previous version like v4.73. If you are using MDK-ARM v5.10 (and later) you have to install a legacy patch to be able to open projects built with v4.73, here is the download link
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.2.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.1.0 / 05-June-2015

## Maintenance release

### Main changes

- Add support of System Workbench for STM32 (SW4STM32) toolchain

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.1.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.1.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.1.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.1.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.1.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.1.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.1.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.1.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.1.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.1.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.1.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.1.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.1.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.1.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.1.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.1.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.1.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.1.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.1.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.1.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.10 + ST-LINK
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.2.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None

V1.0.0 / 17-December-2014

## Main Changes

### First official release

### Projects

Board | Project category | Version | Path
--- | --- | --- | ---
STM32F103RB-Nucleo | Applications | V1.0.0 | Projects\STM32F103RB-Nucleo\Applications
STM32F103RB-Nucleo | Demonstrations | V1.0.0 | Projects\STM32F103RB-Nucleo\Demonstrations
STM32F103RB-Nucleo | Examples | V1.0.0 | Projects\STM32F103RB-Nucleo\Examples
STM32F103RB-Nucleo | Examples_LL | V1.0.0 | Projects\STM32F103RB-Nucleo\Examples_LL
STM32F103RB-Nucleo | Examples_MIX | V1.0.0 | Projects\STM32F103RB-Nucleo\Examples_MIX
STM32F103RB-Nucleo | Templates | V1.0.0 | Projects\STM32F103RB-Nucleo\Templates
STM32F103RB-Nucleo | Templates_LL | V1.0.0 | Projects\STM32F103RB-Nucleo\Templates_LL
STM32VL-Discovery | Examples | V1.0.0 | Projects\STM32VL-Discovery\Examples
STM32VL-Discovery | Templates | V1.0.0 | Projects\STM32VL-Discovery\Templates
STM32VL-Discovery | Templates_LL | V1.0.0 | Projects\STM32VL-Discovery\Templates_LL
STM3210C_EVAL | Applications | V1.0.0 | Projects\STM3210C_EVAL\Applications
STM3210C_EVAL | Examples | V1.0.0 | Projects\STM3210C_EVAL\Examples
STM3210C_EVAL | Templates | V1.0.0 | Projects\STM3210C_EVAL\Templates
STM3210C_EVAL | Templates_LL | V1.0.0 | Projects\STM3210C_EVAL\Templates_LL
STM3210E_EVAL | Applications | V1.0.0 | Projects\STM3210E_EVAL\Applications
STM3210E_EVAL | Examples | V1.0.0 | Projects\STM3210E_EVAL\Examples
STM3210E_EVAL | Examples_LL | V1.0.0 | Projects\STM3210E_EVAL\Examples_LL
STM3210E_EVAL | Examples_MIX | V1.0.0 | Projects\STM3210E_EVAL\Examples_MIX
STM3210E_EVAL | Templates | V1.0.0 | Projects\STM3210E_EVAL\Templates
STM3210E_EVAL | Templates_LL | V1.0.0 | Projects\STM3210E_EVAL\Templates_LL

## Known Limitations

- None

## Development Toolchains and Compilers

- IAR Embedded Workbench for ARM (EWARM) toolchain V7.20 + ST-LINK
- RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.10 + ST-LINK
- Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain V5.1.1 + ST-LINK
- System Workbench for STM32 (SW4STM32) toolchain V1.2.0 + ST-LINK

## Supported Devices and EVAL boards

- STM32F1xx Value, Access, USB, Performance, OTG & Ethernet Lines
- STM3210E-Eval board RevD
- STM3210C-Eval board RevC
- STM32VL-Discovery board RevC
- STM32F1xx-Nucleo board RevC

## Backward Compatibility

- None

## Dependencies

- None