 Hello, and welcome to this presentation of the features of the STM32WB's Bluetooth Low Energy Peripheral. The Bluetooth Low Energy or BLE peripheral handles all real-time operations of the Bluetooth smart system, controls the Bluetooth Low Energy physical layer, and Bluetooth Low Energy's security. Communication with the Cortex-M4 processor, which handles the Bluetooth Low Energy profiles and application, is done via a memory-mapped mailbox and the inter-processor communication controller. The BLE peripheral operates autonomously and doesn't require application Cortex-M4 involvement to maintain a Bluetooth Low Energy connection, perform scanning, or advertising, thus enabling an ultra-low power implementation. Sharing system and security peripherals is handled via the hardware semaphores, or HSM. The STM32WB supports the main Bluetooth smart features. A BLE device is either a master or a slave device for one link. The STM32WB supports eight BLE links simultaneously, with a minimum of two slaves. The terms master and slave are the link layer roles equivalent to central and peripheral. The client server architecture is done at the GATT, or generic attribute profile layer, and is used to transfer values. The STM32WB Bluetooth Low Energy architecture separates the Bluetooth Low Energy profiles and application running on the application Cortex-M4 from the Bluetooth Low Energy real-time aspects residing in the Bluetooth Low Energy peripheral. The Bluetooth Low Energy peripheral incorporates a Cortex-M0 plus processor containing the Bluetooth Low Energy stack handling the link layer up to the generic attributes profiles or GATT and generic access profile or GAP layers. It also incorporates the physical 2.4 GHz radio. For more information on the 2.4 GHz radio, see the specific RF training. Communication between the Cortex-M4 and the Bluetooth Low Energy peripheral takes place over a memory mapped mailbox and the inter-processor communication controller or IPCC using a host controller interface or HCI like protocol format to support application control interface or ACI commands, responses and user events. Different sets of commands, responses and events are used depending on the final application. A set of commands supports generic access profiles or GAPs to define the BLE link role. Another set of commands is used for the generic attributes profiles or GATT to support the transfer of values via the client server architecture. Certain vendor-specific commands are used to manage CM0 plus, CM4 and BLE IP configurations. IR is the identity root key used to derive the LTK and CSRK keys. ER is the encryption root key used to derive the LTK and CSRK keys. And DIV is used to derive the CSRK key. The Bluetooth Low Energy radio test mode verifies the STM32WB transmit and receive performance. Standard and vendor-specific host controller interface commands are used to place the device in the different test modes. This way the device can be tested using a Bluetooth tester or with a PC and RF measurement equipment. The Bluetooth Low Energy peripheral autonomously controls the system's low power sleep, stop and standby modes based on the Bluetooth Low Energy operating modes. When waking up from low power modes, the Bluetooth Low Energy peripheral detects the system's operating mode and autonomously configures its system clock to ensure the application Cortex-M4 state remains unchanged. The sharing of the power controller and reset and clock controller resources with the Cortex-M4 is managed with hardware semaphore, preventing any blocking of resource sharing. Some security peripherals are secureable by the Cortex-M0 plus to grant exclusive access to the Bluetooth Low Energy peripheral. The AES-2, PKA and TrueRNG functions can be fully secured for use by the Bluetooth Low Energy peripheral. The AES-1 cryptographic keys can be secured so that secure keys can be used to encrypt data by the application Cortex-M4. These peripherals allow sharing on a needed basis between the Cortex-M4 and the Bluetooth Low Energy peripheral. The use of shared peripherals is managed via the hardware semaphore IP or HSEM. For application cryptography, the Bluetooth Low Energy peripheral provides secure key management with features to store, update, delete and load keys. To guarantee correct real-time operation of the radio system during critical radio phases, low latency access is granted to the flash memory. During this phase it is not possible to initiate new erase and store flash options. The Cortex-M4 can obtain real-time radio system information using the radio-critical phase flag and interrupt. Each Bluetooth device is allocated a unique 48-bit device address, which is a 48-bit extended unique identifier or EUI-48 created in compliance with the IEEE 802 2014 universal addresses standard. The STM32WB provides a 64-bit unique device identifier based on the 24-bit ST Company ID, an 8-bit Dory device ID and a 32-bit unique number. This STM32WB 64-bit unique device identifier can be used to derive the unique Bluetooth 48-bit device address, avoiding having to program the unique identifier in production. Here is an overview of the peripheral status at specific low-power configuration modes. The BLE peripheral can operate in all low-power sleep, stop and standby modes, except for shutdown mode. The BLE peripheral is capable to autonomously wake up from any low-power mode without the need for the Cortex-M4. When needed, the BLE peripheral interrupts and wakes up the Cortex-M4 from C-run, C-sleep and C-stop modes. In addition to this training, you may find the flash memory interface and system configuration trainings useful.