No Description

あく 1ae3bc1a2d SubGhz: automatically select path based on frequency for static code emulation (#419) 4 years ago
.github 0c3a0a3312 [FL-1104] Fix NFC crash and missing NfcMessageTypeDeviceNotFound event (#400) 4 years ago
applications 1ae3bc1a2d SubGhz: automatically select path based on frequency for static code emulation (#419) 4 years ago
assets d1f523687e [FL-1090] Dolphin scenes (#402) 4 years ago
bootloader aa20a78b0e [FL-164] Add bootloader version (#417) 4 years ago
core aa20a78b0e [FL-164] Add bootloader version (#417) 4 years ago
core-rs 3c2711102c Target refactoring and cube update (#161) 5 years ago
debug 5439e232cc [FL-950] CC1101 Stage1, SPI Refactoring, Drivers layer (#386) 4 years ago
docker 6204c61cee [FL-1148] add openocd to docker image (#413) 4 years ago
firmware 239c174610 [FL-1062] Add cli commands for IrDA (#409) 4 years ago
flp 0d7395d05c [WIP] Flipper Devtool (#113) 5 years ago
lib aa20a78b0e [FL-164] Add bootloader version (#417) 4 years ago
make aa20a78b0e [FL-164] Add bootloader version (#417) 4 years ago
.clang-format e95db0eedd update AllowShortBlocksOnASingleLine param (not work) 5 years ago
.gitattributes eb2679b982 Refactor F2/local before F3 merge (#220) 5 years ago
.gitignore 0d7395d05c [WIP] Flipper Devtool (#113) 5 years ago
.gitmodules 5eba573f43 [FL-300] Launch applications from CLI (#380) 4 years ago
ReadMe.md 2ca70cc6a2 Refactoring CI for storage with updates (#339) 5 years ago
docker-compose.yml 748f7e4fc3 add dfu util to container, enable usb in container (#229) 5 years ago
flash_core1_main.sh 7243758b40 Update readme, add flashing scripts (#316) 5 years ago
flash_core2_ble.sh 7243758b40 Update readme, add flashing scripts (#316) 5 years ago
flash_otp_version.sh 3e281175da [FL-123] SubGhz static code replay (#410) 4 years ago
flash_wipe.sh 3b24f7ff96 Wipe flash throw readout protection script (#325) 5 years ago
flipper-zero-cla.md bd762eb83b Update flipper-zero-cla.md 5 years ago
syntax_check.sh 110a9efc3c [WIP] Add syntax check for rust and C\C++ code (#108) 5 years ago

ReadMe.md

Flipper Zero Firmware community repo

Discord

Welcome to Flipper Zero's Firmware repo! Our goal is to create nice and clean code along with good documentation, to make it a pleasure for everyone to work with. This repo will become completely public closer to the device shipping date.

Update firmware

Flipper Zero's firmware consists of three components:

  • Core2 firmware - proprietary componenets by ST: FUS + radio stack.
  • Core1 Bootloader - controls basic hardware initialization and loads firmware
  • Core1 Firmware - HAL + OS + Drivers + Applications

All 3 of them must be flashed in order described.

With STLink

Core2 flashing procedures

Prerequisites:

  • Linux / MacOs
  • Terminal
  • STM32_Programmer_CLI added to $PATH

One liner: ./flash_core2_ble.sh

Core1 Bootloader + Firmware

Prerequisites:

  • Linux / MacOs
  • Terminal
  • Arm gcc noneabi
  • openocd

One liner: ./flash_core1_main.sh

With USB DFU

  1. Download latest Firmware

  2. Reboot Flipper to Bootloader

    • Press and hold ← Left + ↩ Back for reset
    • Release ← Left and keep holding ↩ Back until blue LED lights up
    • Release ↩ Back
  3. Run dfu-util -D full_firmware_latest.bin -a 0 -s 0x08000000:leave

Build from source

docker-compose exec dev make -C firmware TARGET=f4 APP_RELEASE=1 flash for build and flash dev board (see applications/applications.mk for list of applications/examples)

Links