Skip to content

Arduino Core for STM32 1.6.0

Compare
Choose a tag to compare
@fpistm fpistm released this 17 Jun 16:19

Github Releases (by Release)

This release includes:

Add support of:

  • Nucleo H743ZI2
  • Nucleo G071RB
  • P-Nucleo WB55RG (No BLE support at this time)
  • Sparky V1
  • STEVAL-3DP001V1
  • VAkE v1.0

HAL Drivers and CMSIS updated:

  • STM32F0xx HAL Drivers to v1.7.2
  • STM32F4xx HAL Drivers to v1.7.6
  • STM32F4xx CMSIS to v2.6.3
  • STM32F7xx HAL Drivers to v1.2.7
  • STM32F7xx CMSIS to v1.2.4
  • STM32H7xx HAL Drivers to v1.5.0
  • STM32H7xx CMSIS to v1.5.0
  • STM32L0xx HAL Drivers to v1.10.2
  • STM32L1xx HAL Drivers to v1.4.0
  • STM32L1xx CMSIS to v2.3.0
  • STM32L4xx HAL Drivers to v1.10.0
  • STM32L4xx CMSIS to v1.5.1

HAL Drivers and CMSIS added:

  • STM32G0xx HAL Drivers v1.2.0
  • STM32G0xx CMSIS v1.2.0
  • STM32WBxx HAL Drivers v1.1.0
  • STM32WBxx CMSIS v1.1.0

Core dependencies:

Enhancements/improvements:

  • Introduce code formatting using Astyle 3.1:
  • Add STM32 core version. See Wiki
  • Code cleaning/hardening:
    • Clean useless legacy comments
    • Remove useless array for digital pins configured
    • Dynamically handle I2C, UART and Timer indexes
    • [USB HID] Harden init
    • [I2C] Harden init and save space
    • [UART] Save space and avoid loop to search the right serial_t obj
  • Several update for USB device from @makarenya and @ghent360
  • [RTC] Handle reset time (#266)
  • [DWT] Add API to enable DWT access
  • Use DWT cycle counter for delayMicroseconds()
  • [DISCO_L072CZ_LRWAN1] Enable USB clock
  • [Timer] Extend channels support (#477)
  • Support custom USBD_reenumerate (#500)
  • Re-evaluate interrupt priority values(#472). See Custom-definitions
  • Introduce STM32CubeProgrammer:
    • Replace STLink and Serial upload methods
    • Add DFU upload method
      Warning: user have to install the STM32CubeProgrammer manually, it is not provided by the STM32 tools package.
  • Review HAL configurations to add some enhancement and flexibility, see #518 and HAL configuration WiKi page
  • Add DTR toggling sequence support:
    • Enabled thanks: DTR_TOGGLING_SEQ
    • User can redefine its own hook by redefining: dtr_togglingHook(uint8_t *buf, uint32_t *len)
  • Maple bootloader support (legacy) thanks @BennehBoy and @Serasidis
  • Add dummy analogReference() for compatibility
  • Add internal ADC channels support. See Wiki
  • HID Bootloader v2.2 support thanks @Serasidis :
    https://github.com/Serasidis/STM32_HID_Bootloader
  • Add general call mode API. See Wiki

Fixes:

  • [UART] Fix serial port full-duplex bug
  • [UART] Fix error callback (clear flags and restart receive IT)
  • Fix to build with ISO C standard
  • Fix dtostrf() with value in range -1.0 < val < 0.0 (#513)

Plus several other fixes: See 1.5.0...1.6.0

Several components libraries are available on stm32duino organization.
They are also available through the Arduino library manager. Search for STM32duino ;)

known issues

  • Linker error if path contains space.:
    <...>/stm32/tools/arm-none-eabi-gcc/8-2018-q4-major/bin/../lib/gcc/arm-none-eabi/8.2.1/lto-wrapper.exe: No such file or directory
    See stm32duino/arm-none-eabi-gcc#1