 Hello and welcome to this presentation of the STM32Cube firmware drivers including the hardware abstraction layer drivers. While this presentation is specifically about the STM32L5, the STM32Cube comprehensive software tool offers the STM32Cube MX Graphical Software Configuration Tool used to generate initialization code based on user choices and a complete embedded software package for each STM32 series such as our STM32Cube L5 with Hardware Abstraction Layer or HAL and Low Layer or LL APIs and a consistent set of middleware components, RTOS, USB, Trusted Firmware, File System and USB Power Delivery. The embedded software package is a layered approach, Low Level, Hardware Abstraction Layer or HAL and Low Layer or LL Drivers with Examples, Middleware Level, Set of Libraries with Examples including RTOS, USB Device, USB Power Delivery, Trusted Firmware and Application Level, Demonstrations for Use on ST Boards. Embedded software is delivered by series STM32L5, STM32L4, STM32WB, STM32G0, STM32H7 and common modules are covered with fully portable APIs. Embedded software initialization code can be generated through STM32Cube MX allowing customers to remain focused on the core application code. The STM32Cube package is a complete embedded software offer that ensures maximum portability between all STM32 series through three software layers, HALLL, Middlewares and Applications. The HALLL layer is providing an API for the STM32 embedded peripherals from analog to connectivity and cryptography to security categories. A rich set of examples is available to help developers start using the HALLL and HALLL on the product. The middleware layer for STM32Cube L5 contains CMSIS RTOS implementation with free RTOS open source solution. Full USB device stack supporting the following device classes HID, MSC, CDC, Audio, DFU, LPM and BCD. USB power delivery library, ARM Trusted Firmware M or TFM integration solution, Embed TLS and Embed Crypto libraries, FAT file system based on open source FATFS solution, and STM Touch touch sensing library solution. Advanced demos putting together all the embedded software components are also provided in the STM32Cube L5 package. There is a complete set of documents including release notes, readme files or associated user manual. The packages come with free and user friendly license terms. Like all STM32Cube firmware packages, the STM32Cube L5 firmware solution comes in a single zip drive, having the structure shown in this slide. It's organized in several main folders. The documentation folder contains the STM32Cube L5 Getting Started document, helping developers to quickly become familiar with the firmware package and its contents. The drivers folder contains all the ST developed drivers. CMSIS contains the files defining the STM32L5XX supported devices, peripheral registers declarations, their associated bit definitions, and address mapping. The STM32L5XXHAL driver folder contains the drivers for all the peripherals. The drivers for all supported boards are found in the BSP folder. Middleware contains the supported middleware libraries and stacks provided either by ST or third parties. The projects folder contains templates, examples, applications and demonstrations for supported boards and with pre-configured projects and specific readme files that provide all necessary information for a quick and easy execution. The utilities folder contains miscellaneous utility drivers that are used by the provided projects. The release note lists the contents of all the packages, tracks the main changes and provides information on the supported devices and boards and any known limitations. Through its generic architecture, STM32Cube offers a highly portable hardware abstraction layer or HAL. It allows developers to implement application functions by building on layers such as the middleware layer without requiring any in-depth knowledge of the MCU. This improves the reusability of the library code and guarantees an easy portability to other devices. In addition, thanks to its layered architecture, the STM32CubeL5 firmware package offers full support of all STM32L5 microcontrollers and the development boards designed by ST. The user has only to define the correct macro in the STM32L5XX.h file and get in touch with BSP drivers and example application projects specific to each board provided within the firmware package. For each board, a set of examples is provided with pre-configured projects for E-Warm, MDK-Arm, and STM32Cube IDE tool chains. The right-side figure shows the project structure for the Nucleo-L552-ZE-Cube board, which is identical for all the other boards. The examples are classified depending on the STM32Cube level they apply to and are named as follows. Examples in level zero are called examples and use HAL drivers without any middleware component. Examples in level one are called applications and provide typical use cases of each middleware component. And examples in level two are called demonstration and implement all the HAL, BSP, and middleware components. The template project is provided to quickly build any firmware application for all supported boards. The STM32Cube project list file allows a quick access and search for a given example within the firmware package. All examples without trust zone enabled in the system have the same structure as on other STM32 firmware packages. Backslash-Ink folder contains all header files. Backslash-SRC folder contains the source code. Backslash-Ewarm, Backslash-MDK-Arm, and Backslash-STM32Cube IDE folders contain the pre-configured project for each tool chain. A Readme text file describes the example behavior and environment needed to make it work. For each board, a set of examples are provided with trust zone enabled in the system and are provided with pre-configured projects for E-Warm, MDK-Arm, and STM32Cube IDE tool chains. The trust zone example's name ends with underscore trust zone except trusted Firmware M application. All trust zone examples are composed of two and are provided with a multi-project structure composed of secure and non-secure sub-projects. A Readme text file describes the example behavior and environment needed to make it work. Rich documentation is associated to the STM32Cube L5 Firmware package. Some documents are generic to all STM32 series and others are specific to the STM32L5 series. The getting started with the STM32Cube L5 Firmware package user manual is the document that you need to read first when you start using the STM32Cube Firmware package. The STM32Cube L5 Firmware can be downloaded from the ST website at www.st.com-stm32cubefw.