stm32-stm8 Embedded Software Solutions
stm32-stm8 Embedded Software Solutions
• You will find your solution, fitting your requirements in terms of price, feature, license scheme and support
• Built in-house, making the most of the STM32 and STM8 MCUs
ST-designed software • Source code or binaries
• Supported by ST
2
A large community of third parties… and growing !
3
STM32 MCUs embedded software offer - overview
Customers Applications
STM32Cube Embedded Software
STM32Cube
STM32Cube Expansions
Expansion Packages STM32Cube Expansion Packages
from ST from Partners
Connect Secure Process Move/Actuate Sense Convert Power-up
TCP 802.15.4
/IP
Arm ® Cortex® -M
4
Solutions at all levels
Middleware Application fields
Safety Building
Motor Connectors to Industrial
Display Audio Automation Automotive Virtual
STL control Cloud providers protocols
and Control Machines
RTOS/
and
kernel Security Connectivity
Model driven
Artificial File
USB Touch development
SSL Bootloader Neural system
Crypto TCP/IP 2.4GHz Sub-1GHz NFC Cellular sensing
TLS Secure Boot Networks
This layer is the first one to interact with the MCU hardware
7
STM32 - hardware abstraction layer
Availability
Provider Solution name Model Cost F3
WB WL F0 G0 F1 F2 G4 F4 F7 H7 L0 L1 L4 /L4+ L5 U5
F30xF37x
More details about hardware abstraction layer solutions: STM32 Embedded Software overview
8
STM8 - hardware abstraction layer
Availability
STM8Lx5x
Provider Solution name Model Cost STM8S
STM8L10x STM8Lx6x
STM8AF
STM8AL
ST Standard peripheral library Source Free Y Y Y
Back 9
Middleware and application fields
Middleware and application fields
Middleware stacks fill the gap between hardware and your application.
ST and third parties bring the required solutions, as well as application
software bricks to speed up customer development
• All standard middleware covered
• RTOS/kernel
• File system
• USB
• Security (crypto, SSL/TLS, secure boot)
• Connectivity (TCP/IP, Bluetooth LE, Zigbee, Thread, Sub-1GHz, Sigfox, LoRa, Wi-Fi, NFC…),
Connectors to Cloud providers
• Display, Audio
• Safety
• Industrial protocols
• Motor Control
11
Middleware – RTOS / kernel
• This is the root component to share time between several tasks on a single core.
It ensures task switching within a known and limited duration.
12
STM32 – RTOS / kernel (1/4)
Solution Availability
Provider Model Cost
name WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4 /L4+ L5 U5
Alibaba Rhino RTOS Open Source (Apache 2.0) Free N N N N N N N N Y Y N Y N Y N N
Arduino STM32Duino Open source LGPL v2.1 Free N Y6 Y Y Y Y Y Y Y Y Y7 Y Y Y Y5 Y5
arm mbed OS4 Open Source (Apache 2.0) Free Y N Y N Y Y Y N Y Y Y Y Y Y Y5 Y5
FreeRTOS
AWS Source2 Free Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
kernel
ChibiOS/RT Open source (GPL3) or Free or
ChibiOS Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y N
ChibiOS/NIL Source License
CMX CMX-RTX Source License N3 N3 Y N3 Y Y Y N3 Y Y Y Y Y Y N3 N3
CMX CMX-Tiny+ Source License N3 N3 Y N Y Y Y N3 Y Y N Y Y N N3 N3
Modified GNU GPL or Free or
eCosCentric eCosPro N3 N3 N N3 Y Y Y N3 Y Y N3 N Y Y N3 N3
Source1 License
1/ eCos is an open-source kernel, a subset of eCosPro. eCosPro comes with TCP/IP stack, FAT, jFFS2, RAM and ROM FS
2/ FreeRTOS kernel license is MIT from V10 (former versions are under a modified GPL license)
3/ Please contact supplier
4/ Mbed OS is Thread certified
5/ With TrustZone disactivated
6/ no LoRa
7/ single core only
13
STM32 – RTOS / kernel (2/4)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
eForce µC3/Compact Source License N N2 Y Y Y Y Y N2 Y Y Y Y Y Y Y N2
Open Source
Emcraft uCLinux Free1 N N N N N N N N Y Y N2 N N N N N
(GPL)1
Binaries or
EUROS EUROS License N2 N2 Y N2 Y Y Y N2 Y Y Y Y Y Y N2 N2
source
Azure RTOS
Microsoft Source Free Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
ThreadX
Green Hills µ-velOSity Source License N2 N2 Y N2 Y Y Y N2 Y Y N2 Y Y Y N2 N2
RTX5 Open Source
Keil / arm Free3 N2 N2 Y N2 Y Y Y N2 Y Y Y Y Y Y N2 N2
(Apache 2.0)
Mentor Nucleus Kernel Source License N2 N2 N N Y Y N2 N2 Y Y N2 N N2 Y N2 N2
1/ uCLinux is open source, but this company proposes some ports on STM32
2/ Please contact supplier
3/ RTX5 is part of arm Keil MDK software development tool
14
STM32 – RTOS / kernel (3/4)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Micrium µC-OS Open Source
Free N N Y N Y Y Y N Y Y N Y Y Y N N
(Apache 2.0)
Weston Cesium RTOS
Source License N2 N2 Y N2 Y Y Y Y Y Y N2 Y Y Y N2 N2
Embedded Cs/OS2 and Cs/OS3
Micro Digital SMX Source License N2 N2 N2 N2 Y Y Y N2 Y Y Y N2 N2 N2 N2 Y
NuttX NuttX Open Source6 Free N N Y Y Y Y Y Y Y Y Y N Y Y N N
Prove & Run ProvenCore-M Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
Quadros RTXC RTOS Source License N2 N2 N2 N2 Y Y N2 N2 Y N2 N2 N2 Y N2 N2 N2
Riot Riot Open Source4 Free Y N Y Y Y Y Y Y Y Y N Y Y Y Y N
Rowebots UNISON software
expansion for
Source Free1 Y Y Y Y Y Y Y Y Y Y Y Y Y Y N N
STM32Cube
(I-CUBE-UNISON)3
Rowebots UNISON Source Free Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
RT-Thread RT-Thread Open Source5 Free Y Y Y Y Y Y N Y Y Y Y Y N Y N N
Availability
Provider Solution name Model Cost
STM8S STM8L
STM8AF STM8AL
AtomThreads AtomThreads RTOS Open source (BSD) Free Y N1
Chibios ChibiOS/RT Open source (GPL3) or Source Free or License Y Y
CMX CMX-Tiny+ Source License Y N1
SEGGER embOS Source License Y Y
Back 17
Middleware – crypto
Cryptology helps users ensure the security of data or authentication. This
is a key element in ensuring the integrity of IoT applications for instance.
Often-seen acronyms
Symmetric ciphering Ciphering method that ensures the reuse of a unique key, both for encryption and decryption. Example: AES, DES, 3DES, ARC4, …
Asymmetric ciphering Ciphering method based on pair of key, a private and a public one. This also brings some kind of authentication: only the owner of private key can
decrypt content that was encrypted with a public one. And people able to decrypt with public key can be sure it was encrypted by owner of private key.
Example: ECDSA, RSA, …
Hashing Method to calculate a unique value for a given data content. This allows ensuring a content was not modified for instance. Example: MD5, SHA, …
18
STM32 – crypto (1/2)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
CypherBridge uVPN SDK Source License N N N N N N N N1 Y Y Y N N Y N1 N1
IKEv1/IKEv2/IPsec
CycloneCrypto
Lite: MD2, MD4, MD5, SHA-1, SHA-2, HMAC, RC4,
DES, triple DES, AES, ECB, CBC, CFB, OFB, CTR, Open
RSA, X.509
Oryx source Free or
Pro: RIPEMD-128/160, Tigger/192, RC6, IDEA, N1 N1 Y N1 Y Y Y Y Y Y Y Y Y Y Y Y
Embedded Camellia, SEED, ARIA, CCM, GCM, Dif f ie-Hellman, (GPL2) or license
DSA
Ultimate: SAH-3, Keccak, CkaCha, Poly 1305, Source
ChaCha20Poly 1305 AEAD, PKCS #5, ECC, ECDSA,
ECDH, NIST-P, Brainpool
Back 19
STM32 – crypto (2/2)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
UNISON SSL/TLS Stack
AES, Blowf ish, Triple-DES (3DES), DES, ARC4,
Camellia, XTEA
Rowebots ECB, CBC, CFB, CTR, GCM, CCM Source License N N N N Y Y Y Y Y Y Y N Y Y N4 N4
MD2, MD4, MD5, SHA-1, SHA-224, SHA-256, SHA-384,
SHA-512, RIPEMD-160
ECC
• Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL),
are cryptographic protocols that provide communications security.
• The Transport Layer Security protocol aims primarily to provide privacy and data
integrity between a client and a server
21
STM32 – SSL/TLS solutions
Availability
Provider Solution name Model Cost
WB WL F1 F2 F4 F7 H7 L4/L4+ L5 U5
arm Mbed TLS1 Open source Free N N Y Y Y Y Y Y Y Y
CypherBridge Embedded TLS SDK (uSSL™) Source License N N N Y Y Y Y Y N2 N2
HCC Verifiable TLS Source License N2 N2 Y Y Y Y N2 N2 N2 N2
Open source (GPL2) or
Oryx Embedded CycloneSSL Free or license N2 N2 Y Y Y Y Y Y N2 N2
Source
SEGGER emSSL Source License N2 N2 Y Y Y Y N2 N2 N2 N2
1/ Formerly known as PolarSSL. Apache 2.0 open source or GPL 2.0 open source license
2/ Please contact supplier
3/ Apache 2.0 license, included in STM32Cube MCU packages (\Middlewares\Third_Party folder)
4/ Available on STM32Cube, so porting is very easy
22
STM32 – SSL/TLS solution details
Provider Solution name Details
SSL version 3, TLS version 1.0, 1.1, 1.2,
arm Mbed TLS More…
IETF standard SSL 3.0/TLS 1.2 protocols. Supported crypto and hash functions include: RSA, DSS, PKCSv1.5,
CypherBridge Embedded TLS SDK (uSSL™) OAEP, DES, 3DES, AES,
RC4, SHA1, SHA2, MD2, MD4, MD5, RNG, X.509 certificate Processing
TLS 1.0, 1.1, 1.2, 1.3 (RFC 5246), CHACHA20, POLY1305, SSL3.0, DTLS 1.2 (RFC6347), 1.0 (RFC 4347), RFC
HCC Verifiable TLS 6520, HTTP over TLS (RFC 2818), HTTPS, FTPS, embedded encryption manager for full certificate management,
cipher suites: DH/DHE/DSS/ECDHE/RSA, AES/RC4/3DES, SHA/MD5
Server and/or client operation, Supports TLS 1.0, 1.1, 1.2, 1.3 and SSL 3.0, Supports DTLS 1.0 and DTLS 1.2,
Robust and efficient implementation, Supports ECC (Elliptic Curve Cryptography), Rich set of TLS cipher suites
(including Suite B profile), RSA, Diffie-Hellman and ECDH key exchange algorithms, PSK (Pre-Shared Key) cipher
suites, Supports stream ciphers, CBC block ciphers as well as AEAD ciphers (CCM and GCM),
ChaCha20Poly1305 AEAD, Cryptographic library for common encryption algorithms (RC4, IDEA, DES, 3DES,
Oryx Embedded CycloneSSL AES, Camellia, SEED and ARIA), Supports MD5, SHA-1, SHA-256 and SHA-384 hash algorithms, SSL/TLS
session resumption, PKIX path validation, Compliant with BSD socket API, Supports hardware accelerated
encryption engines (when available), Flexible memory footprint. Built-time configuration to embed only the
necessary features, Portable architecture (no processor dependencies), The library is distributed as a full ANSI C
and highly maintainable source code
SSL version 3.0 and TLS versions 1.0, 1.1, 1.2, and 1.3 (client and server), DTLS 1.0, 1.2 support (client and
wolfSSL Embedded SSL Library server)
More…
Back 23
Middleware – bootloader / secure boot
24
STM32 – bootloader / secure boot
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
ST X-CUBE-IAP-USART3 Source Free N2 N2 N2 N2 Y N2 N2 N2 N2 N2 N2 Y N2 Y N2 N2
26
STM8 – bootloader
Availability
Provider Solution name Model Cost STM8S STM8L
STM8AF STM8AL
Simma Software ssBL-target, ssBL-PC Source License Y N1
Back 27
Middleware – file system
A file system is the way in which files are named and how they are placed
logically for storage and retrieval. Several standards exist: FAT; JFFS2…
• Safety solutions
• Ensuring data is not corrupted in any way (power supply removal, …)
• NAND, NOT, SSD memory access solutions
• With error correction and wear-leveling
28
STM32 – file system (1/3)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
AWS FreeRTOS+TM FAT SL2 Source Free N N Y N Y Y Y N Y Y N Y Y Y N N
Mbed LittleFileSystem,
arm Open source Free N3 N3 Y N3 Y Y Y Y Y Y N Y Y Y Y N3
FATFileSystem
Open source
ChaN FatFS Free N N N N Y N N N Y N N N N N N N
(BSD)
CMX CMX-FFS Source License N3 N3 Y N3 Y Y Y N Y Y Y Y Y N N N
CypherBridge uFile Source License N N N N N Y N N3 Y Y N3 N N N N3 N3
JFFS2, YaFFS, FAT, NFS, Open source
EmCraft Free N N N N N Y N N Y Y N3 N N N N N
etc.. (GPL)
31
STM8 – file system
Availability
Provider Solution name Model Cost STM8S STM8L
STM8AF STM8AL
ChaN Petit FatFS Open source (BSD) Free N1 Y2
HCC FAT FS: FAT THIN, Flash FS:
Source License Y Y
TINY
SEGGER emFile Source License Y Y
Back 32
Middleware – USB
Universal Serial Bus requires a dedicated software stack. This serial bus is organized in a star
topology with host and device roles, with the host organizing the traffic. Several device classes are
specified, in order to ease communication in different application cases.
Often-seen acronyms
OTG On-The-Go: An OTG peripheral can switch host and device roles on the fly
MS Mass storage: Protocols to interact with storage block devices (for files)
HID Human interface device: Protocols for peripherals interacting with humans (mouse, keyboard, etc.)
CDC Communication device class: Protocols for serial communications, different sub-classes define details, for instance ACM for a standard COM port, or ECM for modems
Audio Defines what protocols to implement to build an audio application (microphone, headset, etc.)
33
STM32 – USB solutions (1/3)
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Open source Free or
Chibios ChibiOS/HAL N1 Y N1 Y Y Y N1 Y Y N1 Y Y Y N1 N1
(GPL3) or Source License
CMX-USB Device,
CMX Source License N1 Y N1 Y Y Y N1 Y Y N1 Y Y N N1 N1
Host
eCosCentric eCosPro-Host, Device Source License N1 N N1 Y Y Y N1 Y Y N1 N Y Y N1 N1
EUROS USB Host Binaries License N1 Y N1 Y Y Y N1 Y Y Y N Y Y N1 N1
EmCraft Linux USB Host Open source (GPL) Free N N N N Y N N1 Y N N1 N N N N1 N1
34
STM32 – USB solutions (2/3)
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
HCC-USB Host,
HCC Source License N1 Y N1 Y Y Y N1 Y Y N1 Y Y Y N1 N1
Device
Keil / arm MDK-ARM USB Source License N1 Y N1 Y Y Y N1 Y Y N1 Y Y Y N1 N1
Mentor
Nucleus USB Source License N N N Y Y Y N1 Y Y N1 N Y Y N1 N1
Embedded
35
STM32 – USB solutions (3/3)
Availability
Provider Solution name Model Cost F1
WB F0 G0 F105 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Others
F107
Device: HID, MS, CDC (ACM, ECM, RNDIS), Audio, Midi, MTP, PHDC
CMX CMX-USB Device, Host Host: HID, MS, CDC (ACM, ECM, RNDIS, OBEX), Audio, Midi, Printer, HUB
Device: MS, CDC (ACM, ECM, EEM, RNDIS)
eCosCentric eCosPro-Host, Device Host: MS, CDC (ACM, ECM, EEM, RNDIS), Hub
Device: HID, MS, CDC (ACM, ECM)
EUROS USB Host & Device Stack Host: HID, MS, CDC (ACM, ECM), HUB
Device: HID, MS, CDC (ACM, ECM, RNDIS), Still Image, PTP, PictBridge, DFU, PIMA w/MTP
Microsoft USBX Host: HID, MS, CDC (ACM, ECM), Audio, Printer, HUB, ASIX, PIMA, GSER, PROLIFIC
EmCraft Linux USB Host Host: HID, MS, CDC (ACM, ECM), HUB
Device: Connectivity (HID), File System & Storage (Mass Storage), Ethernet & Serial Interface (RNDIS, CDC-ACM,
CDC-ECM, CDC-EEM, CDC-NCM), Audio (AUDIO, 1.0, 2.0, MIDI), Multi-media & Printing (MTP, Pictbridge, Printer PCL,
TEC), Healthcare (PHDC)
HCC HCC-USB Host: Connectivity (HID, Hub, lan7500, lan9500, CCID, CP201x), File System & Storage (Mass Storage), Ethernet &
Serial Interface (RNDIS, CDC-ACM, CDC-ECM, CDC-EEM, CDC-FTDI, CDC-NCM), Audio (AUDIO, MIDI), Multi-media
& Printing (MTP, Printer)
Device: HID, MS, CDC (ACM), Audio
Keil / arm MDK-ARM USB Host: HID, MS
Device: HID, MS, CDC (ACM, ECM)
Mentor Embedded Nucleus USB Host: HID, MS, CDC (ACM, ECM), HUB
Device: HID, MS, CDC (ACM), Audio, PHDC (Medical)
Micrium USB Host, USB Device Host: HID, MS, CDC (ACM), Audio, Printer, PHDC (Medical)
Device: HID, MS, CDC (ACM), Audio, PHDC (Medical)
Weston Embedded Cesium RTOS Cs/USBH, Cs/USBD Host: HID, MS, CDC (ACM), Audio, Printer, PHDC (Medical)
37
STM32 – USB solutions details (2/2)
ST USB FS device library Device: HID, MS, CDC (ACM), Audio, DFU
USB PD 3.0, PPS, FRS, TCPCi, TCPM, source, sink, DRP, USB Type-C CC logic
ST STM32Cube – USB-C Power Delivery4
STM32Cube – USBX and Device: HID, MS, CDC (ACM, ECM, RNDIS), Still Image, PTP, PictBridge, DFU, PIMA w/MTP
ST Host: HID, MS, CDC (ACM, ECM), Audio, Printer, HUB, ASIX, PIMA, GSER, PROLIFIC
X-CUBE-AZRTOS – USBX
Thesycon Embedded USB Device Device: Audio, CCID, Mass Storage, network, HID, CDC (ACM)
Zephyr USB device stack Device: Audio (experimental), CDC (ACM, ECM, EEM, RNDIS), MSC, DFU, Bluetooth HCI over USB, HID
Back 38
Middleware – TCP/IP (1/2)
39
Middleware – TCP/IP (2/2)
Often-seen acronyms
ARP Address resolution protocol: Provides physical address from IP address
IP Internet protocol: Primary protocol in Internet Protocol Suite. 2 flavors: IPv4 and IPv6. IPv4 will disappear as it only supports up to 232 addresses, not enough for future needs, while IPv6
supports 2128
6LoWPAN IPv6 over low-power wireless personal area networks: Provides IPv6 connectivity to low-rate wireless networks
TCP Transmission control protocol: Provides reliable, ordered delivery of a stream of bytes
UDP User datagram protocol: Provides unreliable service. Datagrams may arrive in any order, duplicated, or may be missing. Used for time-sensitive applications, when data drop is better than
delay
DHCP Dynamic host configuration protocol: Provides means to allocate IP address dynamically
DNS Domain name system: Translates domain names meaningful to humans into numerical IP ones
FTP File transfer protocol: Provides means to copy files from one host to another
TFTP Trivial file transfer protocol: Similar to FTP, but based on UDP, and simpler (for example, no directory)
SSL/TLS Transport layer security: Secured container for application protocols using cryptography. Example: HTTPS means HTTP over SSL, FTPS, etc.. IPSec applies cryptography at a lower level
than SSL/TLS, making it more universal. However, SSL is widely used.
40
STM32 – TCP/IP solutions (1/2)
Availability
Provider Solution name Model Cost
WB F1 F2 F4 F7 H7 L4/L4+ L5 U5
AWS FreeRTOS+TM TCP2 Source Free N1 Y Y Y Y N1 N1 N1 N1
AWS FreeRTOS+TM UDP2 Source Free N1 Y Y Y Y N1 N1 N1 N1
CMX CMX-TCP/IP Source License N1 Y Y Y Y N1 N1 N1 N1
CMX CMX-MicroNet Source License N1 Y Y Y Y N1 N1 N1 N1
CypherBridge Embedded SSH SDK (uSSH™) Source License N1 N Y Y Y N1 N1 N1 N1
EUROS TCP/IP stack Binaries License N1 Y Y Y Y Y N1 N1 N1
NetX and NetX Duo IPv4/IPv6
Microsoft Source Free N1 Y Y Y Y N1 Y Y Y
and NetX Secure SSL/TLS/DTLS
SecureSockets, SecureShell
eCosCentric Source License N1 Y Y Y Y N1 N1 N1 N1
eCosPro stacks
eForce µNet3 Source License N1 Y Y Y Y N1 N1 N1 N1
EmCraft Linux TCP/IP stack Open source (GPL) Free N N Y Y Y N1 N N N
Green Hills µ-velOSity TCP/IP v4/v6 Source License N1 Y Y Y Y N1 N1 N1 N1
Wittenstein - High
CONNECT TCP Source License N1 Y Y Y Y N1 N1 N1 N1
Integrity Systems
HCC MISRA HCC-TCP/IP v4/v6 Source License N2 Y Y Y Y N2 Y N2 N2
PPP, ARP, IGMP, ICMP, IPv4, UDP, TCP, DHCP(c), DNS, FTP(cs), POP3(c), SMTP, SNMP, SNTP, Telnet(s), SSL/TLS, TFTP (c),
CMX CMX-MicroNet HTTP(s)
SSH 2.0, Configurable DSS and RSA asymmetric session, Configurable crypto w ith 3DES AES and blow fish support, SCP, SFTP
CypherBridge Embedded SSH SDK (uSSH™)
PPP, PPPoE, ARP, IGMP, ICMP, IPv4, IPv6, IPSec/IKE, UDP, TCP, DNS, DHCP(cs), FTP(cs), NAT, POP3(c), SMTP, SNMP, SNTP,
EUROS TCP/IP stack Telnet(s), SSL/TLS, TFTP, HTTP(cs), SFTP, FTPS, SSH
PPP, ARP, IGMP, ICMP, IPv4, IPv6, IPSec/IKE, UDP, TCP, DNS, DHCP(c), FTP(cs), NAT, POP3(c), SMTP, SNMP, SNTP, Telnet(s),
Microsoft NetX and NetX Duo IPv4/IPv6 TFTP, HTTP(s)
SSH2
eCosCentric SecureSockets
SSL/TLS
eCosCentric SecureShell
PPP, ARP, ICMP, UDP, TCP, IPv4, IPv6, DHCP, BOOTP, SMTP, TFTP, FTP(c+s), HTTP, SNMP, NTP, mDNS, Bonjour
eCosCentric eCosPro stacks
PPP, ARP, IGMP, ICMP, IPv4, IPv6, UDP, TCP, DNS, DHCP(c), FTP(s), HTTP(cs), TFTP, SNMP, SNTP, Telnet(s), POP3(c), SMTP,
eForce µNet3 SSL/TLS
PPP, DNS, NAT, SSH (cs), DHCP (cs), SNMP (cs), Telnet (cs), FTP (cs), HTTP (cs)
EmCraft Linux TCP/IP stack
IPv4, IPv6, UDP, TCP, DNS, DHCP(cs), FTP(cs), SMTP, TFTP(s), SLIP, PPP, PPPoE, IGMP, IPSec/IKE, NAT, POP3(c), SNMP, SNTP,
HCC MISRA HCC-TCP/IP v4/v6 Telnet(s), RTP/RTCP, EAP, EST, ESMTP, SSH, MLDv2, NDP, MQTT
TCP, UDP, ARP, ICMP, IPv4, DNS, DHCP, FTP, TFTP, HTTP, LLMNR,
Wittenstein - High Integrity
CONNECT TCP NBNS, Auto-IP, standard sockets or callback interface
Systems
(c): Client
(s): Server
43
(cs): Client and Server
STM32 – TCP/IP solution details (2/3)
Provider Solution name Details
ARP, ICMP, IGMP, IPv4, IPv6, IPv4/6, UDP, TCP, DNS, DHCP(c),
Green Hills µ-velOSity TCP/IP v4/v6
SLIP, PPP, ARP, IPv4, ICMP, UDP, TCP, DNS, DHCP(c), FTP(s), SMTP, SNMP, Telnet(s), TFTP(s), HTTP(s)
Keil / arm MDK-ARM TCPNET
PPP, ARP, ICMP, IPv4, UDP, TCP, DHCP(c), IPv6
SICS LwIP
PPP, PPPoE, ARP, IGMP, ICMP, IPv4, IPv6, IPSec/IKE, UDP, TCP, DHCP(c), FTP(cs), NAT, SNMP, SNTP, Telnet(cs), SSL/TLS, TFTP (cs),
Mentor Embedded Nucleus Kernel HTTP(cs)
ARP, ICMP, IPv4, UDP, TCP, DNS, DHCP(c), FTP(cs), SMTP, POP3(c), SNTP, Telnet(s), SSL/TLS, TFTP, HTTP(s)
Micrium µC/TCP-IP (and µC/SSL)
ARP, ICMP, IPv4, UDP, TCP, DNS, DHCP(c), FTP(cs), SMTP, POP3(c), SNTP, Telnet(s), SSL/TLS, TFTP, HTTP(s)
Weston
Cesium RTOS Cs/NET
Embedded
SLIP, PPP, PPPoE, ARP, IGMP, ICMP, IPv4, IPv6, IPv4/6, UDP, TCP, DNS, mDNS, DHCP(cs), FTP(cs), NAT, POP3(c), SMTP, SNMP,
Micro Digital smxNS and smxNS6 (Dual IPv6/v4) SNTP, Telnet(s), SSL/TLS, TFTP, HTTP(cs), SSH
Dual stack (IPv4 and/or IPv6), Built-in support for multiple netw ork interfaces, BSD style socket API, Blocking/non-blocking socket, operation
and event-driven functions (select and poll), Efficient data transfer (zero copy), Well-crafted TCP module w ith selective ACK and congestion
control, Raw socket interface, Multicast support (IGMPv2 and MLDv1), IP fragmentation and reassembly, Flexible memory footprint, Portable
Oryx Embedded CycloneTCP architecture, Host name resolution (DNS client), DHCP and SLAAC auto-configuration, SMTP client, FTP client and server, TFTP client and
server, Web server with SSI and CGI scripting, HTTP/2 client, MQTT and MQTT-SN clients, CoAP client, SNMPv1/v2c/v3 agent, WebSocket
client and server
(c): Client
(s): Server
(cs): Client and Server
44
STM32 – TCP/IP solution details (3/3)
Provider Solution name Details
PPP, PPPoE, ARP, IGMP, ICMP, IPv4, IPv6, IPSec/IKE, UDP, TCP, DNS, DHCP(cs), FTP(cs), NAT, POP3(c), SMTP, SNMP, SNTP,
Quadros RTXC Quadnet Telnet(s), SSL/TLS, TFTP, HTTP(cs), UPnP, Prioritized Packets Handling
PPP, ARP, ICMP, IGMP, IPv4, IPv6, IPv4/6, 6Low Pan, IPSec, UDP, TCP, DNS, DHCP(cs), SMTP(c), SNMP, Telnet(s), TFTP(cs), HTTP(cs),
Rowebots Unison TCP-IP/v4-v6 NAT
PPP, PPPoE, ARP, ICMP, IGMP, IPv4, UDP, TCP, DNS, DHCP(cs), FTP(cs), SMTP(c), SNTP(c), Telnet(s), TFTP(cs), HTTP(s), PTP IEEE
SEGGER embOS/IP 1588
IPv6, 6LoWPAN
SICS Contiki/uIP6
PPP, ARP, ICMP, IPv4, UDP, TCP, DHCP(c), IPv6
ST STM32Cube - LwIP
STM32Cube – NetX / NetX duo PPP, ARP, IGMP, ICMP, IPv4, IPv6, IPSec/IKE, UDP, TCP, DNS, DHCP(c), FTP(cs), NAT, POP3(c), SMTP, SNMP, SNTP, Telnet(s), TFTP,
ST HTTP(s)
X-CUBE-AZRTOS – NetX / NetX duo
IPv4, IPv6 (dual stack support), ICMPv4, ICMPv6, UDP, TCP, HTTP, MQTT, CoAP, LWM2W, RPL, DNS/ 6LoWPAN
Zephyr Zephyr Networking
(c): Client
(s): Server
(cs): Client and Server Back 45
Middleware – 2.4GHz – Bluetooth
BLE is a wireless communication technology for exchanging data over
short distances, typically used in the mobile world
47
STM32 – Bluetooth solutions
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
arm Mbed BLE4 Source Free Y N N N N N N N N N N N Y N N
Binaries or Source License and/or
A&W PhoneLink N N N Y Y N N Y Y Y1 N N N N N
royalties
Open Source
Zephyr Bluetooth Free N N N Y N Y N Y N N N N Y N N
(Apache 2.0)
48
STM32 – Bluetooth solution details
Provider Solution name Details
BT4.0, BT4.1
ST X-CUBE-BLE1 All profiles supported
BT 5.0
PTS Profiles/Services:
Client: Heart Rate Profile (HRP): Collector, Location and Navigation (LNP), Time Profile (TIP), Weight Scale Profile (WSP), Alert Notification
Profile (ANP), Health thermometer Profile (HTP): Collector, Phone Alert Status Profile (PASP), Find Me Profile (FMP), Proximity Profile (Px
Monitor, PXP), HID Over GATT Profile (HOGP): Boot Host, Report Host
Server: Heart Rate Profile (HRP): Heart Rate Sensor, Device Information Service (DIS), Link Loss (LLS), Battery Service (BAS), Tx Power
ST STM32Cube – BLE Service (TPS),
Scan Parameters (ScPP), Location and Navigation (LNS), Immediate Alert (IAS), Next DST Change Service (NDCS), Reference Time Update
Service (RTUS), Current Time Service (CTS), Weight Scale Profile (WSP), Alert Notification Profile (ANP), Environmental Sensing (ESS), Blood
Pressure Profile (BLP), Bond Management Service (BMS), Cycling Power Profile (CPP), Cycling Speed and Cadence Profile (CSCP),Health
thermometer Profile (HTP): Thermometer, Automation IO Service (AIOS), HTTP Proxy Service (HPS), Phone Alert Service (PASS), Find Me
Profile (FMP + IAS), Environmental Sensing (ESS) Proximity Profile (Px Reporter, PXP), Running and Speed Cadence Service (RSCS), HID
Service (HIDS), Glucose Service (GLS).
49
STM32 – Bluetooth solution details
Provider Solution name Details
More…
arm Mbed BLE
SEARAN dotStack BT2.1+EDR, BT4.0, BT4.1, BT 4.2, and 5.0 ready. Single and dual mode. Apps on iOS and Android
BLE (GATT) - ANP/ANS, FMP, HIDS, HOGP, PASP/PASS, PXP, TIP, BAS, DIS, IAS, LLS, TPS, ANCS, BLP/BLS, GP, HTP, HRP/HRS
BR/EDR - SPP, HID, PAN, MAP, FTP, HSP, HFP, A2DP, AVRCP, PBAP, iAP, HCRP
Back 50
Middleware – 2.4GHz – Thread
.
Solutions with STM32WB
51
STM32 – Thread solutions
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
1/ Certified OpenThread binary stack, BLE/OpenThread concurent stack included in STM32Cube MCU package (\Middlewares\ST folder)
52
Middleware – 2.4GHz – Zigbee
53
STM32 – Zigbee solutions
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
1/ Certified Zigbee stack, BLE/Zigbee concurent stack included in STM32Cube MCU package (\Middlewares\ST folder)
54
Middleware – 2.4GHz – Wi-Fi™
55
STM32 – Wi-Fi™ solutions
Availability
Provider Solution name Model Cost
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
arm Mbed Wifi5 Source Free N N N N N N N Y N N N N Y N N
Binaries or License and/or
Clarinox ClarinoxWiFi6 N N N N N N N Y Y Y Y Y Y N N
Source Royalties
STM32 Connectivity
Infineon Source Free N N N N N N N N Y Y N N Y Y Y
Expansion Pack
Binaries or
Innophase I-CUBE-T2-STW8 License N N7 N7 N7 N7 N7 N7 N7 N7 N7 N7 N7 Y N7 N7
Source
57
NFC STM32 – LoRa® solution
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
I-CUBE-
ST Source Free N.A. N N1 N1 N1 N1 N1 N1 N1 N1 N1 Y Y Y N1 N1
LRWAN2
STM32Cube -
ST Source Free N Y N N N N N N N N N N N N N N
LoRaWAN
Back 58
Middleware – Sub-1GHz – sigfox™
59
NFC STM32 – sigfox™ solution
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
STM32Cube -
ST Source Free N Y N N N N N N N N N N N N N N
Sigfox
Back 60
Middleware – Sub-1GHz – others
• Sub 1GHz RF operates in the ISM spectrum bands below Sub 1GHz – typically in
the 769 – 935 MHz , 315 MHz and the 468 MHz frequency range. This spectrum
band below 1GHz is particularly useful for RF IOT applications
61
STM32 – Sub-1GHz – others
Availability
Provider Solution name Model Cost
W
WB F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
L
STM32Cube –
ST Source Free Y N N N N N N N N N N N N N N N
802.15.44
Back 62
Middleware & drivers – NFC
• Operating in the 13.56 MHz (RFID) HF band, it is based on ISO/IEC 14443 & ISO/IEC 15693 RFID
standards, and regulated by NFC Forum industry association
• Solutions with STM32 + ST25 NFC / RFID Tag & Reader ICs
• NFC / RFID reader ICs
• ST25R3911B high performance HF Reader/NFC initiator (ISO14443, ISO15693, FeliCa) with 1.4 W output power, supporting
VHBR, capacitive sensitive wake up and Automatic Antenna Tuning (AAT)
• Other product variant: ST25R3912, ST25R3913, ST25R3914, ST25R3915 and ST25R3916
• CR95HF entry level HF Reader/ NFC Initiator (ISO14443, ISO15693, FeliCa)
• Dynamic NFC tag Ics
• ST25DV dynamic RFID ISO15693 – NFC Type 5 Tag Ics
• M24LR dynamic RFID ISO15693 / NFC compatible Tag ICs (M24LR04 is NFC Forum Type 5)
• M24SR dynamic RFID ISO14443 type A – NFC Type 4 Tag ICs
63
NFC STM32 – NFC solutions
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Back 64
Middleware & drivers – Cellular framework
65
STM32 – Cellular framework
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
32L496Discovery L4 Sequans/Sequans GM01Q/ GMS01Q GM01Q-STMOD/ GMS01Q- With SIM from Orange for GMS01Q Now
STMOD
B-L4S5I-IOT01A L4+ Quectel/Qualcomm BG96 w/ X-NUCLEO-STMODA1 with Can re-use eSIM on Now
MB1329
B-L4S5I-IOT01A w/ X- L4+ Sequans/Sequans GM01Q w/ X-NUCLEO-STMODA1 with Modem without eSIM Now
NUCLEO-STMODA1 GM01Q-STMOD
Back 66
Middleware – Safety
• Safety targets protection of people and equipment from danger and harm,
through a set of counter-measures ensuring defined targets
Often-seen acronyms
ClassB The IEC 60730 safety standard defines the test and diagnostic methods that ensure the safe operation of embedded control hard ware and software for household appliances.
The IEC 60730 standard category Class B prevents unsafe operation of the controlled equipment.
SIL Safety Integrity Level (SIL) is defined by the industry standard IEC 61508 as a relative level of risk -reduction provided by a safety function, or to specify a target level of risk
reduction.
ASIL ASIL is a risk classification scheme defined by the ISO 26262 - Functional Safety for Road Vehicles standard. This is an adaptation of the Safety Integrity Level used in IEC 61508
for the automotive industry.
67
STM32 – Safety solutions
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
68
STM8 – Safety solutions
Availability
Provider Solution name Model Cost STM8L
STM8S STM8AF
STM8AL
ST STM8-SafeCLASSB Source Free Y Y Y
ST STM8A-SafeASIL1 Document Free N Y Y
Back 69
Middleware – graphical user interface
.
ST’s MCUs can drive displays through serial or parallel interfaces
Alpha blending Alpha blending is the process of combining a translucent foreground color with a background color, thereby producing a new bl ended color.
Palette Technique to lower image memory size by storing the set of colors used in a table and using this table for each pixel
Commonly used method of lossy compression for digital image. The degree of compression can be adjusted, allowing a trade -off between storage
JPEG size and image quality. JPEG typically achieves 10:1 compression with little perceptible loss in image quality.
Color model in which red, green and blue are merged to reproduce a broad array of colors. “A” field in ARGB format handles transparency
RGB / ARGB information.
Widgets Element of a graphical user interface that can be changed by the user (such as text box, radio button)
70
STM32 – graphical user interface solutions (1/2)
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
ST STemWin Binaries Free N N N N Y Y Y N Y Y Y N Y N N N
71
STM32 – graphical user interface solutions (2/2)
Solution Availability
Provider Model Cost
name WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Korulab Koru Binaries License N N N N N N N N Y Y Y N N Y N
Open Source
Micrium µC/GUI Free N N Y N Y Y Y N Y Y Y Y Y N N
(Apache 2.0)
Micro Digital PEG Source License N1 N1 N1 N1 Y Y Y N1 Y Y Y N1 N1 N1 N1
QT QT Source License N1 N1 N1 N1 N1 N1 N1 N1 Y Y N1 N1 N1 Y N1
Rowebots emWin GUI Source License N N N N Y Y Y N Y Y Y N N N N
SEGGER emWin Source License N1 N1 Y Y Y Y Y N Y Y Y Y Y Y N
Embedded
Tara Systems Binaries / Source License N N N N N N N N Y Y Y N N Y N
Wizard
Back 72
Middleware – touch sensing
Capacitive touch sensing is an electrical cost-efficient technology, replacing
conventional mechanical switches to detect user actions, to build modern GUI look
and feel.
Projected capacitance The capacitance between two sensing electrodes is modified when the finger gets close to them.
Resistor-capacitor acquisition for surface capacitance only. It consists in measuring the charge and discharge time duration of a RC
RC acquisition cell made of the electrode capacitance and a load resistor.
Charge transfer acquisition for surface capacitance only. It consists in measuring the duration for charging the electrode capacitance
CT acquisition and transferring part of the accumulated charge into a sampling capacitor. The CT acquisition is more robust than the RC one.
73
STM32 – touch-sensing solutions
Availability
Provider Solution name Acquisition Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
74
STM8 – touch-sensing solutions
Availability
Provider Solution name Acquisition Model Cost
STM8S / STM8AF STM8L / STM8AL
ST STM8 Touch Lib RC + CT Source Free Y1 Y1
Back 75
Middleware – artificial neural networks
Thanks to a wide set of Artificial Intelligence (AI) solutions from ST you now have the possibility to
map and run Machine Learning (ML) such as Artificial Neural Networks (ANN) on the broad STM32
microcontroller portfolio. STM32Cube.AI is an extension pack of the widely used STM32CubeMX
configuration and code generation tool converting and optimizing pre-trained ANN models on
STM32 Arm® Cortex®-M-based microcontrollers
Often-seen acronyms
AI Artificial Intelligence
ML Machine Learning
76
STM32 – artificial neural networks
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
1/ Generation of an STM32-optimized library from pre-trained Neural Network models. Support various Deep Learning frameworks suc h as Keras, TensorFlow™ Lite and suppport of
all frameworks that can export to the ONNX standard format such as PyTorch™, Microsoft® Cognitive Toolkit, MATLAB® and more.
2/ STM32Cube function pack for ultra-low power IoT node with artificial intelligence (AI) application based on audio and motion sensing.
3/ STM32Cube function pack featuring examples of computer vision applications based on Convolutional Neural Network (CNN).
4/ STM32Cube function pack featuring examples of face detection and face recognition with on-board enrollment.
5/ STM32Cube function pack for ultra-low power STM32 with artificial intelligence (AI) monitoring application based on a wide range of sensors.
6/ Available on STM32Cube, so porting is very easy.
7/ Demo and code example available on demand.
Back 77
STM32 – instrumentation
Back
78
Connectors to cloud providers
STM32 acts as an end device securely connected to cloud services
providers
• Connectors to cloud provider (Amazon AWS, Microsoft Azure, IBM Watson…)
• Configuration of the connectivity interfaces (WiFi, Ethernet…)
STM32Cube Expansion • Connection to the Internet and the cloud provider servers
Packages • publication of messages
• Subscription over a variety of connectivity protocols (MQTT,
Amazon AWS, Google Cloud, IBM Watson, Microsoft Azure HTTPS…)
Exosite, Grovestream, AvSystem, Litmus Automation, Ubidots
• Examples of end device applications using ST sensors and RFID/NFC tag and connecting to
cloud providers
• Temperature and humidity sensor (HTS221)
STM32 ODE Functions • Pressure sensor (LPS25HB)
packs • Motion sensors (LIS3MDL, LSM303AGR, LSM6DS0, LSM6DSL, IIS2DH)
• Writing/reading the RFID/NFC tag (M24SR64-Y)
Amazon AWS, IBM Watson, Microsoft Azure
79
STM32 - connectors to cloud providers
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
X-CUBE-CLD-GEN1 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 Y N3 N3
X-CUBE-AWS2 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 Y N3 N3
X-CUBE-AZURE2 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 Y N3 N3
X-CUBE-WATSON Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 Y N3 N3
ST
X-CUBE-GCP Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 Y N3 N3
FP-CLD-AWS1 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y N3 N3 N3 N3 N3 N3 N3
FP-CLD-AZURE1 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y N3 N3 N3 N3 Y N3 N3
FP-CLD-WASTON1 Source Free N3 N3 N3 N3 N3 N3 N3 N3 Y N3 N3 N3 N3 N3 N3 N3
1/ Supports B-L475E-IOT01A, 32F413HDISCOVERY, 32F769IDISCOVERY, P-L496G-CELL01 and P-L496G-CELL02. Examples with Exosite,
Grovestream, AvSystem, Litmus Automation and Ubidots cloud providers
2/ Supports B-L475E-IOT01A, 32F413HDISCOVERY, 32F769IDISCOVERY and P-L496G-CELL02. Includes Secure Firmware Update (SBSFU), integration
with X-CUBE-CELLULAR. May be connected to a provided AWS/AZURE web dashboard.
3/ Available on STM32Cube, so porting is very easy
80
STM32 - connectors to cloud providers
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
AVSystem Anjay LwM2M SDK Open source Free N N N N N N N N N N N N N Y N N
AWS Amazon FreeRTOS 1 Source Free2 N N N N N N N N N N Y N N Y N N
CypherBridge uMQTT Toolkit Source License N N N N N N N N Y Y N N N Y N N
GIZWITS I-CUBE-GIZWITS Source Free N N N N N N N N Y Y N N N Y N N
IoTerop IOWA Binary, Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
Azure IoT Middleware
Microsoft Source License N4 N4 N4 N4 N4 N4 N4 N4 N4 Y N4 N4 N4 Y N4 N4
for Azure RTOS
Keil / arm IoT Client3 Source License N4 N4 Y N4 Y Y Y N4 Y Y Y Y Y Y N4 N4
1/ “Connect to AWS Iot” and “Connect to AWS Greengrass” packages are available for STM32L4/L4+Discovery kit IoT node
2/ MIT license
3/ Amazon AWS, Google Cloud, IBM Watson, Microsoft Azure
4/ Please contact supplier
Back 81
Application field – audio
AAC, WMA Music codecs with patents. Royalties need to be paid to patent owners.
G726 ADPCM (adaptive differential pulse code modulation): Simple compression of PCM data
82
STM32 – audio solutions
Availability
Provider Solution name Model Cost F105
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
F107
ST ADPCM Vocoder, Speex Vocoder Source Free N1 N1 N N Y N1 N1 N1 N1 N1 N N N Y N1 N N
1/ The library will run immediately on these targets, even if not ported officially.
2/ Only available by request to local sales for companies being a licensee of Apple MFi (Made for iPod) program. 83
3/ Available on demand. Ask your local ST Sales office.
STM32 – audio solutions
Availability
Provider Solution name Model Cost F105
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
F107
STM32Cube – PDM2PCM
ST Source Free N5 N5 N5 N5 N5 N5 Y N5 N5 Y Y Y N5 N5 N5 N5 N5
library 6
DSPConcept /
ST Audio Weaver free edition Binaries License N N N N N N N N N Y Y Y N N Y Y Y
ST
1/ The library will run immediately on these targets, even if not ported officially.
2/ Available on demand. Ask your local ST Sales office.
3/ Audio processing components (BAM, BIQ, CDC, GAM, GREQ, HPV,SRC236, SRC441, OMNI2, SVC, SDR,SMR), MP3 decoder (Cortex-M7/M4/M3), MP3
encoder (Cortex-M3/M4)
4/ Framework for the Alexa Voice Service (AVS)
5/ Available on STM32Cube, so porting is very easy
6/ Included in STM32Cube MCU packages (\Middlewares\ST folder)
7/ Available on demand. Ask your local ST Sales office. 84
Focus – STM32 audio post-processing (1/2)
Flash
Modules Names Quality Measured MHz Static RAM Dynamic RAM Remarks
Memory
Standard 13.7 MHz 3204 Bytes 232 Bytes 3228 Bytes Sampling Rate Conversion
SRC441
High Quality 20.4 MHz 3894 Bytes 360 Bytes 3676 Bytes from 44.1 to 48 kHz
Digital Addressable Lighting Interface (DALI) is a trademark for network-based systems that control lighting in building automation. The underlying technology was established by a
consortium of lighting equipment manufacturers as a successor for 0-10 V lighting control systems, and as an open standard alternative to Digital Signal Interface (DSI), on which it is
DALI based. DALI is specified by technical standards IEC 62386 and IEC 60929. Standards conformance ensures that equipment from di fferent manufacturers will interoperate. The DALI
trademark is allowed on devices that comply with the current standards when manufactured.
IEC 62056 is a set of standards for Electricity metering data exchange by International Electrotechnical Commission. The IEC 62056 standards are the International Standard
versions of the DLMS/COSEM specification. DLMS or Device Language Message Specification (originally Distribution Line Message Specification[1]), is the suite of standards
DLMS / COSEM developed and maintained by the DLMS User Association and has been adopted by the IEC TC13 WG14 into the IEC 62056 series of standards. COSEM or Companion Specification
for Energy Metering, includes a set of specifications that defines the Transport and Application Layers of the DLMS protocol
DMX512 (Digital Multiplex) is a standard for digital communication networks that are commonly used to control stage lighting and effects. It was originally intended as a standardized
DMX-512 method for controlling light dimmers, which, prior to DMX512, had employed various incompatible proprietary protocols. It soo n became the primary method for linking controllers
(such as a lighting console) to dimmers and special effects devices such as fog machines and intelligent lights
KNX is a standardized (EN 50090, ISO/IEC 14543), OSI-based network communications protocol for building automation. KNX is the s uccessor to, and convergence of, three
KNX previous standards: the European Home Systems Protocol (EHS), BatiBUS, and the European Installation Bus (EIB or Instabus)
87
STM32 – building automation and control
Availability
Provider Solution name Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
BACnet stack Source License
MBS N3 N3 Y N3 Y Y Y Y Y Y Y Y Y Y Y Y
embedded
Softdel BACnet Stack Source License N3 N3 Y N3 Y Y Y Y Y Y Y Y Y Y N3 N3
ST DALI2 Source Free N3 N3 N N3 Y N N N N N N N Y N N N
MBS DALI 2 stack Source License N3 N3 Y Y Y Y Y Y Y Y Y Y Y Y Y Y
Andrea
DLMS / COSEM Binaries License N3 N3 N3 N3 Y Y N3 N3 Y N3 N3 N3 Y N3 N3 N3
Informatique
ST DMX-5124 Source Free N1 N1 N1 N1 Y N1 N1 N1 N1 N1 N1 N1 N1 N1 N1 N1
Softdel DMX-512 Stack Source License N3 N3 Y Y Y Y Y Y Y Y Y Y Y Y Y Y
TAPKO KAIstack KNX Binaries / source License + royalties N3 N3 Y Y Y Y Y Y Y Y Y N3 N3 N3 N3 N3
Weinzierl KNX Source License N3 N3 Y Y Y N3 N3 N3 N3 N3 N3 N3 Y N3 N3 N3
1/ Can be ported
2/ Provided on demand to sales office, supporting DALI slave only
3/ Please contact supplier
4/ Provided on demand to sales office.
88
STM8 – building automation and control
Availability
Provider Solution name Application Model Cost
STM8S / STM8L /
STM8AF STM8AL
ST DALI Lighting Source Free Y N1
TAPKO KAIstack KNX Building automation Binaries / source License N Y
Back 89
Application field – industrial protocols
Industrial market needs are very fragmented in terms of communication protocols.
Many different protocols are available for different target applications in factory
automation
Supervisor, Ethernet
information
Non real-time
(configuration,
diagnostic) TCP / UDP
TCP
Automation,
Fieldbus (RS485, CAN)
Control
Prioritization
(PLC)
RT
Real-time
Field
(Motion control , IRT scheduling
drive)
Sensor/actuator
Lower
latency
90
STM32 – industrial protocols (1/8)
Availability
Provider Solution name Application Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Acontis EC-Master Factory Automation Source License N N N N N N N N Y N N N N N
AX58100
STM32F303RE
ASIX Electronics Factory Automation Source Free N N N N Y N N N Y N N N N N
Motor Control
Demo Kit5
CMX CMX-CANopen Automation, medical Source License N N Y Y Y N1 Y Y N1 N N N1 N1 N1
Cypherbridge uMODBUS Factory Automation Source License Y2 N N N N N Y3 Y3 N N N N N N
eCosPro-CAN Factory Automation Source License N N Y Y Y N1 Y Y N1 N N Y N1 N1
91
STM32 – industrial protocols (2/8)
Availability
Provider Solution name Application Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
CANopen Automation, medical Source License Y Y Y Y Y Y Y Y Y N N Y Y Y
I-CUBE-CANOPEN
Automation, medical Source License N Y N N N Y N N Y N N N Y Y
emotas
J1939 Commercial vehicles Source License Y Y Y Y Y Y Y Y Y N N Y Y Y
EnergyBus Commercial vehicles Source License Y Y Y Y Y Y Y Y Y N N Y Y Y
EtherCAT1 Automation, medical Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y
CANOpen Automation Binaries License Y N Y Y Y N Y Y Y Y Y Y N N
PROFINET Automation Binaries License Y N Y Y Y N Y Y Y Y Y Y N Y
Modbus Automation Binaries License Y N Y Y Y N Y Y Y Y Y Y N Y
93
STM32 – industrial protocols (4/8)
Availability
Provider Solution name Application Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
I-CUBE-NETX +
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
PROFINET RT/IRT IO-Device (1)
I-CUBE-NETX +
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
EtherCAT Slave (1)
I-CUBE-NETX + Industrial
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
Ethernet/IP Adapter (1) real-time
I-CUBE-NETX + Ethernet Source +
Hilscher License N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
sercos Slave (1) Binary (2)
I-CUBE-NETX + Factory
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
POWERLINK Controlled Node (1) automation
I-CUBE-NETX +
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
Varan Client (1)
I-CUBE-NETX +
N3 N3 N3 N3 N3 N3 Y Y N3 N3 N3 N3 N3 N3
Open ModbusTCP (1)
94
STM32 – industrial protocols (5/8)
Solution Availability
Provider Application Model Cost
name F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
Factory
Kalycito OPC UA Open Source Free N N N N N N2 Y Y Y N N N2 N2 N2
automation
Flex (OPC UA Factory Source /
Matrikon License N N N Y N N2 Y Y Y N N N2 N2 N2
SDK) automation Binaries
Process
MESCO HART Slave Source Lic. + Royal. Y Y Y Y Y N2 Y N2 N2 Y Y N2 N2 N2
automation
Automation,
CANopen Source License Y Y Y Y Y Y Y Y Y N N Y N2 N2
medical
Commercial
J1939 Source License Y Y Y Y Y Y Y Y Y N N Y N2 N2
vehicles
MicroControl
Factory
EtherCAT1 Source License Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1 Y1
automation
Factory
PROFINET Source License N N Y Y N N Y Y Y N N N N N
automation
Factory
µC/CAN Open Source Free N N Y Y N N Y N N N N N N N
automation
Micrium
Factory
µC/Modbus Open Source Free Y Y Y Y Y N2 Y Y Y Y Y Y N2 N2
automation
1/ Requires external hardware.
2/ Please contact supplier.
95
STM32 – industrial protocols (6/8)
Availability
Provider Solution name Application Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
CC-Link IE TSN
Factory
Mitsubishi Remote Station Source License N N N N N N Y N N N N N N N
automation
SDK
Factory
CANopen Source License Y Y Y Y Y N2 Y Y Y N N Y N2 N2
automation
EtherCAT1 Factory automation Source License Y Y Y Y Y N2 Y Y Y N N Y N2 N2
PROFINET Factory automation Source License N N N N N N Y Y Y N N N N N
96
STM32 – industrial protocols (7/8)
Solution Availability
Provider Application Model Cost
name F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
IO-Link Device Factory automation Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y
TEConcept
IO-Link Master Factory automation Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y
IO-Link Device Factory automation Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y
IO-Link Master Factory automation Source License N N Y Y Y Y Y Y Y N N Y Y Y
Profibus DP Factory automation Source License Y Y Y Y Y Y Y Y Y Y Y Y Y Y
TMGTE
License +
Profinet Factory automation Source N N N Y N Y Y Y Y N N N N N
royalties
License +
Ethernet/IP Factory automation Source N N N Y N Y Y Y Y N N N N N
royalties
UNISON
Rowebots Factory automation Source License N N Y Y Y Y Y Y Y N Y Y Y Y
Modbus
97
STM8 – industrial protocols
Availability
Provider Solution name Application Model Cost
STM8S / STM8L /
STM8AF STM8AL
SEGGER emModbus Factory automation Source License Y Y
TEConcept IO-Link Device Factory automation Source License Y Y
TMGTE IO-Link Device Factory automation Source License Y Y
Back 98
Application field – motor control
• Control your 3-phase motor with top performance
• STM32 microcontrollers offer the performance of the industry-standard Arm® Cortex®-M cores running either Vector control or
FOC modes, widely used in high-performance drives for air conditioning, home appliances, drones, building and industrial
automation, medical and e-bike applications. STM32 MC SDK (motor control software development kit) firmware (X-CUBE-
MCSDK and X-CUBE-MCSDK-FUL) includes the Permanent-magnet synchronous motor (PMSM) firmware library (FOC control)
and the STM32 Motor Control Workbench (to configure the FOC firmware library parameters), with its graphical user interface
(GUI). STM32 Motor Control Workbench is PC software that reduces the design effort and time needed for the STM32 PMSM
FOC firmware configuration. The user generates a project file through the GUI and initializes the library according to the
application needs. Some of the variables of the algorithm being used can be monitored and changed in real time.
Often-seen acronyms
BLDC Brushless DC: permanent magnet motor with trapezoidal shaped B-EMF, FOC applicable
PMSM Permanent magnet synchronous motor: with sinusoidal shaped B-EMF, FOC applicable
ACIM AC induction motor: type of motor, FOC applicable
FOC Field-oriented control: Mathematical technique used to achieve decoupled control of the flux and torque in a 3 -phase motor.
High Frequency Injection: algorithm for very low speed and fast acceleration (air con, fridge) and increased efficiency for low- or zero-speed, full
torque applications (washing machines, factory automation)
HFI, MTPA
• “Maximum Torque Per Ampere” (MTPA): optimizes the motor torque for each load and increases the efficiency,
• “Feed Forward”: improves the current control at high speed.
99
STM32 – motor control – PMSM
Availability
Provider Solution name Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/ L4+ L5 U5
STM32 Motor Control Software X-CUBE-MCSDK
Development Kit (MCSDK) Source code except
Software development kit including: CORDIC, MTPA,…
• Motor control library (sensors, algorithms…),
Single or Dual control
ST X-CUBE-MCSDK- Free Y1 Y Y N Y Y Y Y Y2 N N Y N N
•PMSM library for FOC control
• Motor control application (implementation of
FUL
library, high-level MC commands) Full source code
• ST Motor Control Workbench software tool (Registration/approval
• Demo projects and utilities required)
100
STM32 – motor control - BLDC
Availability
Provider Solution name Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
ST Bipolar stepper motors driving Source Free N1 N1 Y N1 N1 N1 N1 N1 N1 N1 N1 N1 N1 N1
STSW-IHM040V1
STM32 6-step FW example (STM32F100)
ST Source Free Y N Y N N N N N N N N N N N
STSW-IHM043V1
STM32 6-step FW example (STM32F0)
1/ Can be ported
2/ Available on STM32Cube, so porting is very easy
101
STM32 – motor control - stepper
Availability
Provider Solution name Model Cost
F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4 /L4+ L5 U5
STSW-STM32018
ST Driving bipolar stepper motors using STM32F103 Source Free N N Y N N N N N N N N N N N
microcontroller
X-CUBE-SPN1
Stepper bipolar motor driver software expansion for Source Free Y N1 N1 N1 Y N1 Y N1 N1 Y N1 N1 N1 N1
STM32Cube
X-CUBE-SPN2
Two axes stepper motor driver software expansion for Source Free Y N1 N1 N1 Y N1 Y N1 N1 N1 N1 N1 N1 N1
STM32Cube
X-CUBE-SPN3
ST High-power stepper motor driver software expansion for Source Free Y N1 N1 N1 Y N1 Y N1 N1 Y N1 N1 N1 N1
STM32Cube
X-CUBE-SPN4
Dual-brush DC motor driver software expansion for Source Free N1 N1 N1 N1 N1 N1 Y N1 N1 Y N1 N1 N1 N1
STM32Cube
X-CUBE-SPN5
Stepper bipolar motor driver software expansion for Source Free N1 N1 N1 N1 Y N1 Y N1 N1 Y N1 N1 N1 N1
STM32Cube
102
STM8 – motor control
Availability
Provider Solution name Model Cost STM8S / STM8L /
STM8AF STM8AL
STSW-STM8020
STM8S and STM8A BLDC and ACIM motor control firmware library
ST Source Free Y N
• Scalar control of induction motor control
• Scalar control (6-step) of permanent magnet brushless motors (BLDC and PMSM)
Back
103
Application field – automotive
Often-seen acronyms
J1939 Vehicle standard used for communication and diagnostics with vehicle components (e.g. agricultural machines).
J2602 USA variant of LIN
Local interconnect network: The LIN bus is a small and slow network system that is used as a cheap sub-network of a CAN bus to integrate intelligent
LIN sensor devices or actuators in today’s cars. The LIN specification is enforced by the LIN-consortium, with the first exploited version being 1.1, released in
1999. Since then, the specification has evolved to version 2.1 and 2.2 to meet current networking needs. Bit rates vary withi n the range of 1 to 20 Kbit/s.
Controller-area network (CAN or CAN-bus): This is a standard vehicle bus designed to allow microcontrollers and devices to communicate with each other
CAN
within a vehicle without a host computer. Possible bit rates from 125 Kbit/s up to 1 Mbit/s.
ASIL ASIL is a risk classification scheme defined by the ISO 26262 - Functional Safety for Road Vehicles standard. This is an adaptation of the Safety Integrity
Level used in IEC 61508 for the automotive industry.
104
STM8 – automotive solutions
Availability
Provider Solution name Model Cost
STM8AF STM8AL
J2602 Driver Source Free Y N1
105
STM32 – CAN / LIN solutions
• Warning: STM32 devices are not qualified for automotive, and thus must not be
used in automotive application.
Solution Availability
Provider Model Cost
name F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4/L4+ L5 U5
IHR Gmbh LIN 2.1 Driver Source License N1 N1 Y N1 N1 N1 Y2 Y3 N1 N1 N1 N1 N1 N1
ssCAN Source License Y N1 Y Y Y N1 Y Y N1 N.A.4 N.A.4 Y N1 N1
ssJ1939 Source License Y N1 Y Y Y N1 Y Y N1 N.A.4 N.A.4 Y N1 N1
Simma
ssI15765 Source License Y N1 Y Y Y N1 Y Y N1 N.A.4 N.A.4 Y N1 N1
Software
ssI14229 (UDS) Source License Y N1 Y Y Y N1 Y Y N1 N.A.4 N.A.4 Y N1 N1
ssNMEA2000 Source License Y N1 Y Y Y N1 Y Y N1 N.A.4 N.A.4 Y N1 N1
Back
106
Virtual machines
& model-driven development
High-level languages are available in STM32 ecosystem,
as well as model-driven development tools
• Easier migration
• ST and 3rd parties help customers migrate to these new environments
Environment Meaning
Javascript High Level Interpreted Language, typically used in HTML, internet and web related design
Python High Level Language, interpreted or using a VM (Virtual Machine), popular within scientific community
.NET C# object-oriented language and Microsoft Visual Studio development environment. This is Microsoft .NET Micro Framework for
microcontrollers.
MATLAB/Simulink Brands from MathWorks company, for software enabling model-driven approach
107
STM32 – virtual machines and
model-driven development
Availability
Provider Description Model Cost
WB WL F0 G0 F1 F2 F3 G4 F4 F7 H7 L0 L1 L4 /L4+ L5 U5
STM32 Peripheral
ST blocks for License Free N N Y N Y Y Y N Y Y N Y Y Y N N
Matlab/Simulink
Microsoft .NET Micro Open source
Mountaineer Free N N N N Y Y N N Y N N N N N N N
Framework Apache 2.0
Open source
Espruino Javascript Free N N N N Y N N N Y N N N N Y N N
MPLv2
Open source
JerryScript Javascript Free N N N N N N N N Y N N N N N N N
Apache 2.0
Open source
Duktape Javascript Free N N N N N N N N Y N N N N Y N N
MIT
Open source
Micropython Python Free N N N N N N N N Y Y N N N Y N N
MIT
Back
108
Legal disclaimer
In addition to the Terms of Use, ST Sales Terms & Conditions and Privacy Policy contained in this Web Site, the following terms and conditions apply to all STMicroelectronics partner programs.
Although STMicroelectronics has attempted to provide accurate information on the Web Site, STMicroelectronics assumes no responsibility for the accuracy of the information. All information provided by
STMicroelectronics on this Web Site is provided “AS -IS ”, with all faults and without warranty of any kind, whether expressed, implied or statutory. STMicroelectronics may change or discontinue its partner
programs or its products or services at any time and without notice. Any mention of non-STMic roelectronics products or services is for information purposes only and does not constitute an endorsement by
STMicroelectronics. The use of the word or term “partner or partners” on this Web Site does not indicate or imply the existence of any partnership or agency relationship or any legal or fiduciary relationship
of any kind between S TMicroelectronics and any other company or that such company is an affiliate of S TMicroelectronics in any way. The partners in STMic roelectronics partner programs provide
separate licenses for purchase or use of their products and/or services and related technology with STMicroelectronics devices. Contact the appropriate partner directly for licensing terms, price, support
any other information on such partner’s product and/or services. The terms and conditions for such products and/or services may vary from partner to partner and are licensed directly and separately from
such partner. S TMicroelectronics makes no representations or warranties about the suitability of the products and services offered or provided by the partners and S TMicroelectronics hereby disclaims all
warranties and conditions, whether express, implied or statutory with respect to any product or services provided by the partners, including but not limited to any warranties and conditions of
merchantability, fitness for a particular purpose, title, non-infringement or arising from a course of dealing, usage or trade practice. In no event shall STMicroelectronics be liable for any direct, indirect,
incidental, special, exemplary, consequential or punitive damages or any damages whatsoever, including but not limited to loss of use, profit or revenue however caused and on any theory of liability,
whether in cont ract, strict liability or tort (including negligence or otherwise) arising in any way out of or in connection with your participation in or your reliance of the partner program, your use or inability to
use or purchase of products and/or services from the partners or the performance of such products and services, your relationship with the partner, your use or inability to use or reliance on
STMicroelectronics portal or any information provided by STMicroelectronics therein, even if advised of the possibility of such damage. Links to third party Web Sites, when provided by STMicroelectronics,
are not under the control of STMicroelectronics and STMicroelectronics is not responsible for any contents, materials, opinions, advice or statements or for the accuracy or reliability of any such contents
and materials made on any linked site or any link contained in a linked site, or any changes or updates to such sites. STMicroelectronics is not responsible for any form of transmission received from any
linked site, including but not limited to webcasting or audio transmission. Access to any linked site or any link contained in a linked site is at the user's own risk. STMicroelectronics is providing these links
to you only as a convenience and the inclusion of any link does not imply any warranty (implied, express or otherwise) or any endorsement by STMicroelectronics of the third-party Web Site.
109
Releasing your creativity
/STM32
@ST_World
community.st.com
www.st.com/STM32EmbeddedSoftware
110
Find out more at www.st.com/STM32EmbeddedSoftware