 Let me talk about the STM32L4's USB peripheral. This figure shows the connections between an STM32L4 microcontroller and a USB connector. The STM32L4 features a full-speed USB communication interface, allowing the microcontroller to communicate typically with a PC or a USB storage device. The simplest implementation is a USB peripheral device, but the STM32L4 supports USB on-the-go functions. The USB implementation includes low-power features, allowing the use of a low-speed crystal oscillator, on-the-go host or device functions, and quicker battery charging.