 Hello and welcome to the second part of the STM32 schematic self-review presentation. If you have not watched the first part of this presentation yet, we would highly encourage you to do so and then come back to this video after. In today's video, we will continue covering the other half of the schematic checklist and wrap up the series with going through a couple of hardware debugging tips. In part 1, we covered pinout and alternate functions, power, clocks, and debug. Today, we will cover the remainder of the list by discussing boot, reset, and 5 volt tolerant pins. During your review, you will want to check that the proper boot configuration is selected. In my example here, using the STM32F746, I can locate the boot modes table in the reference manual. Using this table, I am able to see that depending on the boot zero pin state and the boot base address programmed in boot add zero or boot add one will determine whether the device boots from internal flash or the system boot loader. If choosing to boot from the system boot loader, I then would reference application note 2606 to find a list of supported peripherals that can be used to update the internal flash. Each STM32 family is unique and may have different mappings for system memory. Therefore, it is imperative to double check that you are using the proper IOs for system memory. Another point to consider when checking your boot configurations is that some STM32 devices may have a boot one pin and a fixed boot addresses. For example, the STM32F103 has both a boot zero and boot one pin. These two pins state combination will determine whether the STM32 boots from main flash memory, system memory, or embedded SRAM. As always, we highly encourage you to refer to your respective STM32 devices reference manual and corresponding application note 2606 section for further details. The figure on the screen indicates a simplified diagram of the reset circuit inside the STM32. The NRST pin is a bidirectional pin, meaning that you have the option of resetting the STM32 from an external source, or the same pin can also generate a result pulse output whenever there is an internal reset. With that in mind, here are some points to consider. Typically, there is no need for an external pull-up resistor because there is already an internal pull-up resistor embedded, which is similar to the IO configuration mentioned earlier in this presentation. For resistor values, please refer to the NRST pin characteristics table in your selected STM32's datasheet. If there is any reset pin drive, you will want to make sure that it is done in an open-drain manner rather than push-pull. This is due to internal reset sources. A somewhat common issue is that an external device or reset controller is configured as push-pull, which leads to preventing the NRST from being asserted by the debugger or the STM32. The capacitance on the NRST pin should typically not exceed 0.1 microfarad. Too much capacitance will prevent the STM32 internally generated resets from pulling the line low enough to reset the part. However, newer parts may have revised this internal circuit, so you'll want to double-check your STM32's datasheet. The STM32 also support pins that are 5V tolerant. As each device is unique, it is important to double-check this capability on the pin or pins you plan to interface with any external 5V logic. To do so, start by locating the abbreviation used to indicate a 5V tolerance. This information is typically available in the datasheet of the STM32 and present in the footnote of the pin definition table or a separate legend and abbreviation table. In our example here, we see that FT stands for 5V tolerant, and when looking at the pin definition table, there's an IO-level column that helps us in identifying whether or not the pin is 5V tolerant. Please note that it is also important to pay attention to the absolute maximum rating tables available in the datasheet, particularly when it comes to respecting the maximum voltage and current limits of each pin and overall microcontroller. Lastly, when planning to interface any IOs from the STM32 to external 5V logic, you must remember to configure the GPIO on the STM32 as open drain and disable the internal pull-up or pull-down resistors present. With that, let's move on to the next portion of this presentation, the hardware debugging tips. I would like to share three hardware debugging tips and tricks with you. Firstly, we will discuss the microcontroller clock output, then move on to utilizing any free GPIOs and lastly, the benefits of taking current measurements. It is highly recommended to bring the microcontroller clock output signal, or MCO, out to a header pit. By doing so, it can be very helpful in determining your selected clock frequencies when debugging. Having several unused GPIO signals on easily accessible header pins can really help when debugging certain issues. These issues include but are not limited to timing, placing code, and low power modes. Having a place to insert a tool to measure just the STM32's current can greatly help when adding or debugging low power modes. Being able to only measure the microcontroller's current takes some of the guesswork out of determining if it is the STM32 or some other device on the board consuming the current. Some of the current measurement tools recommended are the STM32 Power Shield as a standalone, although the STM32 Power Shield with the STM32 Cube Monitor power application or NAM meter. Some key features of the STM32 Power Shield are that it can be used as a standalone device and supports ultra low power consumption measurements. These measurements include the ability of measuring from a supply target board running at 3.3 volts down to 1.8 volts, measuring dynamic current within the range of 100 nanoamps to 50 milliamps, and measuring static current within the range of 1 nanoamp to 200 milliamps. In addition, the STM32 Power Shield can be used with the STM32 Cube Monitor power PC application which provides graphical visualizations that allow you the flexibility of honing into specific areas for their analysis and can also provide measurement reports. Lastly, the STM32 Cube Monitor allows for custom test sessions that is supported with command line interface. For additional information on the STM32 Power Shield or STM32 Cube Monitor power, please visit ST.com. Thank you for joining me in today's presentation, and we hope that you enjoyed learning about the important aspects to look for when conducting a STM32 schematic review. Please be sure to like this video, subscribe to our channel, and we'd love for you to comment below with any future video topics you'd like to see from us.