Skip to content

Board: Nucleo F446RE

Jose Alamos edited this page Aug 9, 2018 · 2 revisions

WARNING: This entry will be deprecated. All content has been moved to


The Nucleo-F446RE is a board from ST's Nucleo family supporting a ARM Cortex-M4 STM32F446RE microcontroller with 128Kb of RAM and 512Kb of ROM Flash.


Nucleo64 F446


Family ARM Cortex-M4
Vendor ST Microelectronics
RAM 128Kb
Flash 512Kb
Frequency up to 180MHz
FPU yes
Timers 11 (2x watchdog, 1 SysTick, 12x 16-bit, 2x 32-bit [TIM2])
ADCs 3x 12-bit
SPIs 4
I2Cs 4
Vcc 2.0V - 3.6V
Datasheet Datasheet
Reference Manual Reference Manual
Programming Manual Programming Manual
Board Manual Board Manual

Implementation Status

Device ID Supported Comments
MCU STM32F446RE partly Energy saving modes not fully utilized
Low-level driver GPIO yes
PWM yes (9 pins available)
UART 3 UARTs USART2 via STLink/USB or D0(RX)/D1(TX), USART3 on PC11(RX)/PC10(TX) and USART1 on PA10(RX)/PA9(TX)
I2C one I2C
USB no
Timer one 32 bit timer

Flashing the device

The ST Nucleo-F446RE board includes an on-board ST-LINK V2 programmer. The easiest way to program the board is to use OpenOCD. Once you have installed OpenOCD (look here for installation instructions), you can flash the board simply by typing

make BOARD=nucleo-f446re flash

and debug via GDB by simply typing

make BOARD=nucleo-f446re debug

Supported Toolchains

For using the ST Nucleo-F446RE board we strongly recommend the usage of the GNU Tools for ARM Embedded Processors toolchain.


SPI pin and LED0 share lines so LED0 is not initialized be default. If you want to use it, you need to add CFLAGS += -DAUTO_INIT_LED0 to your Makefile and disable conflicting radio modules.

Clone this wiki locally
You can’t perform that action at this time.