boards/st/nucleo_f429zi/doc/index.rst
.. zephyr:board:: nucleo_f429zi
Overview
The Nucleo F429ZI board features an ARM Cortex-M4 based STM32F429ZI MCU with a wide range of connectivity support and configurations. Here are some highlights of the Nucleo F429ZI board:
STM32 microcontroller in LQFP144 package
LSE crystal: 32.768 kHz crystal oscillator
USB OTG
Ethernet compliant with IEEE-802.3-2002
Two types of extension resources:
On-board ST-LINK/V2-1 debugger/programmer with SWD connector
Flexible board power supply:
Three user LEDs
Two push-buttons: USER and RESET
More information about the board can be found at the Nucleo F429ZI website_.
Hardware
The Nucleo F429ZI provides the following hardware components:
More information about STM32F429ZI can be found here:
STM32F429ZI on www.st.com_STM32F429 reference manual_STM32F429 datasheet_.. zephyr:board-supported-hw::
The Nucleo F429ZI Board has 8 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc.
.. image:: img/nucleo_f429zi_cn8.jpg :align: center :alt: Nucleo F429ZI ZIO connectors (left) .. image:: img/nucleo_f429zi_cn7.jpg :align: center :alt: Nucleo F429ZI ZIO connectors (right) .. image:: img/nucleo_f429zi_cn11.jpg :align: center :alt: Nucleo F429ZI Morpho connectors (left) .. image:: img/nucleo_f429zi_cn12.jpg :align: center :alt: Nucleo F429ZI Morpho connectors (right)
For more details please refer to STM32 Nucleo-144 board User Manual_.
The Nucleo F429ZI board features a ST Zio connector (extended Arduino Uno V3) and a ST morpho connector. Board is configured as follows
The Nucleo F429ZI System Clock could be driven by an internal or external oscillator, as well as by the main PLL clock. By default System clock is driven by PLL clock at 180MHz, driven by an 8MHz high speed external clock.
The Nucleo F429ZI board has 8 UARTs. The Zephyr console output is assigned to UART3. Default settings are 115200 8N1.
Programming and Debugging
.. zephyr:board-supported-runners::
The Nucleo F429ZI board includes an ST-LINK/V2-1 embedded debug tool interface.
The board is configured to be flashed using west STM32CubeProgrammer_ runner,
so its :ref:installation <stm32cubeprog-flash-host-tools> is required.
Alternatively, OpenOCD or JLink can also be used to flash the board using
the --runner (or -r) option:
.. code-block:: console
$ west flash --runner openocd $ west flash --runner jlink
Flash partitions for MCUBoot bootloader
The on-board STM32F429ZI MCU has 2MBs of internal flash memory. To use MCUboot_,
define a :ref:Zephyr partition table <flash_map_api> for the flash memory in
its devicetree file nucleo_f429zi.dts. As a reference, a partition table for
MCUBoot is already defined in the devicetree file, with these settings:
MCUBoot_ bootloader partition takes 64K bytes.A specific application can adjust each partition size based on its needs.
.. _Nucleo F429ZI website: https://www.st.com/en/evaluation-tools/nucleo-f429zi.html
.. _STM32 Nucleo-144 board User Manual: https://www.st.com/resource/en/user_manual/dm00244518.pdf
.. _STM32F429ZI on www.st.com: https://www.st.com/en/microcontrollers/stm32f429zi.html
.. _STM32F429 reference manual: https://www.st.com/resource/en/reference_manual/dm00031020.pdf
.. _STM32F429 datasheet: https://www.st.com/resource/en/datasheet/DM00071990.pdf
.. _MCUBoot: https://github.com/JuulLabs-OSS/mcuboot/blob/master/README.md
.. _STM32CubeProgrammer: https://www.st.com/en/development-tools/stm32cubeprog.html