979af6c165
* add delay function * todo about delay_isr * remove arduino defines and fix all apps to use core-api/hal-api * delay for local target * remove warnings of task_equal * fix BSP_SD_Init * fix USBD_static * grio read constant pointer to gpio * add TODO about ISR context * const void* arg for pubsub api * mark unused functions * app pointers now pointed to constant apps * fix printf format * fix "unused" warnings in local target * fix const pin read in local target * fix int to pointer warnings in local target * power read mutex error fix * delete old makefile * add -werror Co-authored-by: Aleksandr Kutuzov <aku@plooks.com> Co-authored-by: aanper <mail@s3f.ru> |
||
---|---|---|
.github | ||
applications | ||
assets | ||
bootloader | ||
core | ||
core-rs | ||
debug/FreeRTOS | ||
docker | ||
firmware | ||
lib | ||
make | ||
wiki | ||
wiki_static | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
docker-compose.yml | ||
flipper-zero-cla.md | ||
README.md | ||
syntax_check.sh | ||
wiki-deploy.sh |
Flipper Zero Firmware community repo
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.
We are open for changes! You can suggest changes for any part of the code, wiki, guidelines, workflow, automation, etc.
If you are deary to start, please read contribution guide about creating issue, editing wiki, improving codebase and configuring environment.
Developer blog
You can read project updates in our developer blog:
Firmware
Update firmware
Flipper Zero's firmware consists of two components: Bootloader and main firmware. Bootloader controls firmware update process over USB. You need working bootloader installed before update firmware over USB.
-
Download latest Firmware ⚠️ TODO permanent link to latest firmware from master ⚠️
-
Reboot Flipper to Firmware update mode
-
Run
dfu-util -D firmware.bin -a 0 -s 0x08008000:leave
Build from source
You can run firmware locally (with HAL stub):
docker-compose exec dev make -C firmware TARGET=local APP_TEST=1 run
for running testsdocker-compose exec dev make -C firmware TARGET=local APP_*=1 run
for running examples (seeapplications/applications.mk
for list of applications/examples)
Or you can use your dev. board:
docker-compose exec dev make -C firmware TARGET=f2 APP_*=1 flash
for build and flash dev board (see applications/applications.mk
for list of applications/examples)
Architecture and components
Flipper consists of the two main parts:
- Core: OS, HAL, FS, bootloader, FURI
- Applications: features like RFID or Tamagotchi, and also background tasks like button debouncing and backlight control.
User Interface
Features
- Basic Features
- SD-card
- Sub-1 GHz radio (Transceiver Based on CC1101 chip for 315/433/868 MHz)
- 125 kHz RFID
- Infrared
- iButton contact keys
- USB
- Bluetooth
- GPIO/HW Modules
- NFC
- U2F
- Tamagotchi
- Plugins
Hardware
Tools
Links
- Discord server: flipperzero.one/discord
- Project website: flipperzero.one
- Kickstarter page: kickstarter.com
- Forum: forum.flipperzero.one