GPIO & modules
You can use your Flipper Zero for hardware exploration, firmware flashing, debugging, and fuzzing. Flipper Zero can be connected to hardware using its built-in GPIO pins, control hardware with buttons, run your code, and show debug messages on the screen. Flipper Zero can also be used as a USB to UART/SPI/I2C converter.
This page will walk you through your Flipper Zero’s GPIO pinout and provide more info about the GPIO application. You’ll also learn how to install the modules correctly into GPIO pin holes.
Flipper Zero has 18 pins on the top side, consisting of power supply pins and I/O pins. Power supply pins can be used to power your external modules. Input/output (I/O) pins are +3.3 V tolerant for input and output. For more information, see 3.3 V and 5 V tolerance.
I/O pins connect external modules to the I/O pins of the STM32WB55 microcontroller through 51 Ohm resistors. All pins are electrostatic discharge (ESD) protected. For information on the basic functionality of Flipper Zero pins, see the picture below.
Detailed information on the pinout and functionality of the pins can be found in the picture below.
- The output is enabled by default.
- The maximum load is 1.2 A.
- Flipper Zero’s microSD card is powered by +3.3 V. During firmware updates and microSD card mounting, the power supply to pin 9 is temporarily disabled.
Pin 1 can be supplied with power by the built-in battery or a USB cable.
When Flipper Zero is powered by the built-in battery:
- The output is not enabled by default. To enable power supply to pin 1, do the following: 1. In the Main Menu, go to GPIO. 2. Select 5V on GPIO and set it to ON.
- The maximum load is 1.2 A.
The total power consumption from I/O pins must not exceed 5 W. Otherwise, the battery might switch to protection mode, and Flipper Zero might shut down. Each pin can source up to 20 mA.
The I/O interface of modern CMOS chips is designed to operate in a specific voltage range. In the case of Flipper Zero’s STM32WB55 MCU, the I/O interface is designed to operate with a voltage of 3.3 V.
For more information, see AN4899 Application note.
You can access the GPIO application from the Main Menu. In the application, you can configure USB-UART functionality, test pins separately, and enable/disable the +5 V power supply to pin 1.
- USB-UART Bridge: Flipper Zero acts as a USB to Serial UART converter.
- GPIO Manual Control: test output of individual or all GPIO pins by pressing %ok%OK. Available configuring options: PA7 (pin 2), PA6 (pin 3), PA4 (pin 4), PB3 (pin 5), PB2 (pin 6), PC3 (pin 7), PC1 (pin 15), PC0 (pin 16), and ALL.
It’s important to insert the external module into your Flipper Zero’s GPIO pin holes correctly. If your Flipper Zero isn’t in a silicone case, insert the module all the way in, so there is no gap between your Flipper Zero and the module. You may need to apply more force to insert it completely.
If your Flipper Zero is in a silicone case, insert the module all the way in, so there is no gap in the middle between the silicone case and the module.