Flipper Zero - A developer's first look

Flipper Zero - A developer's first look

by Giovanni Laquidara

Imagine having open-source hardware that can interface with millions of devices and systems around the world. Then imagine this unit is small enough to fit in your pocket and has a "super cute" resemblance to Tamagotchi pets!?

While exploring the capabilities, I found development workflow somewhat unclear from the docs and the project's README. I wrote this post and sample app to help others get up and running quickly.

Let's dive in and check out the Flipper Zero and explore how to develop an app with it! ๐Ÿฅณ๐Ÿฌ

What is the Flipper Zero??

Tech Specs for Flipper One

"Flipper Zero is a portable multi-tool for pen-testers and geeks in a toy-like body." ~FlipperZero.com

This tiny device is packed with sensors and antennas combined together. You can use it for IoT hacking in addition learning how radio frequencies, access keys, and IR-controlled devices function. The Flipper Zero can be extended with GPIO pins, USB-C port, and a Micro-SD card reader.

The intuitive display and 5-button directional pad are straightforward with no expert navigation required. Flipper's capabilities are baked into the game-like interface with a delightful dolphin that grows happier as you test and hack.

What are the main features of the Flipper Zero?

Flipper Zero features What's possible with the Flipper Zero straight out of the box?

  • The Sub-1 GHz transceiver can record and transmit radio signals originating from access control systems, security gates, and IoT sensors
  • A 125 kHz RFID reader / transmitter can record and emulate signals coming from RFID proximity cards (For exmaple your gym access card)
  • The Flipper Zero can emulate NFC devices such as a tap-to-pay credit card via the built-in NFC reader/writer
  • Bluetooth is built in -- I love using it during presentations as my handheld presentation clicker
  • Misplace your TV remote control? Utilize the Infrared transceiver inside the Flipper Zero to find it quickly
  • The GPIO interface lets you connect to other hardware, flash the EEPROM, and debug electrical signals
  • and all this is just a sampling of what's possible ๐Ÿคฏ

IMG_6510.png

Setup

For reference, the official first start guide for Flipper Zero is here: https://docs.flipperzero.one/development/hardware/wifi-debugger-module/first-start

For this guide, we'll go step by step to get up and running.

Step 0: Clone the Flipper Zero firmware repository

Head over to github.com/flipperdevices and clone the firmware's repo:

$ git clone --recursive https://github.com/flipperdevices/flipperzero-firmware.git

Step 1: Install Python dependencies

To start building, you need several python packages. Make sure you have already installed both the python and pip libraries on your machine. If needed, you can install them via these guides:

Once these are installed, we can go into the firmware directory and we'll be able to download the rest using the command:

$ pip3 install -r scripts/requirements.txt

Step 2: Run the FBT

Once installed, we'll be using Flipper's 'building system, known as the "Flipper Build Tool (FBT)". Developers utilize FBT as a command line tool from within the firmware repo's root directory.

You can now launch the command ./fbt to build the firmware.

$ cd flipperzero-firmware
$./fbt

Step 3: Launching the USB flash

Once setup is complete the Flipper Zero firmware is ready to install by connecting it via USB-C to your computer and launching the command ./fbt flash_usb

Connecting to the flipper zero

Firmware update

Once these steps are complete, we're now ready to start developing our app.

We will develop our first Hello World app in the next episode ๐Ÿ‘จโ€๐Ÿ’ป๐Ÿ‘ฉโ€๐Ÿ’ป!

Conclusion

We just started to discover the Flipper Zero. If you're looking to buy one, there's several places where they are on sale. The best place to start searching is at shop.flipperzero.one/products/flipper-zero

If you have questions or looking to build something new, you can reach me on Twitter or in the Discord community for Flipper Zero.

Have fun and happy hacking!

0
Subscribe to my newsletter

Read articles from Giovanni Laquidara directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Giovanni Laquidara
Giovanni Laquidara

Developer Advocate @ Amazon focused on devices, mobile apps and ๐Ÿ‘จโ€๐Ÿ’ป๐Ÿ‘ฉโ€๐Ÿ’ป developer communities ๐ŸŒŽ๐ŸŒ๐ŸŒ. Previously I worked as developer advocate, software engineer, VR and mobile developer and real-time software architect/developer. I like working with the cutting-edge technologies and people. Tinkering and sharing the experience.