Flipper Zero

Flipper Zero is a portable Tamagotchi-like[1] multi-functional device developed for interaction with access control systems. The device is able to read, copy, and emulate RFID and NFC tags, radio remotes, iButton, and digital access keys, along with a GPIO interface.[2] It was first announced in August 2020 through the Kickstarter crowdfunding campaign, which raised $4.8M.[3] The first devices were delivered to backers 18 months after completion of the crowdfunding campaign. The device's user interface embodies a pixel-art dolphin virtual pet. The interaction with the virtual pet is the device's core game mechanic. The usage of the device's functions defines the appearance and emotions of the pet.[4]

Flipper Zero
Flipper Zero running Sub-GHz radio scanning mode
Operating systemFreeRTOS
CPUSTMicroelectronics STM32WB55
Memory
  • 256 KB RAM
  • 1024 KB Flash
Removable storageMicro SD (up to 256 GB)
Display
  • Monochrome LCD
  • 1.4-inch, 128 × 64 pixels
Connectivity
Dimensions100 x 40 x 25 mm
Mass104 grams

Overview

Flipper Zero is designed for interaction with various types of access control systems, radio protocols, RFID, near-field communication (NFC), and infrared signals.[5][6] To operate the device, it is not required to have a computer or a smartphone — it can be controlled via a 5-position D-pad and a separate back button. Flipper Zero has a monochrome orange backlight LCD screen with a resolution of 128x64 pixels. For connection with external modules, the device has general-purpose input/output (GPIO) pinholes on the top side. User data and firmware updates are stored on a Micro SD card. Some actions, such as firmware or user data update, require a connection to a computer or a smartphone with developer's software installed.

Technical specification

The electronic schematics[7] and firmware[8] of the Flipper Zero project are open-sourced under the GNU General Public License. At the same time, the device does not fit into the open-source hardware category because the printed circuit boards are not open-sourced, which does not allow enthusiasts to make their own copies of the device without a basic knowledge of electrical engineering.

Hardware

Flipper Zero is based on a dual-core ARM architecture STM32WB55 microcontroller, which has 256 Kb of RAM and 1 MB of Flash storage. The first core is 64 MHz Cortex-M4 runs main firmware. The second core is 32 MHz Cortex-M0 runs STMicroelectronics proprietary firmware that implements Bluetooth Low Energy protocol. For radio transmitting and receiving in 300–900 MHz radio frequency range, a Texas Instruments CC1101[9] chip is used, which supports amplitude-shift keying (ASK) and frequency-shift keying (FSK) modulations. Unlike software-defined radio, the CC1101 chip cannot capture raw radio signals. This limitation requires the user to pre-configure the modulation parameters before receiving a radio signal, otherwise the signal will be received incorrectly.

Firmware

Flipper Zero Firmware Architecture

The Flipper Zero firmware is based on the FreeRTOS operating system, with its own software abstraction over the hardware layer. The firmware is mostly written in the C programming language, with occasional use of C++ in third-party modules. The system uses multitasking in combination with an event-driven architecture to organize the interaction of applications and services executed in a single address space and communicating through a system of queues and events. The system can be executed from both random-access memory (RAM) and read-only memory (ROM). Execution from RAM is used to deliver over-the-air (OTA) firmware updates.

The firmware consists of the following components:

  • FuriCore – provides an API for interaction with the scheduler and multithreading. FuriCore abstracts and extends the functionality of the FreeRTOS scheduler and adds additional system primitives.
  • FuriHal – provides an API for interaction with hardware.
  • Services and applications – the main functionality of the device. Sub-GHz, Infrared, RFID, NFC, etc are applications for user interaction. Graphical user interface (GUI), command-line interface (CLI), Notification, Storage, etc are additional APIs for applications development.
  • A set of libraries and drivers - covers various communication protocols, device drivers, file system drivers, and developer tools.

User and system data is stored in built-in flash memory, which is based on the LittleFS library. Interaction with the file system on the SD card is implemented using the FatFs library.

The build system is based on the SCons tool with additional tooling written in Python. For compilation, the system uses its own open toolchain based on GNU Compiler Collection.

Applications

  • A version of the video game Doom was ported to Flipper Zero[10][11]

References

  1. "Flipper Zero turns hacking into a Tamagotchi-style game". Engadget. Retrieved 15 Mar 2022.
  2. "Meet Flipper, the Tamagotchi You Feed by Hacking Stuff". Vice. Retrieved 15 Mar 2022.
  3. "Flipper Zero raising a staggering $4.8 million on a Kickstarter". Hackaday. Retrieved 30 June 2022.
  4. Janssen, Gerard (2022). Hackers: over de vrijheidsstrijders van het internet. Amsterdam: Thomas Rap. p. 145. ISBN 9789400408371. OCLC 1259050992.
  5. "This Unassuming Little Device Can Hack Your Smart Home". Gizmodo. Retrieved 28 May 2022.
  6. "How The Flipper Zero Hacker Multitool Gets Made And Tested". Hackaday. Retrieved 30 June 2022.
  7. "Flipper Zero Electronic Schematics". docs.flipperzero.one. Retrieved 30 June 2022.
  8. "Flipper Zero Firmware Source Code". GitHub. Retrieved 30 June 2022.
  9. "CC1101 — Low-power Sub-1 GHz wireless transceiver". ti.com. Retrieved 30 June 2022.
  10. xoreo (2022-10-11), Doom Flipper Zero edition, retrieved 2022-10-17
  11. "You Can Now Play Doom in the Tamagotchi-Like Hacking Device". www.vice.com. Retrieved 2022-10-17.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.