website logo
HomeShopDocsBlogForum
⌘K
Flipper Zero Documentation
Basics
🐬First start
MicroSD card setup
Firmware update
Pet dolphin
Power
Reboot
Controls
Settings
Sub-GHz
Reading signals
Reading RAW signals
Adding new remotes
Supported Sub-GHz vendors
Frequencies
125 kHz RFID
Reading 125 kHz RFID cards
Adding 125 kHz cards manually
Animal microchips
NFC
Reading NFC cards
Recovering keys with MFKey32
Unlocking cards with passwords
Writing data to magic cards
Infrared
Reading infrared signals
Using universal remotes
GPIO & modules
iButton
Bad USB
U2F (Universal 2nd Factor)
Applications
HID controllers
Flipper Mobile App
Reporting Mobile App bugs
qFlipper
Troubleshoot drivers on Windows
Development
Firmware
Hardware
Blueprints
Docs powered by archbee 

GPIO & modules

Document image


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 LCD screen. Flipper Zero can also be used as a USB to UART/SPI/I2C converter.



GPIO pinout

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, some pins are +5 V tolerant for input only—keep it in mind. 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.

Flipper Zero's pins
Flipper Zero's pins


Detailed information on the pinout and functionality of the pins can be found in the picture below.

Flipper Zero's pinout
Flipper Zero's pinout

<div class="info flipper-callout">
    <div class="callout-header">I/O pins change their state in DFU mode</div>
    When Flipper is in DFU mode, the microcontroller I/O pins, except for pin 17, change their state according to the table below.</div>


Table: Configuration in DFU mode (expandable)

Document image

Document image

Document image

Document image


Source: AN2606 Application note STM32 microcontroller system memory boot mode, Table 152. STM32WB30xx/35xx/50xx/55xx configuration in system memory boot mode, section 70.1.



+3.3 V power pin 9

  • 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 update and a microSD card mounting, power supply to pin 9 is temporarily disabled.
<div class="warning flipper-callout">
    <div class="callout-header"></div>
    Connect external modules with large capacitive load only when Flipper Zero is powered off. Otherwise, data on the microSD card can be corrupted.
</div>


+5 V power pin 1

Pin 1 can be supplied with power by the built-in battery or a USB cable.

<div class="warning flipper-callout">
    <div class="callout-header"></div>
    When Flipper Zero is connected to a USB cable, then the power to pin 1 is supplied directly from USB. Never exceed the maximum current of 1 A.
</div>


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 A.

Input/output pins

Total power consumption from I/O pins must not exceed 5 W, otherwise, the battery might switch to the protection mode and Flipper Zero might shut down. Each pin can source up to 20 mA.



GPIO menu

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.

GPIO application menu
GPIO application menu

  • 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.
  • 5V on GPIO — enable/disable +5 V power supply to pin 1. See this section for more information.


Inserting an external module

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.

Make sure the module's GPIO pins aren't visible
Make sure the module's GPIO pins aren't visible


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.

Make sure there is no gap in the middle
Make sure there is no gap in the middle






Flipper Zero schematics

GPIO application source code



Updated 08 Jun 2023
Did this page help you?
Yes
No
PREVIOUS
Using universal remotes
NEXT
iButton
Docs powered by archbee 
TABLE OF CONTENTS
GPIO pinout
Table: Configuration in DFU mode (expandable)
+3.3 V power pin 9
+5 V power pin 1
Input/output pins
GPIO menu
Inserting an external module

Community

Kickstarter Habr.com Discord Forum Blog

For developers

Documentation GitHub Design Guide

Distributors

Lab401 Joom How to buy Become a Partner

About

Contacts Compliance Company Abuse Report Privacy Policy

Copyright © 2023 Flipper Devices Inc.