flipperzero-firmware/firmware/ReadMe.md

56 lines
1.3 KiB
Markdown

# Flipper firmware
What does it do?
- [x] RTOS
- [x] FuriHAL
- [x] FuriCore
- [x] Services
- [x] Applications
# Targets
| Name | Firmware Address | Reset Combo | DFU Combo |
|-----------|-------------------|-----------------------|-----------------------|
| f7 | 0x08000000 | L+Back, release both | L+Back, release Back |
Also there is a "hardware" ST bootloader combo available even on a bricked or empty device: L+Ok+Back, release Back, Left.
Target independent code and headers in `target/include` folders. More details in `documentation/KeyCombo.md`
# Building
## With dev docker image:
`docker-compose exec dev make -C firmware`
## With toolchain installed in path:
`make -C firmware`
## Build Options
- `DEBUG` - 0/1 - enable or disable debug build. Default is 1.
- `COMPACT` - 0/1 - enable or disable compiler optimizations. Significantly reduces binary size. Default is 0.
- `TARGET` - string - target to build. Default is `f7`.
- `RAM_EXEC` - 0/1 - whether to build full firmware or RAM-based stage for firmware update. 0 is default, builds firmware.
# Building self-update package
`make DEBUG=0 COMPACT=1 updater_package`
# Flashing
Using SWD (STLink):
`make -C firmware flash`
Or use DFU (USB):
`make -C firmware upload`
# Debug
Using SWD (STLink):
`make -C firmware debug`