Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use STM-32 NUCLEO-F401RE: Examples, Pinouts, and Specs

Image of STM-32 NUCLEO-F401RE
Cirkit Designer LogoDesign with STM-32 NUCLEO-F401RE in Cirkit Designer

Introduction

The STM-32 NUCLEO-F401RE is a development board manufactured by STMicroelectronics, featuring the STM32F401RE microcontroller. This board is designed for rapid prototyping and development of embedded applications. It provides a wide range of interfaces, connectivity options, and compatibility with Arduino and ST morpho headers, making it versatile for various projects.

Explore Projects Built with STM-32 NUCLEO-F401RE

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
WiFi-Enabled Environmental Monitoring System with Alert Notifications
Image of GAS LEAKAGE DETECTION: A project utilizing STM-32 NUCLEO-F401RE in a practical application
This circuit features a NUCLEO-F303RE microcontroller board interfaced with several modules for sensing, actuation, and communication. It uses I2C communication to display data on an LCD screen, UART communication to interface with an ESP8266 WiFi module, and reads an MQ-2 gas sensor via an ADC pin. The microcontroller also controls a buzzer for audible alerts and a relay module for switching higher power loads, possibly in response to sensor readings or remote commands received over WiFi.
Cirkit Designer LogoOpen Project in Cirkit Designer
IoT-Enabled Environmental Monitoring System with NUCLEO-F303RE and ESP8266
Image of GAS LEAKAGE DETECTION: A project utilizing STM-32 NUCLEO-F401RE in a practical application
This circuit features a NUCLEO-F303RE microcontroller board interfaced with various modules for sensing, actuation, and communication. It includes an MQ-2 gas sensor for detecting combustible gases, a buzzer for audible alerts, and a relay for controlling high-power devices. Additionally, the circuit uses an ESP8266 WiFi module for wireless connectivity and an I2C LCD display for user interface and data display.
Cirkit Designer LogoOpen Project in Cirkit Designer
STM32 Nucleo F303RE Controlled Ultrasonic Sensing with RGB Feedback and I2C LCD Display
Image of CS435-final: A project utilizing STM-32 NUCLEO-F401RE in a practical application
This circuit features a STM32 Nucleo F303RE microcontroller interfaced with three HC-SR04 ultrasonic sensors for distance measurement and a 20x4 LCD display over I2C for data output. Additionally, there is a WS2812 RGB LED strip controlled by the microcontroller for visual feedback. The power supply provides a common 5V to the LCD, ultrasonic sensors, LED strip, and the microcontroller's +5V input, with all components sharing a common ground.
Cirkit Designer LogoOpen Project in Cirkit Designer
Nucleo 401RE Controlled LED with Button Input
Image of CSE360 Lab1: A project utilizing STM-32 NUCLEO-F401RE in a practical application
This circuit features an STM32 Nucleo 401RE microcontroller that controls a red LED through a 220-ohm resistor. The LED's cathode is connected to ground, and its anode is connected to the microcontroller via the resistor, allowing the microcontroller to manage the LED's state.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with STM-32 NUCLEO-F401RE

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of GAS LEAKAGE DETECTION: A project utilizing STM-32 NUCLEO-F401RE in a practical application
WiFi-Enabled Environmental Monitoring System with Alert Notifications
This circuit features a NUCLEO-F303RE microcontroller board interfaced with several modules for sensing, actuation, and communication. It uses I2C communication to display data on an LCD screen, UART communication to interface with an ESP8266 WiFi module, and reads an MQ-2 gas sensor via an ADC pin. The microcontroller also controls a buzzer for audible alerts and a relay module for switching higher power loads, possibly in response to sensor readings or remote commands received over WiFi.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of GAS LEAKAGE DETECTION: A project utilizing STM-32 NUCLEO-F401RE in a practical application
IoT-Enabled Environmental Monitoring System with NUCLEO-F303RE and ESP8266
This circuit features a NUCLEO-F303RE microcontroller board interfaced with various modules for sensing, actuation, and communication. It includes an MQ-2 gas sensor for detecting combustible gases, a buzzer for audible alerts, and a relay for controlling high-power devices. Additionally, the circuit uses an ESP8266 WiFi module for wireless connectivity and an I2C LCD display for user interface and data display.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of CS435-final: A project utilizing STM-32 NUCLEO-F401RE in a practical application
STM32 Nucleo F303RE Controlled Ultrasonic Sensing with RGB Feedback and I2C LCD Display
This circuit features a STM32 Nucleo F303RE microcontroller interfaced with three HC-SR04 ultrasonic sensors for distance measurement and a 20x4 LCD display over I2C for data output. Additionally, there is a WS2812 RGB LED strip controlled by the microcontroller for visual feedback. The power supply provides a common 5V to the LCD, ultrasonic sensors, LED strip, and the microcontroller's +5V input, with all components sharing a common ground.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of CSE360 Lab1: A project utilizing STM-32 NUCLEO-F401RE in a practical application
Nucleo 401RE Controlled LED with Button Input
This circuit features an STM32 Nucleo 401RE microcontroller that controls a red LED through a 220-ohm resistor. The LED's cathode is connected to ground, and its anode is connected to the microcontroller via the resistor, allowing the microcontroller to manage the LED's state.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT (Internet of Things) devices
  • Robotics and automation systems
  • Sensor data acquisition and processing
  • Prototyping for industrial and consumer electronics
  • Educational purposes for learning embedded systems

Technical Specifications

Key Technical Details

  • Microcontroller: STM32F401RE (ARM Cortex-M4, 32-bit, 84 MHz)
  • Flash Memory: 512 KB
  • SRAM: 96 KB
  • Operating Voltage: 3.3V
  • Input Voltage (via USB): 5V
  • Input Voltage (via VIN): 7V to 12V
  • Digital I/O Pins: 50 (shared between Arduino and ST morpho headers)
  • Analog Input Pins: 6 (12-bit ADC)
  • PWM Output Pins: 12
  • Communication Interfaces:
    • 3x USART/UART
    • 3x SPI
    • 2x I2C
  • Onboard Debugger: ST-LINK/V2-1
  • Connectivity: USB, Arduino Uno R3 compatibility, ST morpho headers
  • Dimensions: 68.6 mm x 53.3 mm

Pin Configuration and Descriptions

The STM-32 NUCLEO-F401RE features two main pin headers: Arduino Uno R3-compatible headers and ST morpho headers. Below is a summary of the pin configuration:

Arduino Uno R3-Compatible Header

Pin Name Function Description
D0-D1 UART RX/TX Serial communication pins
D2-D13 Digital I/O General-purpose digital I/O pins
A0-A5 Analog Input 12-bit ADC channels
3.3V Power Output 3.3V regulated output
5V Power Output 5V regulated output
GND Ground Common ground
VIN Power Input External power input (7V-12V)
RESET Reset Resets the microcontroller

ST Morpho Header

Pin Name Function Description
PAx, PBx GPIO General-purpose I/O pins
VDD Power Supply 3.3V power supply
GND Ground Common ground
NRST Reset Microcontroller reset
OSC_IN External Oscillator In Input for external clock source
OSC_OUT External Oscillator Out Output for external clock source

Usage Instructions

How to Use the Component in a Circuit

  1. Powering the Board:

    • Connect the board to your computer via the micro-USB cable for power and programming.
    • Alternatively, supply power through the VIN pin (7V-12V) or the 5V pin.
  2. Programming the Board:

    • Use the onboard ST-LINK/V2-1 debugger to program the microcontroller.
    • Compatible with STM32CubeIDE, Keil, IAR, and Arduino IDE.
  3. Connecting Peripherals:

    • Use the Arduino Uno R3-compatible headers for shields and modules.
    • Use the ST morpho headers for advanced GPIO and peripheral access.
  4. Uploading Code:

    • Write your code in the IDE of your choice.
    • Compile and upload the code via the ST-LINK interface.

Important Considerations and Best Practices

  • Ensure the input voltage does not exceed the specified range to avoid damage.
  • Use decoupling capacitors when connecting external components to reduce noise.
  • Avoid connecting high-current loads directly to the GPIO pins.
  • Use proper level shifters when interfacing with 5V logic devices.

Example Code for Arduino IDE

Below is an example code to blink an LED connected to pin D13:

// Blink an LED on pin D13 of the STM-32 NUCLEO-F401RE

void setup() {
  pinMode(13, OUTPUT); // Set pin D13 as an output
}

void loop() {
  digitalWrite(13, HIGH); // Turn the LED on
  delay(1000);            // Wait for 1 second
  digitalWrite(13, LOW);  // Turn the LED off
  delay(1000);            // Wait for 1 second
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not detected by the computer:

    • Ensure the USB cable is properly connected and functional.
    • Check if the ST-LINK driver is installed on your computer.
  2. Code upload fails:

    • Verify that the correct board and port are selected in the IDE.
    • Ensure no other application is using the ST-LINK interface.
  3. The board does not power on:

    • Check the power source and ensure the input voltage is within the specified range.
    • Inspect the USB cable or external power supply for faults.
  4. GPIO pins are not functioning as expected:

    • Confirm the pin mode is correctly configured in the code.
    • Check for short circuits or incorrect connections.

FAQs

Q: Can I use the STM-32 NUCLEO-F401RE with 5V logic devices?
A: The board operates at 3.3V logic levels. Use level shifters to interface with 5V devices.

Q: Is the board compatible with Arduino shields?
A: Yes, the board is compatible with most Arduino Uno R3 shields.

Q: How do I reset the board?
A: Press the RESET button on the board or use the NRST pin.

Q: Can I use an external clock source?
A: Yes, connect the external clock to the OSC_IN and OSC_OUT pins on the ST morpho header.