::: {.row} ::: {.col-sm-12 .col-lg-4}

Release Notes for STM32 Network Library

Copyright © 2019 STMicroelectronics
Microcontrollers Division - Application Team

License

Licensed under ST license SLA0044 (the “License”). You may not use this package except in compliance with the License.

You may obtain a copy of the License at: SLA0044 Software license agreement.

Purpose

The STM32 Network Library is a middleware providing network services on STM32 devices. It provides a socket API (BSD like style) with support of secure or non secure connection and an API to control the lifecycle of the network adapters.

Three classes of network adapters are supported WIFI, Ethernet and Cellular. Different WIFI modules are supported from third party vendors.

Documentation

Doxygen documentation :::

Update History

Main changes

Network library core

  • Improve performance monitoring primitives adding Thread display support
  • Improve Memory debug primitive
  • Add Node Tree display for dynamic memory allocation

MXCHIP WIFI Network interface

  • Add support of UART interrupt module

Bug fixes

  • Fix uninitialized variable for all WIFI network interface to force default to AP mode when connecting
  • Fix memory leakage for MXCHIP network interface

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.32.3
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.27.1
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)
  • STM32H743I-EVAL (with Ethernet interface)

Known Limitations

  • Cellular on P-L496G-CELL02:
  • Server sockets are not supported

Update History

Main changes

Network library core

  • Prepare support of IPv6 addresses, making code independent from network address definition
  • Clean up template of configuration file to allow application to overwrite default definition
  • Add performance monitoring primitives
  • Add memory allocation primitive to track leakage
  • Add yield feature for specific network interface

WIFI generic support

  • Add WIFI Access point support, with needed new API (set_channel, set mode )
  • Update state machine management to support AP and STA connection
  • Add support of concurrent interface, for instance an AP running in parallel with a STA
  • Extend list of supported security mode

Cellular Network interface

  • Add compatibility until XCube Cellular package 1.5.0

Cypress WIFI Network interface

  • Add support of Access Point mode

MXCHIP WIFI Network interface

  • Newly supported WIFI module
  • Add support of UART and SPI based module
  • Add templates files

Inventek WIFI network interface

  • Add support of net_getpeername and net_getsocketinfo API

Bug fixes

  • Fix memory leakage for Cypress WHD based devices
  • Fix memory leakage for secure socket (based on MbedTLS )
  • Fix timeout definition for Cellular devices on connection
  • Fix state machine on deinitialization transition

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.32.3
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.27.1
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)
  • STM32H743I-EVAL (with Ethernet interface)

Known Limitations

  • Cellular on P-L496G-CELL02:
  • Server sockets are not supported

Main changes

  • Add support for WIFI-WHD devices, create a new network interface
  • Add support of ethernet on H7 device (STM32H743I-EVAL board)
  • Restructure code regarding LWIP based network interface
  • lwip related initialisation is moved to net_conf.c
  • Compliant with ST-Quality standard
    • Pass MISRA check list
    • Pass CodeSonar test
    • Enforce ST coding style rules

Bug fixes

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.30.1.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)
  • STM32H743I-EVAL (with Ethernet interface)

Known Limitations

  • Cellular on P-L496G-CELL02:
    • Server sockets are not supported

Main changes

  • Add support for CMSIS-OS2

Bug fixes

  • Fix cellular network interface, required to used firmware version >= BG96MAR02A08M1G.
  • Fix message order on notification

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.30.1.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)

Known Limitations

  • Cellular on P-L496G-CELL02:
    • Server sockets are not supported

Main changes

  • Renamed STM32 Connectivity library as STM32 Network library
  • Re-implement State management of network interface ,renamed states from INITIALIZED to READY , suppress some unused states
  • Add and test support of embedded Inventek WIFI TLS socket
  • Run MISRA checks

Bug fixes

  • Ethernet template: properly clear the “Receive buffer unavailable status” in case of RX descriptor underflow.
  • Fix missing semaphore on net_wait API

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.30.1.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)

Known Limitations

  • Cellular on P-L496G-CELL02:
    • Server sockets are not supported

Main changes

Bug fixes

  • Run Astyle checks
  • Add doxygen doc generation
  • Fix issue on F769 Ethernet interface , avoid blocking thread on alloc failure from LWIP pool

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.32.3.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)

Known Limitations

  • Cellular on P-L496G-CELL02:
    • Server sockets are not supported

Main changes

Bug fixes

  • Ethernet template: properly clear the “Receive buffer unavailable status” in case of RX descriptor underflow.

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.32.3.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)

Known Limitations

  • Cellular on P-L496G-CELL02:
    • Server sockets are not supported

Initial version

  • Features supported:
    • BSD socket like API
    • Network interface control API (init, start, stop, …)
    • TCP and UPD protocols
    • Client and server connections
    • DNS and ping services
    • Secure socket on top of mbedTLS
    • RTOS and bare metal applications are supported
    • IPv4 address only is supported (IPv6 will be available in a future version)
    • Wi-Fi, Ethernet and cellular connectivities

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM). Version 8.30.1.
  • Keil Microcontroller Development Kit (MDK-ARM) Version 5.26.
  • System Workbench for STM32. Version 2.8.1.

Supported Devices and Boards

  • B-L475E-IOT01A board (MB1297 rev D).
  • 32F413HDISCOVERY board (MB1274 rev B).
  • 32F769IDISCOVERY board (MB1225 rev B).
  • P-L496G-CELL02 board package including the 32L496G-Discovery board (MB1261 rev B) and the Cellular Add-on board based on BG96 4G Modem (MB1329 rev B)

Known Limitations

  • Cellular on P-L496G-CELL02
    • UDP sockets are not supported
    • Server sockets are not supported