flipperzero-firmware/ReadMe.md
rusdacent 0c7a8edf51
[FL-1533] CI refactoring (#601)
* rename artifacts
* add workflow with date
* add debug
* Add branch name to artifact name and rm genpic job
* Add branch name to artifact name for upload job
* Add branch restrictions for dev and user branches
* Add branch restrictions for dev and user branches
* Add cleanup workspace for upload job
* Test ignore branch
* Test release CI workflow
* Rename release CI
* Add pre-release trigger
* Rm branch restriction for CI
* Add release trigger
* rm branch restriction for CI
* rm genpic job
* Github: refactor actions, move linting to parallel actions, separate forlder for artifacts, build cleanup
* Github: build date and commit hash on branches and tag on tags
* Github: minor artifacts name cleanup
* Github: decontaminate previous build leftovers
* Github: better decontamination and release build SUFFIX
* Github: fetch before decontamitation
* Github: change decontamination logic, jump to first commit if submodules are broken
* ReadMe: update links to latest firmware and images

Co-authored-by: あく <alleteam@gmail.com>
2021-07-24 16:53:02 +03:00

69 lines
2.2 KiB
Markdown

# Flipper Zero Firmware community repo
[![Discord](https://img.shields.io/discord/740930220399525928.svg?label=&logo=discord&logoColor=ffffff&color=7389D8&labelColor=6A7EC2)](http://flipperzero.one/discord)
<img src="https://habrastorage.org/webt/eo/m0/e4/eom0e4btudte7nrhnyic-laiog0.png" />
Welcome to [Flipper Zero](https://flipperzero.one/)'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
<a href="https://update.flipperzero.one/">Get Latest Firmware from Update Server</a>
Flipper Zero's firmware consists of three components:
- Core2 firmware set - 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](https://update.flipperzero.one)
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`
<img src="https://habrastorage.org/webt/uu/c3/g2/uuc3g2n36f2sju19rskcvjzjf6w.png" />
1. Run `dfu-util -D full.dfu -a 0`
# Build from source
`docker-compose exec dev make -C firmware flash` for build and flash dev board (see `applications/applications.mk` for list of applications/examples)
# Links
* Task tracker: [Jira](https://flipperzero.atlassian.net/)
* Discord server: [flipperzero.one/discord](https://flipperzero.one/discord)
* Project website: [flipperzero.one](https://flipperzero.one)
* Kickstarter page: [kickstarter.com](https://www.kickstarter.com/projects/flipper-devices/flipper-zero-tamagochi-for-hackers)
* Forum: [forum.flipperzero.one](https://forum.flipperzero.one/)