Release Notes for STM32CubeG0 Firmware Package

Copyright © 2018 STMicroelectronics

Purpose

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

STM32Cube covers STM32 portfolio.

STM32Cube Version 1.x includes:

All embedded software utilities, delivered with a full set of examples.

The STM32Cube firmware solution offers a straightforward API with a modular architecture, making it simple to fine tune custom applications and scalable to fit most requirements.

STM32Cube
STM32Cube

The HAL (Hardware Abstraction Layer) and LL (Low Layers) drivers provided within this package support the STM32G081/71/70, STM32G041/31/30, STM32G0C1/B1/B0 and STM32G061/51/50 lines.

The HAL and LL drivers provided within this package are compliant with MISRA-C:2012 guidelines, and have been reviewed with a static analysis tool to eliminate possible run-time errors. Reports are available on demand.

For quick getting started with the STM32CubeG0 firmware package, refer to UM2303 and you can download firmware updates and all the latest documentation from www.st.com/stm32cubefw

Here is the list of references to user documents:

Update History

Patch release

Main Changes

  • Patch release of STM32CubeG0 V1.6.0 Firmware Package.
  • Update projects to avoid “Firmware Location Error” popup message generated with STM32CubeMX.

Contents

  • Projects updates
    • Update *ioc files to avoid “Firmware Location Error” popup message generated with STM32CubeMX.

The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.

The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Name Version License Release notes
Projects V1.6.1 see Projects Release note for details release notes

Main Changes

  • General updates to fix known defects and enhancements implementation.
  • Add .mxproject files on all firmware projects available in STM32CubeMX format (with .ioc) to fix project path issue during copy.

Contents

  • HAL/LL Drivers updates
    • General updates to fix known defects and enhancements implementation.
    • HAL code quality enhancement for MISRA-C Rule-8.13 by adding const qualifiers
    • HAL CEC updates
      • Better performance by removing multiple volatile reads or writes in interrupt handler.
    • HAL RTC updates
      • Check if the RTC calendar has been previously initialized before entering Initialization mode.
    • HAL I2C updates
      • I2C_IsErrorOccurred does not return error if timeout is detected.
      • The ADDRF flag is cleared too early when the restart is received but the direction has changed
    • HAL UART updates
      • Removal of HAL_LOCK/HAL_UNLOCK calls in HAL UART Tx and Rx APIs
    • HAL USB updates
      • HAL: HCD: add missing call to MspDeInit API during HCD DeInit
  • Middlewares updates
    • Upgrade to use new version of USB Device V2.11.0
      • USB VIDEO Class:
        • Correction of the support of VS_PROBE_CONTROL & VS_COMMIT_CONTROL requets
      • USB AUDIO Class:
        • Correction of the check on AUDIO_TOTAL_BUF_SIZE to avoid vulnerabilities
      • USB HID Class:
        • Modification of some constants names to avoid duplication versus USB host library
      • USB CustomHID Class:
        • Add support of Get Report control request Allow disabling EP OUT prepare receive using a dedicated macros that can be defined in usbd_conf.h application file
        • Add support of Report Descriptor with length greater than 255 bytes
      • USB All Classes:
        • Update all classes to support composite multi-instance using the class id parameter
    • Upgrade to use new version of USB Host V3.4.1
      • HID Class
        • Modify some variables names to avoid duplication versus device for HID class
    • Upgraded STM32 USB Power Delivery Device Library to use g0_v3.4.1.
      • Update FRS BSP API used for VBUS management
      • FRS updates (false detections)
    • Upgraded STM32 USB Power Delivery Core Library to use v4.1.0.
      • [OS] Fix THREADX thread ID struct handling
      • [OS] Fix define for CMSIS OS v2
      • [PE] Update FRS AMS to manage power requirement
      • [PE] Clear RX event before FRS ACCEPT
      • [OS] update to kill PE if does not stop executing itself
      • [OS] replace OS Free RTOS API with cmsis OS API
      • [SNK] After a soft reset we shall wait for source capa
      • [DEF] Add defines for STATUS message
      • [PE] SOP’ message needs to be sent only if sender is VCONN owner
      • [PE] Add the support of the USB4 (message USB_ENTER and DATA_RESET)
      • [PE] Revision message must be answered
      • [PE] Status message has 6 bytes whereas 7 are mandatory
      • [PRL] Update to handle retry and crc timer for more than 2 ports
      • [PRL] MessageId is not well incremented after retry
      • [PRL] In PD3 GoodCRC is always sent with PD revision 1
      • [CORE] Update the stack to manage 3 ports in parallel
      • [CORE] Solve CubeIDE compilation warning in OS_CREATE_TASK macro use.
      • {PE] SNK AMS HardReset : the USB stack shutdown must be done after VBUS has reached VSAFE_0V
      • [PRL] PHY state BUSY is no taken into account
      • [UCSI] Add new ID for UCSI trace
      • [THREADX] remove pool allocation inside the stack and Add a pool pointer on the InitOS function
  • Utilities updates
    • Upgraded STM32 TRACER_EMB to use v1.7.1.
    • Upgraded GUI_INTERFACE to use V2.2.1.
  • Projects updates
    • Add .mxproject files on all firmware projects available in STM32CubeMX format (with .ioc) to fix project path issue during copy.

    • The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.
    • The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Name Version License Release notes
Projects V1.6.0 see Projects Release note for details release notes

Warning

For applications using device connected on CN7 (Type-C connector on MB1352):

  • When the power source jumper JP24 is configured to D5V position (with this configuration the mother board is powered from the daughter board), there is no risk to get an over voltage on USB Vbus connector CN7.

  • When the ST-Link is used as power source there is a risk to get an over voltage in connector. In such power configuration, software safety protection is required to detect the overvoltage. Please refer to /* SAFETY PROTECTION CODE BEGIN */ section in main.c of USB_Host applications.

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version Release notes
Cortex-M CMSIS V5.6.0 V5.6.0_cm0 release notes
STM32G0xx CMSIS V1.4.3 release notes
STM32G0xx_HAL_Driver V1.4.5 release notes
BSP STM32G0xx_Nucleo V1.1.1 release notes
BSP STM32G0C1E-EV V1.0.2 release notes
BSP STM32G081B_EVAL V1.3.1 release notes
BSP STM32G071B-Discovery V1.2.1 release notes
BSP STM32G0316-DISCO V1.0.2 release notes
BSP STM32G0xx_Nucleo_32 V1.0.2 release notes
BSP Adafruit Shield (reference ID 802) V3.0.4 release notes
BSP Common V5.1.2 release notes
BSP hx8347d V1.1.2 release notes
BSP stlm75 V2.0.2 release notes
BSP st7735 V1.1.5 release notes
BSP cbtl08gp053 V1.0.1 release notes
BSP tusb546 V1.0.3 release notes
BSP sn65dp141 V1.0.2 release notes
BSP ina230 V1.0.0 release notes
BSP ssd1315 V1.1.0 release notes

Middleware

Name Version Release notes
FatFS R0.12c release notes
ST modified 2019101 release notes ST
FreeRTOS V10.3.1 release notes
ST modified 2020083 release notes ST
STM32_USBPD_Library - Core v4.1.0 release notes
STM32_USBPD_Library - Devices g0_v3.4.1 release notes
STM32_USB_Host_Library V3.4.1 release notes
STM32_USB_Device_Library V2.11.0 release notes
OpenBootloader V3.0.1 release notes

Utilities

Name Version Release notes
CPU V1.1.1 release notes
Fonts V1.0.1 release notes
Log V1.0.2 release notes
GUI_INTERFACE V2.2.1 release notes
TRACER_EMB V1.7.1 release notes

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.9 + ST-LINK
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + STMicroelectronics.STM32G0xx_DFP.1.3.0.pack
  • STM32CubeIDE toolchain (gcc9_2020_q2_update) v1.7.0

Supported Devices and boards

  • STM32G0C1xx, STM32G0B1xx and STM32G0B0xx devices
  • STM32G061xx, STM32G051xx and STM32G050xx devices
  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G0B1RE Nucleo kit (MB1360 C-01)
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G0C1E Evaluation board RevB (MB1581 B-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B/STM32G0C1E Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

  • A few applications on STM32G0C1E-EV projects are not available at STM32CubeMX format (with .ioc)
  • USB HAL limitation: Double buffer mode is not functional with isochronous data transfers in host mode.
  • STM32G081B-EVAL:
    • DemoLoader Demo is provided for EWARM IDE only (not provided for MDK-ARM and CubeIDE)

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V6.6.0.

Main Changes

  • General updates to fix known defects and enhancements implementation.

Contents

  • CMSIS Device updates
    • Rename ADC TRx registers AWDxTR to be compliant with the reference manual.
    • Fix Doxygen grouping issues.
    • Update IRQ handler enumeration structure to be aligned with template CMSIS device.h file defined by ARM.
      • Rename SVC_IRQn to SVCall_IRQn:
    • Add the following aliases for IRQ number definition to ensure compatibility across STM32 Series;
      • #define SVC_IRQn SVCall_IRQn
  • HAL/LL Drivers updates
    • HAL ADC updates
      • Update LL_ADC driver to prevent unused argument compilation warning.
      • Update to manage constraint: ADC must be disable to modify bitfields of register ADC_CFGR1 and ADC_CFGR2
      • In LL and HAL drivers, references to 3 ADC registers renamed to align on CMSIS and reference manual: {TR1, TR2, TR3} renamed {AWD1TR, AWD2TR, AWD3TR}.
    • HAL DAC updates
      • Add new HAL DAC APIs to start/stop conversion on both channels
        • HAL_DACEx_DualStart()
        • HAL_DACEx_DualStop()
    • HAL FLASH updates
      • Fix Wrong definition of FLASH operation error
        • HAL_FLASH_ERROR_OP value updated to FLASH_SR_OPERR instead of FLASH_SR_EOP
    • HAL/LL RCC updates
      • Enhance the PLL configuration in HAL_RCC_ClockConfig() API.
      • Add the following new APIs to check if PLL output mapped on different domain clock is enabled:
        • LL_RCC_PLL_IsEnabledDomain_ADC()
        • LL_RCC_PLL_IsEnabledDomain_I2S1()
        • LL_RCC_PLL_IsEnabledDomain_I2S2()
        • LL_RCC_PLL_IsEnabledDomain_RNG()
        • LL_RCC_PLL_IsEnabledDomain_FDCAN()
        • LL_RCC_PLL_IsEnabledDomain_USB()
        • LL_RCC_PLL_IsEnabledDomain_TIM1()
        • LL_RCC_PLL_IsEnabledDomain_TIM15()
        • LL_RCC_PLL_IsEnabledDomain_SYS()
      • Enhance the following APIs implementation to check the PLL output enable bit status:
        • LL_RCC_GetI2SClockFreq()
        • LL_RCC_GetTIMClockFreq()
        • LL_RCC_GetRNGClockFreq()
        • LL_RCC_GetADCClockFreq()
        • LL_RCC_GetUSBClockFreq()
    • HAL CEC updates
      • HAL code quality enhancement for MISRA-C Rule-8.13 by adding const qualifiers
    • HAL/LL TIM updates
      • Manage configuration of the Capture/compare DMA request source
      • Add related new exported constants (TIM_CCDMAREQUEST_CC, TIM_CCDMAREQUEST_UPDATE).
      • Create a new macro __HAL_TIM_SELECT_CCDMAREQUEST() allowing to program the TIMx_CR2.CCDS bitfield.
      • HAL code quality enhancement for MISRA-C Rule-8.13 by adding const qualifiers
      • __LL_TIM_CALC_PSC() macro update to round up the evaluate value when the fractional part of the division is greater than 0.5.
    • HAL LPTIM updates
      • Add check on PRIMASK register to prevent from enabling unwanted global interrupts within LPTIM_Disable() and LL_LPTIM_Disable()
      • HAL code quality enhancement for MISRA-C Rule-8.13 by adding const qualifiers
    • HAL UART updates
      • Add a check on the UART parity before enabling the parity error interruption.
      • Improve header description of UART_WaitOnFlagUntilTimeout() function
      • Add const qualifier for read only pointers.
      • Fix wrong cast when computing the USARTDIV value in UART_SetConfig().
      • HAL code quality enhancement for MISRA-C Rule-8.13 by adding const qualifiers
    • LL LPUART updates
      • TXFECF reference removed from LL LPUART driver.
    • HAL/LL USART updates
      • Add a check on the USART parity before enabling the parity error interrupt.
      • Improve header description of USART_WaitOnFlagUntilTimeout() function
      • Add const qualifier for read only pointers.
      • Fix compilation warnings generated with ARMV6 compiler
    • HAL IRDAL updates
      • Add a check on the IRDA parity before enabling the parity error interrupt.
      • Improve header description of IRDA_WaitOnFlagUntilTimeout() function
      • Add const qualifier for read only pointers.
      • Fix wrong cast when computing the USARTDIV value in IRDA_SetConfig().
    • HAL SMARTCARD updates
      • Improve header description of SMARTCARD_WaitOnFlagUntilTimeout() function
      • Add const qualifier for read only pointers.
      • Fix wrong cast when computing the USARTDIV value in SMARTCARD_SetConfig().
    • HAL I2C updates
      • Update to handle errors in polling mode.
        • Rename I2C_IsAcknowledgeFailed() to I2C_IsErrorOccurred() and correctly manage when error occurs.
      • Update to fix issue detected due to low system frequency execution (HSI).
      • Declare an internal macro link to DMA macro to check remaining data: I2C_GET_DMA_REMAIN_DATA
      • Timeout issue using HAL MEM interface through FreeRTOS
    • HAL SMBUS updates
      • Add the support of wake up capability.
      • Update to fix issue of mismatched data received by master in case of data size to be transmitted by the slave is greater than the data size to be received by the master.
        • Add flush on TX register.
    • HAL USB updates
      • HAL USB: fix Isochronous double buffer mode IN transfer issue
      • PCD: add supporting multi packets transfer on Interrupt endpoint
      • HAL: PCD: Set DCD timeout to minimum of 300ms before starting BCD primary detection process
      • HAL: PCD: software correction added to avoid unexpected STALL condition during EP0 multi packet OUT transfer.
    • LL UCPD updates
      • Correction of register accessed by LL_UCPD_ReadRxPaySize macro.
    • Documentation
      • "@ref" Doxygen tags removed from PDF User Manual

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version Release notes
STM32G0xx CMSIS V1.4.2 release notes
STM32G0xx_HAL_Driver V1.4.4 release notes

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.9 + ST-LINK
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + STMicroelectronics.STM32G0xx_DFP.1.3.0.pack
  • STM32CubeIDE toolchain (gcc9_2020_q2_update) v1.7.0

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V6.3.0.

Main Changes

  • General updates to fix known defects and enhancements implementation.
  • Deploy new license information and format in CMSIS devices, BSP drivers and firmware projects
  • Added new HAL SMBUS extended driver to support SMBUS fast Mode Plus.
  • This firmware release introduces the full support of TypeC connector where USB Data is managed by USB Dual role IP in device and host mode, and CC lines are controlled by the USBPD IP.
    • A set of applications are provided for STM32G0C1E-EV board to demonstrate how to develop a full USBPD application with USB Data.
    • The simple USB applications with Full USBPD protocol support, demonstrates SINK and SOURCE with USB data capability can be found under this path: Projects\STM32G0C1E-EV\Applications\USB-PD.

    • In order to have more details on how to use USB and USBPD in the same application, it is recommended to consult the STM32 Wiki pages:
      • https://wiki.st.com/stm32mcu/wiki/USB_Power_Delivery_overview
      • https://wiki.st.com/stm32mcu/wiki/USB_overview

Contents

  • CMSIS Device updates
    • Update to remove wrong bits defined for DMAMUX Req ID.
    • Protect Vector table modification following SRAM or FLASH preprocessor directive by a generic preprocessor directive : USER_VECT_TAB_ADDRESS.
    • Add new atomic register access macros in stm32g0xx.h file.
    • Add LSI maximum startup time datasheet value: LSI_STARTUP_TIME.
    • Update Licensing information and format
      • Add LICENSE.txt file
      • Remove License message from Release_Notes.html
      • Update header files with new license format
  • HAL/LL Drivers updates

    • HAL CEC update
      • Update HAL_CEC_IRQHandler() API to avoid appending an extra byte to the end of a message.
    • HAL/LL SPI update
      • Fix MISRA-C 2012 Rule-13.2 error.
      • Update to set the FRXTH bit for 8bit data in LL_SPI_Init() API.
      • Update LL_SPI_TransmitData8() API to avoid casting the result to 8 bits.
    • HAL RCC update
      • Update to fix HSI48 flag definition.
      • Add missing STM32G0C1 specific MCO prescaler values to docstring.
      • Update GetOscConfig() API to correct wrong HSIDiv value.
      • Add new API HAL_RCC_GetResetSource() to get all reset sources and clear flags for next reset.
    • HAL DMA update
      • Update HAL_DMA_IRQHandler() API to set the DMA state before unlocking access to the DMA handle.
    • HAL FLASH update
      • Clarification comment of the program type added to the HAL_FLASH_Program() and HAL_FLASH_Program_IT() APIs.
    • HAL EXTI update
      • Update HAL_EXTI_GetConfigLine() API to set default configuration value of Trigger and GPIOSel before checking each corresponding registers.
    • HAL/LL RTC update
      • Fix an error in IS_LL_RTC_MONTH leading to assert failure.
      • New APIs to subtract or add one hour to the calendar in one single operation without going through the initialization procedure (Daylight Saving):
        • HAL_RTC_DST_Add1Hour()
        • HAL_RTC_DST_Sub1Hour()
        • HAL_RTC_DST_SetStoreOperation()
        • HAL_RTC_DST_ClearStoreOperation()
        • HAL_RTC_DST_ReadStoreOperation()
      • DayLightSaving and StoreOperation interfaces from RTC_TimeTypeDef type and __HAL_RTC_DAYLIGHT_SAVING_TIME_ADD1H() and __HAL_RTC_DAYLIGHT_SAVING_TIME_SUB1H() macros are now deprecated.
    • HAL CRYP update
      • Update HAL_CRYP_SetConfig() and HAL_CRYP_GetConfig() APIs to set/get the continent of KeyIVConfigSkip correctly.
      • Resolve interrupt mode related GCM decryption issue causing wrong computation of decryption size.
      • Update HAL_CRYP_InCpltCallback() API to fix an incorrect condition call at resumption time.
      • Update CRYP_AESCCM_Process_IT() API to manage header lengths in bytes or words when header length is less than 16 bytes.
    • HAL COMP update
      • Update wait_loop_index computation so delay in us is always multiplicated by at least value “1”.
    • HAL IWDG update
      • Update HAL_IWDG_Init() API in order to fix HAL_GetTick() timeout vulnerability issue.
    • HAL/LL RCC update
      • Private functions made static.
      • Add missing STM32G0C1 specific MCO prescaler values to docstring.
      • Update to fix HSI48 flag definition.
      • Update GetOscConfig() API to correct wrong HSIDiv value.
      • Add LSI startup time in default IWDG timeout calculation (HAL_IWDG_DEFAULT_TIMEOUT).
      • Add new API HAL_RCC_GetResetSource() to get all reset sources and clear flags for next reset.
    • HAL GPIO update
      • Update HAL_GPIO_Init() API to avoid the configuration of PUPDR register when Analog mode is selected.
    • HAL I2C update
      • Update I2C_IsAcknowledgeFailed() API to avoid I2C in busy state if NACK received after transmitting register address.
    • HAL SMBUS update
      • Add support for Fast Mode Plus to be SMBUS Rev3 compliant.
        • Add HAL_SMBUSEx_EnableFastModePlus() and HAL_SMBUSEx_DisableFastModePlus() APIs to manage Fm+.
    • HAL RNG update
      • Update timeout mechanism to avoid false timeout detection in case of preemption.
    • HAL UART update
      • Update HAL_UART_IRQHandler() API to handle receiver timeout interrupt.
      • Update UART receive processes (IT and DMA) to handle the UART receive’s timeout interrupt.
      • Fix erroneous UART’s handle state in case of error returned after DMA reception start within UART_Start_Receive_DMA().
      • Correction on UART ReceptionType management in case of ReceptionToIdle API are called from RxEvent callback.
      • Handling of UART concurrent register access in case of race condition between Tx and Rx transfers (HAL UART and LL LPUART).
      • Remove an invalid FIFO mode configuration from UART_SetConfig() as it is not is not member of UART_InitTypeDef Structure.
    • HAL/LL USART update
      • Remove useless check on maximum BRR value by removing IS_LL_USART_BRR_MAX() macro.
      • LL_USART_ClockInit now supports clock phase and clock polarity configuration for SPI_Slave mode.
      • Handling of USART concurrent register access in case of race condition between Tx and Rx transfers.
      • Optimize stack usage for multiple APIs.
    • HAL/LL TIM update
      • Update LL_TIM_GetCounterMode() API to return the correct counter mode.
      • Correct reversed description of TIM_LL_EC_ONEPULSEMODE One Pulse Mode.
      • Update HAL_TIMEx_OnePulseN_Start() and HAL_TIMEx_OnePulseN_Stop() APIs (polling and IT mode) to take into consideration all OutputChannel parameters.
      • Update timeout mechanism to avoid false timeout detection in case of preemption.
      • Update input capture measurement in DMA mode to avoid zero return values at high frequencies.
    • HAL LPTIM update
      • Update HAL_LPTIM_Init() API implementation to configure digital filter for external clock when LPTIM is clocked by an internal clock source.
    • HAL IWDG update
      • Update HAL_IWDG_Init() API in order to fix HAL_GetTick() timeout vulnerability issue.
      • Add LSI startup time in default IWDG timeout calculation (HAL_IWDG_DEFAULT_TIMEOUT).
    • HAL/LL ADC update
      • Update wait_loop_index computation so delay in us is always multiplicated by at least value “1”.
      • Fix wrong internal regulator stabilization time to be aligned with the datasheet: 20us instead of 10us.
    • HAL USB update
      • Add fix transfer complete for IN Interrupt transaction in single buffer mode.
      • stm32g0xx_hal_hcd.h/c updated to add #if #endif pre-processor directives for devices that do not support USB DRD feature.
      • Add fix transfer complete for IN Interrupt transaction in single buffer mode.
  • BSP updates
    • Update Licensing information and format
      • Add LICENSE.txt file
      • Remove License message from Release_Notes.html
      • Update header files with new license format
    • BSP_EVAL_G081
      • Update to set UIF flag just after Timer configuration
      • HAL MSP Init functions update to be used directly in the BSP drivers
  • Middlewares updates
    • Upgraded USB Host Lib to tag v3.4.0.
      • Improved enumeration phase by adding some specifications requirements checks.
      • Added error signaling for some out of specification device’s descriptors fields.
      • Added checking on both IN and OUT pipes construction.
      • Fixes added to FreeRTOS resource during USB host DeInit.
    • Upgraded USB Device Lib to tag v2.8.0.
      • Add support of new USB device Class driver:
        • USB Printer Class driver based on Universal Serial Bus Device Class Definition for Printing Devices Version 1.1
    • Upgraded STM32 USB Power Delivery Core Library to use v4.0.0.
      • Add the data role reset during hard reset AMS
      • Add the support of the ThreadX RTOS
    • Upgraded STM32 USB Power Delivery Device Library to use g0_v3.3.1.
      • Add support TCPP03.
  • Utilities updates
    • Upgraded STM32 TRACER_EMB to use v1.6.1.
    • Upgraded GUI_INTERFACE to use V2.0.0.
  • Projects updates
    • Update Licensing information and format
      • Add LICENSE.txt file
      • Remove License message from Release_Notes.html
      • Update header files with new license format
    • Templates
      • Templates MDK-ARM projects migrated to ARM Compiler 6 (AC-5 like warnings).
      • Toolchain Support of ARM Compiler 6 (AC-5 like warnings) for HAL/LL/BSP drivers and STMicroelectronics Middleware components.
      • Update to fix GCC 9 warnings.
    • Examples
      • Update examples and applications to avoid clearing DMA using global flag GIFx.
      • USBPD applications: update to fix an error with Timer Service Source when TIM4 to TIM20 are configured.
    • STM32G0C1E-EV
      • Add new USBPD applications to illustrate cohabitation between USB & USBPD
        • USBPD_SINK_MSC
        • USBPD_SOURCE_HID
      • Add support for MDK-ARM and CubeIDE toolchains for the following USB application:
        • STM32G0C1E-EV\Applications\USB_Device\DFU_Standalone
    • The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.
    • The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).
Name Version License Release notes
Projects V1.5.0 see Projects Release note for details release notes

Warning

For applications using device connected on CN7 (Type-C connector on MB1352):

  • When the power source jumper JP24 is configured to D5V position (with this configuration the mother board is powered from the daughter board), there is no risk to get an over voltage on USB Vbus connector CN7.

  • When the ST-Link is used as power source there is a risk to get an over voltage in connector. In such power configuration, software safety protection is required to detect the overvoltage. Please refer to /* SAFETY PROTECTION CODE BEGIN */ section in main.c of USB_Host applications.

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version Release notes
Cortex-M CMSIS V5.6.0 V5.6.0_cm0 release notes
STM32G0xx CMSIS V1.4.1 release notes
STM32G0xx_HAL_Driver V1.4.2 release notes
BSP STM32G0xx_Nucleo V1.1.1 release notes
BSP STM32G0C1E-EV V1.0.1 release notes
BSP STM32G081B_EVAL V1.3.1 release notes
BSP STM32G071B-Discovery V1.2.1 release notes
BSP STM32G0316-DISCO V1.0.2 release notes
BSP STM32G0xx_Nucleo_32 V1.0.2 release notes
BSP Adafruit Shield (reference ID 802) V3.0.4 release notes
BSP Common V5.1.2 release notes
BSP hx8347d V1.1.2 release notes
BSP stlm75 V2.0.2 release notes
BSP st7735 V1.1.5 release notes
BSP cbtl08gp053 V1.0.1 release notes
BSP tusb546 V1.0.3 release notes
BSP sn65dp141 V1.0.2 release notes
BSP ina230 V1.0.0 release notes
BSP ssd1315 V1.1.0 release notes

Middleware

Name Version Release notes
FatFS R0.12c release notes
ST modified 2019101 release notes ST
FreeRTOS V10.3.1 release notes
ST modified 2020083 release notes ST
STM32_USBPD_Library - Core v4.0.0 release notes
STM32_USBPD_Library - Devices g0_v3.3.1 release notes
STM32_USB_Host_Library V3.4.0 release notes
STM32_USB_Device_Library V2.8.0 release notes
OpenBootloader V3.0.1 release notes

Utilities

Name Version Release notes
CPU V1.1.1 release notes
Fonts V1.0.1 release notes
Log V1.0.2 release notes
GUI_INTERFACE V2.0.0 release notes
TRACER_EMB V1.6.1 release notes

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.9 + ST-LINK
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + STMicroelectronics.STM32G0xx_DFP.1.3.0.pack
  • STM32CubeIDE V1.7.0

Supported Devices and boards

  • STM32G0C1xx, STM32G0B1xx and STM32G0B0xx devices
  • STM32G061xx, STM32G051xx and STM32G050xx devices
  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G0B1RE Nucleo kit (MB1360 C-01)
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G0C1E Evaluation board RevB (MB1581 B-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B/STM32G0C1E Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

  • A few applications on STM32G0C1E-EV projects are not available at STM32CubeMX format (with .ioc)
  • USB HAL limitation: Double buffer mode is not functional with isochronous data transfers in host mode.
  • STM32G081B-EVAL:
    • DemoLoader Demo is provided for EWARM IDE only (not provided for MDK-ARM and CubeIDE)

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V6.3.0.

Main Changes

Patch release

Patch release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package supporting STM32G0C1xx/B1xx/B0xx, STM32G061xx/51xx/50xx, STM32G041xx/31xx/30xx and STM32G081xx/71xx/70xx devices.

In the STM32CubeG0 MCU Package, examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Demonstrations binaries are no more delivered within the STM32CubeG0 MCU package. They are available for download, in addition to their required media files if any, in a standalone package accessible through each hardware board official webpage. Please refer to the corresponding demonstration binary readme.txt to get webpage for each board.

Contents

  • HAL / LL Drivers updates
    • Update of HAL FLASH driver to support all STM32G0C1xx devices (with 128K dual bank and mono bank)


  • Projects updates

    • The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.
    • The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).
Name Version License Release notes
Projects V1.4.0 see Projects Release note for details release notes

Warning

For applications using device connected on CN7 (Type-C connector on MB1352):

  • When the power source jumper JP24 is configured to D5V position (with this configuration the mother board is powered from the daughter board), there is no risk to get an over voltage on USB Vbus connector CN7.

  • When the ST-Link is used as power source there is a risk to get an over voltage in connector. In such power configuration, software safety protection is required to detect the overvoltage.

    Please refer to /* SAFETY PROTECTION CODE BEGIN */ section in main.c of USB_Host applications.

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version License Release notes
Cortex-M CMSIS V5.6.0 V5.6.0_cm0 Apache License v2.0 release notes
STM32G0xx CMSIS V1.4.0 Apache License v2.0 release notes
STM32G0xx_HAL_Driver V1.4.1 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.1.1 BSD 3-Clause release notes
BSP STM32G0C1E-EV V1.0.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.3.0 BSD 3-Clause release notes
BSP STM32G071B-Discovery V1.2.0 BSD 3-Clause release notes
BSP STM32G0316-DISCO V1.0.1 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo_32 V1.0.1 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V3.0.4 BSD 3-Clause release notes
BSP Common V5.1.2 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.2 BSD 3-Clause release notes
BSP st7735 V1.1.5 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.1 BSD 3-Clause release notes
BSP tusb546 V1.0.3 BSD 3-Clause release notes
BSP sn65dp141 V1.0.2 BSD 3-Clause release notes
BSP ina230 V1.0.0 BSD 3-Clause release notes
BSP ssd1315 V1.1.0 BSD 3-Clause release notes

Middleware

Name Version License Release notes
FatFS R0.12c BSD 3-Clause release notes
ST modified 20191011 BSD 3-Clause release notes ST
FreeRTOS V10.3.1 MIT-License release notes
ST modified 20200831 BSD 3-Clause release notes ST
STM32_USBPD_Library - Core V3.2.0 SLA0044 release notes
STM32_USBPD_Library - Devices V3.1.0 SLA0044 release notes
STM32_USB_Host_Library V3.3.4 SLA0044 release notes
STM32_USB_Device_Library V2.7.1 SLA0044 release notes
OpenBootloader V3.0.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.1 BSD 3-Clause release notes
Fonts V1.0.1 BSD 3-Clause release notes
Log V1.0.2 BSD 3-Clause release notes
GUI_INTERFACE V1.12.0 BSD 3-Clause release notes
TRACER_EMB V1.5.0 BSD 3-Clause release notes

Development Toolchains and Compilers

Toolchain + ST-Link Version Device Patch(if available)
IAR Embedded Workbench for ARM (EWARM) V8.30.1 G0C1xx/B1xx/B0xx Patch EWARM
IAR Embedded Workbench for ARM (EWARM) V8.30.1 G061xx/51xx/50xx Patch EWARM
RealView Microcontroller Development Kit (MDK-ARM) V5.29 G0C1xx/B1xx/B0xx Patch MDK-ARM
RealView Microcontroller Development Kit (MDK-ARM) V5.29 G061xx/51xx/50xx Patch MDK-ARM
STM32CubeIDE V1.5.0 G0C1xx/B1xx/B0xx

Supported Devices and boards

  • STM32G0C1xx, STM32G0B1xx and STM32G0B0xx devices
  • STM32G061xx, STM32G051xx and STM32G050xx devices
  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G0B1RE Nucleo kit (MB1360 C-01)
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G0C1E Evaluation board RevB (MB1581 B-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B/STM32G0C1E Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

  • A few applications on STM32G0C1E-EV projects are not available at STM32CubeMX format (with .ioc)
  • USB HAL limitation: Double buffer mode is not functional with isochronous data transfers in host mode.

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V6.1.0


Main Changes

Maintenance release and Product Update

Official release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package introducing STM32G0C1xx/B1xx/B0xx and STM32G061xx/51xx/50xx devices.

Maintenance release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package supporting STM32G041xx/31xx/30xx devices and STM32G081xx/71xx/70xx devices.

In the STM32CubeG0 MCU Package, examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Demonstrations binaries are no more delivered within the STM32CubeG0 MCU package. They are available for download, in addition to their required media files if any, in a standalone package accessible through each hardware board official webpage. Please refer to the corresponding demonstration binary readme.txt to get webpage for each board.

Contents

  • CMSIS Core updates
    • Upgrade to CMSIS V5.6.0

      DSP libraries moved to CMSIS/DSP/Lib (DSP-based user projects impacted)

  • CMSIS Device updates
    • Add support of new G0C1xx/B1xx/B0xx devices
    • Add support of new G061xx/51xx/50xx devices
    • Add support of STM32CubeIDE
  • HAL / LL Drivers updates
    • Fix known defects and add several enhancements implementation
    • Add support of new features/instances/IPs for G0C1xx/B1xx/B0xx devices
    • Add support of new instances/IPs for G061xx/51xx/50xx devices
  • BSP Drivers updates
    • Add New BSP STM32G0C1E-EV
    • Update BSP STM32G081B_EVAL following changes in latest version of USBPD Middleware
    • Update BSP STM32G071B-DISCOVERY following changes in latest version of USBPD Middleware
  • BSP Components updates
    • Update SSD1315 to fix known defect
  • Middlewares updates
    • Add new middleware OpenBootloader
    • Add new middleware STM32_USB_Device_Library
    • Add new middleware STM32_USB_Host_Library
    • Update to new version of FreeRTOS v10.3.1 (ST modified 20200831)
    • Update to new version of FatFS R0.12c (ST modified 20191011)
    • Update to new version of STM32_USBPD_Library - Core V3.2.0
    • Update to new version of STM32_USBPD_Library - devices V3.1.0
  • Utilities updates
    • Update to new version of GUI_INTERFACE
    • Update to new version of TRACER_EMB
  • Projects updates
    • Add new examples, templates, Applications and Demonstration for STM32G0C1E-EV and NUCLEO-G0B1RE boards.

    • The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.
    • The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Name Version License Release notes
Projects V1.4.0 see Projects Release note for details release notes

Warning

For applications using device connected on CN7 (Type-C connector on MB1352):

  • When the power source jumper JP24 is configured to D5V position (with this configuration the mother board is powered from the daughter board), there is no risk to get an over voltage on USB Vbus connector CN7.

  • When the ST-Link is used as power source there is a risk to get an over voltage in connector. In such power configuration, software safety protection is required to detect the overvoltage.

    Please refer to /* SAFETY PROTECTION CODE BEGIN */ section in main.c of USB_Host applications.

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version License Release notes
Cortex-M CMSIS V5.6.0 V5.6.0_cm0 Apache License v2.0 release notes
STM32G0xx CMSIS V1.4.0 Apache License v2.0 release notes
STM32G0xx_HAL_Driver V1.4.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.1.1 BSD 3-Clause release notes
BSP STM32G0C1E-EV V1.0.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.3.0 BSD 3-Clause release notes
BSP STM32G071B-Discovery V1.2.0 BSD 3-Clause release notes
BSP STM32G0316-DISCO V1.0.1 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo_32 V1.0.1 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V3.0.4 BSD 3-Clause release notes
BSP Common V5.1.2 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.2 BSD 3-Clause release notes
BSP st7735 V1.1.5 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.1 BSD 3-Clause release notes
BSP tusb546 V1.0.3 BSD 3-Clause release notes
BSP sn65dp141 V1.0.2 BSD 3-Clause release notes
BSP ina230 V1.0.0 BSD 3-Clause release notes
BSP ssd1315 V1.1.0 BSD 3-Clause release notes

Middleware

Name Version License Release notes
FatFS R0.12c BSD 3-Clause release notes
ST modified 20191011 BSD 3-Clause release notes ST
FreeRTOS V10.3.1 MIT-License release notes
ST modified 20200831 BSD 3-Clause release notes ST
STM32_USBPD_Library - Core V3.2.0 SLA0044 release notes
STM32_USBPD_Library - Devices V3.1.0 SLA0044 release notes
STM32_USB_Host_Library V3.3.4 SLA0044 release notes
STM32_USB_Device_Library V2.7.1 SLA0044 release notes
OpenBootloader V3.0.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.1 BSD 3-Clause release notes
Fonts V1.0.1 BSD 3-Clause release notes
Log V1.0.2 BSD 3-Clause release notes
GUI_INTERFACE V1.12.0 BSD 3-Clause release notes
TRACER_EMB V1.5.0 BSD 3-Clause release notes

Development Toolchains and Compilers

Toolchain + ST-Link Version Device Patch(if available)
IAR Embedded Workbench for ARM (EWARM) V8.30.1 G0C1xx/B1xx/B0xx Patch EWARM
IAR Embedded Workbench for ARM (EWARM) V8.30.1 G061xx/51xx/50xx Patch EWARM
RealView Microcontroller Development Kit (MDK-ARM) V5.29 G0C1xx/B1xx/B0xx Patch MDK-ARM
RealView Microcontroller Development Kit (MDK-ARM) V5.29 G061xx/51xx/50xx Patch MDK-ARM
STM32CubeIDE V1.5.0 G0C1xx/B1xx/B0xx

Supported Devices and boards

  • STM32G0C1xx, STM32G0B1xx and STM32G0B0xx devices
  • STM32G061xx, STM32G051xx and STM32G050xx devices
  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G0B1RE Nucleo kit (MB1360 C-01)
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G0C1E Evaluation board RevB (MB1581 B-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B/STM32G0C1E Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

  • A few applications on STM32G0C1E-EV projects are not available at STM32CubeMX format (with .ioc)
  • USB HAL limitation: Double buffer mode is not functional with isochronous data transfers in host mode.

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V6.1.0

Main Changes

Maintenance release

Maintenance release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package supporting STM32G041xx/31xx/30xx devices and STM32G081xx/71xx/70xx devices.

In the STM32CubeG0 MCU Package, examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Demonstrations binaries are no more delivered within the STM32CubeG0 MCU package. They are available for download, in addition to their required media files if any, in a standalone package accessible through each hardware board official webpage. Please refer to the corresponding demonstration binary readme.txt to get webpage for each board.

Contents

  • CMSIS Core updates
    • Update to new version V5.4.0
  • CMSIS Device updates
    • Fix known defect
  • HAL / LL Drivers updates
    • Fix known defects and add several enhancements implementation
  • BSP Drivers updates
    • Update BSP STM32G081B_EVAL following changes in latest version of FatFS Middleware
    • Update BSP Adafruit Shield following changes in latest version of FatFS Middleware
  • Middlewares updates
    • Update to new version of FatFS R0.12c (ST modified 20190329)
    • Update to new version of STM32_USBPD_Library - Core & devices V2.6.0
  • Utilities updates
    • Update to new version of CPU V1.1.1
    • Update to new version of Fonts V1.0.1
    • Update to new version of Log V1.0.2
    • Update to new version of GUI_INTERFACE V1.7.0
    • Update to new version of TRACER_EMB V1.2.0
  • Projects updates
    • The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.
    • The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).
    • Update of FW projects following changes in latest version of HAL/LL, BSP and Middlewares
Name Version License Release notes
Projects V1.3.0 see Projects Release note for details release notes

Components

Note: in the tables above, version highlighted have changed since previous release.

Drivers

Name Version License Release notes
Cortex-M CMSIS V5.4 V5.4.0 Apache License v2.0 release notes
STM32G0xx CMSIS V1.3.0 Apache License v2.0 release notes
STM32G0xx_HAL_Driver V1.3.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.1.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.2.0 BSD 3-Clause release notes
BSP STM32G071B-Discovery V1.1.0 BSD 3-Clause release notes
BSP STM32G0316-DISCO V1.0.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo_32 V1.0.0 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V3.0.4 BSD 3-Clause release notes
BSP Common V5.1.2 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.2 BSD 3-Clause release notes
BSP st7735 V1.1.5 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.0 BSD 3-Clause release notes
BSP tusb546 V1.0.2 BSD 3-Clause release notes
BSP sn65dp141 V1.0.1 BSD 3-Clause release notes
BSP ina230 V1.0.0 BSD 3-Clause release notes
BSP ssd1315 V1.0.0 BSD 3-Clause release notes

Middlewares

Name Version License Release notes
FatFS R0.12c BSD 3-Clause release notes
ST modified 20190329 BSD 3-Clause release notes ST
FreeRTOS V10.0.1 MIT release notes
ST modified 20190329 BSD 3-Clause release notes ST
STM32_USBPD_Library - Core V2.6.0 SLA0044 release notes
STM32_USBPD_Library - Devices V2.6.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.1 BSD 3-Clause release notes
Fonts V1.0.1 BSD 3-Clause release notes
Log V1.0.2 BSD 3-Clause release notes
GUI_INTERFACE V1.7.0 BSD 3-Clause release notes
TRACER_EMB V1.2.0 BSD 3-Clause release notes

Development Toolchains and Compilers

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

Supported Devices and boards

  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V5.3.0

Main Changes

Maintenance release and product Update

First Official release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package supporting STM32G041xx/31xx/30xx devices and introducing new STM32G0316-DISCO and NUCLEO-G031K8 boards.

Maintenance release of STM32CubeG0 (STM32Cube for STM32G0 Series) Firmware package supporting STM32G081xx/71xx/70xx devices

In the STM32CubeG0 MCU Package, examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Demonstrations binaries are no more delivered within the STM32CubeG0 MCU package. They are available for download, in addition to their required media files if any, in a standalone package accessible through each hardware board official webpage. Please refer to the corresponding demonstration binary readme.txt to get webpage for each board.

Contents

The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.

The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Name Version License Release notes
Projects V1.2.0 see Projects Release note for details release notes

Components

Name Version License Release notes
Cortex-M CMSIS V4.5 V4.5.0 BSD 3-Clause release notes
STM32G0xx CMSIS V1.2.0 BSD 3-Clause release notes
STM32G0xx_HAL_Driver V1.2.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.1.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.1.1 BSD 3-Clause release notes
BSP STM32G071B-Discovery V1.1.0 BSD 3-Clause release notes
BSP STM32G0316-DISCO V1.0.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo_32 V1.0.0 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V2.0.1 BSD 3-Clause release notes
BSP Common V5.1.2 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.2 BSD 3-Clause release notes
BSP st7735 V1.1.5 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.0 BSD 3-Clause release notes
BSP tusb546 V1.0.2 BSD 3-Clause release notes
BSP sn65dp141 V1.0.1 BSD 3-Clause release notes
BSP ina230 V1.0.0 BSD 3-Clause release notes
BSP ssd1315 V1.0.0 BSD 3-Clause release notes

Middlewares

Name Version License Release notes
FatFS R0.12c FatFs License release notes
ST modified 20170710 SLA0044 release notes ST
FreeRTOS V10.0.1 MIT release notes
ST modified 20190329 BSD 3-Clause release notes ST
STM32_USBPD_Library - Core V2.5.2 SLA0044 release notes
STM32_USBPD_Library - Devices V2.5.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.0 BSD 3-Clause release notes
Fonts V1.0.0 BSD 3-Clause release notes
Log V1.0.0 BSD 3-Clause release notes
GUI_INTERFACE V1.5.0 BSD 3-Clause release notes
TRACER_EMB V1.0.0 BSD 3-Clause release notes

Note: in the tables above, version highlighted have changed since previous 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.25 + ST-Link
  • System Workbench for STM32 (SW4STM32) toolchain V2.7.2 + ST-Link

Supported Devices and boards

  • STM32G041xx, STM32G031xx and STM32G030xx devices
  • STM32G081xx, STM32G071xx and STM32G070xx devices
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)
  • STM32G031K8 Nucleo32 kit (MB1455)
  • STM32G0316 Discovery kit (MB1454)

Known Limitations

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V5.2.0

Main Changes

Maintenance release

Official release of STM32CubeG0 (STM32Cube for STM32G0 Series) supporting STM32G081xx/71xx/70xx devices and introducing new STM32G071-DISCO board, designed to highlight USBPD features.

NUCLEO-G071RB, NUCLEO-G070RB and STM32G081B-EVAL completed with new examples in STM32CubeMX format.

In the STM32CubeG0 MCU Package, examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Contents

The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.

The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Demonstrations binaries are no more delivered within the STM32CubeG0 MCU package. They are available for download, in addition to their required media files if any, in a standalone package accessible through each hardware board official webpage. Please refer to the corresponding demonstration binary readme.txt to get webpage for each board.

Name Version License Release notes
Projects V1.1.0 see Projects Release note for details release notes

Components

Drivers

Name Version License Release notes
Cortex-M CMSIS V4.5 V4.5.0 BSD 3-Clause release notes
STM32G0xx CMSIS V1.1.0 BSD 3-Clause release notes
STM32G0xx HAL V1.1.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.0.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.1.1 BSD 3-Clause release notes
BSP STM32G071B-Discovery V1.0.0 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V2.0.1 BSD 3-Clause release notes
BSP Common V5.1.0 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.2 BSD 3-Clause release notes
BSP st7735 V1.1.4 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.0 BSD 3-Clause release notes
BSP tusb546 V1.0.2 BSD 3-Clause release notes
BSP sn65dp141 V1.0.1 BSD 3-Clause release notes
BSP ina230 V1.0.0 BSD 3-Clause release notes
BSP ssd1315 V1.0.0 BSD 3-Clause release notes

Middlewares

Name Version License Release notes
FreeRTOS V10.0.1 ST modified 20180813 V10.0.1 FatFs License release notes
ST modified 20180813 SLA0044 release notes
FatFS R0.12c ST modified 20170710 R0.12c MIT release notes
ST modified 20170710 SLA0044 release notes
STM32_USBPD_Library - Core V2.5.0 SLA0044 release notes
STM32_USBPD_Library - Devices V2.5.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.0 BSD 3-Clause release notes
Fonts V1.0.0 BSD 3-Clause release notes
Log V1.0.0 BSD 3-Clause release notes
GUI_INTERFACE V1.5.0 BSD 3-Clause release notes
TRACER_EMB V1.0.0 BSD 3-Clause release notes

Note: in the tables above, version highlighted have changed since previous 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.25
  • System Workbench STM32 (SW4STM32) toolchain V2.5

Supported Devices and boards

  • STM32G081xx devices RevB
  • STM32G071xx devices RevB
  • STM32G070xx devices RevB
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)
  • STM32G071B Discovery kit RevC (MB1378 C-01)

Known limitations

Backward compatibility

  • This release is compatible with the previous versions

Other compatibilities

This software release is compatible with:

  • STM32CubeMX V5.1.x

Main Changes

First release

First release of STM32CubeG0 (STM32Cube for STM32G0 Series) supporting STM32G081xx/71xx/70xx devices

In the STM32CubeG0 MCU Package, most of the examples and applications projects are generated with the STM32CubeMX tool to initialize the system, peripherals and middleware stacks. User can open the provided ioc file in STM32CubeMX to modify the settings, add additional peripherals and/or middleware, to build his final application.

Contents

The STM32CubeG0 Firmware package comes with a rich set of examples running on STMicroelectronics boards, organized by board and provided with preconfigured projects for the main supported toolchains.

The exhaustive list of projects is provided in this table (STM32CubeProjectsList.html).

Name Version License Release notes
Projects V1.0.0 see Projects Release note for details release notes

Components

Drivers

Name Version License Release notes
Cortex-M CMSIS V4.5 V4.5.0 BSD 3-Clause release notes
STM32G0xx CMSIS V1.0.0 BSD 3-Clause release notes
STM32G0xx HAL V1.0.0 BSD 3-Clause release notes
BSP STM32G0xx_Nucleo V1.0.0 BSD 3-Clause release notes
BSP STM32G081B_EVAL V1.0.0 BSD 3-Clause release notes
BSP Adafruit Shield (reference ID 802) V2.0.1 BSD 3-Clause release notes
BSP Common V5.1.0 BSD 3-Clause release notes
BSP hx8347d V1.1.2 BSD 3-Clause release notes
BSP stlm75 V2.0.0 BSD 3-Clause release notes
BSP st7735 V1.1.2 BSD 3-Clause release notes
BSP cbtl08gp053 V1.0.0 BSD 3-Clause release notes
BSP tusb546 V1.0.2 BSD 3-Clause release notes
BSP sn65dp141 V1.0.1 BSD 3-Clause release notes

Middlewares

Name Version License Release notes
FreeRTOS V10.0.1 ST modified 20180730 V10.0.1 FatFs License release notes
ST modified 20180813 SLA0044 release notes
FatFS R0.12c ST modified 20170710 R0.12c MIT release notes
ST modified 20170710 SLA0044 release notes
STM32_USBPD_Library - Core V2.2.5 SLA0044 release notes
STM32_USBPD_Library - Devices V2.3.0 SLA0044 release notes

Utilities

Name Version License Release notes
CPU V1.1.0 BSD 3-Clause release notes
Fonts V1.0.0 BSD 3-Clause release notes
Log V1.0.0 BSD 3-Clause release notes
GUI_INTERFACE V1.1.2 BSD 3-Clause release notes

Development Toolchains and Compilers

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

Supported Devices and EVAL boards

  • STM32G081xx devices RevB
  • STM32G071xx devices RevB
  • STM32G070xx devices RevB
  • STM32G071RB Nucleo kit RevC (MB1360 C-01)
  • STM32G070RB Nucleo kit RevC (MB1360 C-01)
  • STM32G081B Evaluation board RevB (MB1350 B-01)
  • STM32G081B Legacy daughter board RevA (MB1351 A-01)
  • STM32G081B UCPD daughter board RevC (MB1352 C-01)

Known limitations