Flipper Zero Unleashed Firmware
Go to file
2022-06-26 21:28:08 +03:00
.github Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
applications adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
assets update manifest 2022-06-26 21:01:43 +03:00
brew-cask fix macOS builds & update changelog 2022-06-14 02:45:06 +03:00
core [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
debug [FL-2198], [FL-2161] NFC emulation refactoring (#968) 2022-02-02 22:59:28 +03:00
docker [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
documentation Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
firmware Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
lib Update nanopb 2022-06-26 21:28:08 +03:00
scripts adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
site_scons adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
.clang-format [FL-2520] FW build with -Wextra (#1185) 2022-05-06 16:37:10 +03:00
.drone.yml adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
.editorconfig Create .editorconfig (#889) 2021-12-15 14:33:52 +03:00
.gitattributes [FL-2156] Switch to smaller radio stack. (#923) 2021-12-23 19:24:09 +03:00
.gitignore Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
.gitmodules [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
Brewfile Merge branch 'fz-dev' into dev 2022-06-26 15:16:32 +03:00
CHANGELOG.md adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
CODE_OF_CONDUCT.md Code of Conduct (#739) 2021-10-02 20:32:18 +03:00
CODING_STYLE.md [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
docker-compose.yml [FL-2520] FW build with -Wextra (#1185) 2022-05-06 16:37:10 +03:00
fbt [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
fbt_options.py adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
fbt.cmd [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
firmware.scons [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
LICENSE Add LICENSE (#644) 2021-08-13 21:19:42 +03:00
Makefile [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
ReadMe.md adaptation to the new build system + fixes 2022-06-26 20:57:29 +03:00
SConstruct [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00

Flipper Zero Unleashed Firmware

fzCUSTOM

Welcome to Flipper Zero's Custom Firmware repo! Our goal is to make any features possible in this device without any limitations!

Please help us implement emulation for all dynamic (rolling codes) protocols and brute-force app!

Please use for experimental purposes only!



Our Discord Community:
Unofficial Discord Community


Update firmware

Get Latest Firmware from GitHub Releases



Update to the latest official firmware before proceeding



With offline update on flipper

Replace (CURRENT VERSION) with version that you downloaded from releases

  • Unpack flipper-z-f7-update-(CURRENT VERSION).tgz (or .zip) into any free folder on your PC or smartphone

  • You should find folder named f7-update-(CURRENT VERSION) that contains files like update.fuf, resources.tar and etc..

  • Remove microSD card from flipper and insert it into PC or smartphone (you can skip this step and upload all files using qFlipper)

  • Create new folder update on the root of the microSD card and move folder that you previously extracted from archive - f7-update-(CURRENT VERSION) into update on microSD card

  • So result should look like update/f7-update-(CURRENT VERSION)/ with all files in this folder on microSD card, remember iOS default Files app doesnt show all files properly (3 instead of 5), so you need to use another app for unpacking or use PC or Android

  • Verify that all files are present on your microSD card:

    • update/f7-update-(CURRENT VERSION)/flipper-z-f7-full-(CURRENT VERSION).dfu
    • update/f7-update-(CURRENT VERSION)/flipper-z-f7-updater-(CURRENT VERSION).bin
    • update/f7-update-(CURRENT VERSION)/resources.tar
    • update/f7-update-(CURRENT VERSION)/stm32wb5x_BLE_Stack_light_fw.bin
    • update/f7-update-(CURRENT VERSION)/update.fuf
  • After all you need to insert microSD card back into flipper, navigate into filebrowser, open this file update/f7-update-(CURRENT VERSION)/update.fuf

  • Update will start, wait for all stages, and when flipper started after update, you can upload any custom IR libs, and other stuff using qFlipper or directly into microSD card



With qFlipper

Replace (CURRENT VERSION) with version that you downloaded from releases

  • Connect your device and select Update from file then select flipper-z-f7-full-(CURRENT VERSION).dfu

  • And wait, if all flashed successfully - you can manually upload IR libs and other stuff to sd card

  • If you doing install for first time or migrating from official fw, unpack 2 folders from archive sd-card-(CURRENT VERSION).zip onto your microSD card



With USB DFU

  1. Download latest Firmware

  2. Reboot Flipper to Bootloader

  • Press and hold ← Left + ↩ Back for reset
  • Release ↩ Back and keep holding ← Left until blue LED lights up
  • Release ← Left

Replace (CURRENT VERSION) with version that you downloaded from releases

  1. Run dfu-util -D flipper-z-f7-full-(CURRENT VERSION).dfu -a 0

  2. If you doing install for first time or migrating from official fw, unpack 2 folders from archive sd-card-(CURRENT VERSION).zip to your microSD card



After install:

  • If you installed using .dfu - unpack 2 folders from archive sd-card-(CURRENT VERSION).zip to your microSD card




Where I can find IR, SubGhz, ... DBs, and other stuff?

Awesome Flipper Zero - Github



How to Build by yourself:

Clone the Repository

You should clone with

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

Build with Docker

Prerequisites

  1. Install Docker Engine and Docker Compose
  2. Prepare the container:
docker-compose up -d

Compile everything for development

docker-compose exec dev ./fbt

Compile everything for release + get updater package to update from microSD card

docker-compose exec dev ./fbt --with-updater COMPACT=1 DEBUG=0 updater_package

Check dist/ for build outputs.

Use flipper-z-{target}-full-{suffix}.dfu to flash your device.

If compilation fails, make sure all submodules are all initialized. Either clone with --recursive or use git submodule update --init --recursive.

Build on macOS

Check out documentation/fbt.md for details on building and flashing firmware.

macOS Prerequisites

Make sure you have brew and install all the dependencies:

brew bundle --verbose

Install Python packages required by assets build scripts: pip3 install -r scripts/requirements.txt

Compile everything for development

./fbt

Compile everything for release + get updater package to update from microSD card

./fbt --with-updater COMPACT=1 DEBUG=0 updater_package

Check dist/ for build outputs.

Use flipper-z-{target}-full-{suffix}.dfu to flash your device.

Apps included

Links

Project structure

  • applications - Applications and services used in firmware
  • assets - Assets used by applications and services
  • core - Furi Core: os level primitives and helpers
  • debug - Debug tool: GDB-plugins, SVD-file and etc
  • docker - Docker image sources (used for firmware build automation)
  • documentation - Documentation generation system configs and input files
  • firmware - Firmware source code
  • lib - Our and 3rd party libraries, drivers and etc...
  • site_scons - Build helpers
  • scripts - Supplementary scripts and python libraries home

Also pay attention to ReadMe.md files inside of those directories.