mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2024-12-24 22:07:14 +03:00
Update ReadMe.md
This commit is contained in:
parent
2bfa985b20
commit
a7b0afbfa8
146
ReadMe.md
146
ReadMe.md
@ -1,52 +1,38 @@
|
||||
# Flipper Zero Unleashed Firmware
|
||||
|
||||
<a href="https://ibb.co/5Fgtgmg"><img src="https://i.ibb.co/rsRTRYR/image.png" alt="image" border="0"></a>(https://discord.gg/58D6E8BtTU)
|
||||
|
||||
<a href="https://ibb.co/wQ12PVc"><img src="https://i.ibb.co/wQ12PVc/fzCUSTOM.png" alt="fzCUSTOM" border="0"></a>
|
||||
|
||||
Welcome to [Flipper Zero](https://flipperzero.one/)'s Custom Firmware repo!
|
||||
Our goal is to make any features possible in this device without any stupid limitations! Please help us realize emulation for all dynamic (rolling codes) protocols and brute-force app!
|
||||
Welcome to Flipper Zero's Custom Firmware repo!
|
||||
Our goal is to make any features possible in this device without any limitations!
|
||||
|
||||
# Clone the Repository
|
||||
Please help us realize emulation for all dynamic (rolling codes) protocols and brute-force app!
|
||||
|
||||
### This software is for experimental purposes only and is not meant for any illegal activity/purposes. <br> We do not condone illegal activity and strongly encourage keeping transmissions to legal/valid uses allowed by law. <br> Also this software is made without any support from Flipper Devices and in no way related to official devs.
|
||||
### Please use for experimental purposes only!
|
||||
|
||||
|
||||
<br>
|
||||
<br>
|
||||
Our Discord Community:
|
||||
<br>
|
||||
<a href="https://discord.gg/58D6E8BtTU"><img src="https://discordapp.com/api/guilds/937479784148115456/widget.png?style=banner4" alt="Unofficial Discord Community"></a>
|
||||
|
||||
You should clone with
|
||||
```shell
|
||||
$ git clone --recursive https://github.com/Eng1n33r/flipperzero-firmware.git
|
||||
```
|
||||
|
||||
# Update firmware
|
||||
|
||||
[Get Latest Firmware from Update Server](https://github.com/Eng1n33r/flipperzero-firmware)
|
||||
[Get Latest Firmware from GitHub Releases](https://github.com/Eng1n33r/flipperzero-firmware)
|
||||
|
||||
Flipper Zero's firmware consists of two components:
|
||||
- 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
|
||||
- Create new folder `update` on the root of the sdcard and move folder from archive `f7-update-(CURRENT VERSION)` into `update`
|
||||
- So it should be like `update/f7-update-(CURRENT VERSION)/update.fuf` and other files, 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
|
||||
|
||||
- Core2 firmware set - proprietary components by ST: FUS + radio stack. FUS is flashed at factory and you should never update it.
|
||||
- Core1 Firmware - HAL + OS + Drivers + Applications.
|
||||
- After all you need to insert microSD card back into flipper, navigate into filebrowser, open this file
|
||||
|
||||
They both must be flashed in order described.
|
||||
`update/f7-update-(CURRENT VERSION)/update.fuf`
|
||||
- Update will start, wait for all stages, when flipper is started after update, you can upload any custom [IR libs](https://github.com/logickworkshop/Flipper-IRDB), and other stuff using qFlipper or directly into microSD card
|
||||
|
||||
## With STLink
|
||||
|
||||
### Core1 Firmware
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- Linux / macOS
|
||||
- Terminal
|
||||
- [arm-gcc-none-eabi](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads)
|
||||
- openocd
|
||||
|
||||
One liner: `make flash`
|
||||
|
||||
### Core2 flashing procedures
|
||||
|
||||
Prerequisites:
|
||||
|
||||
- Linux / macOS
|
||||
- Terminal
|
||||
- STM32_Programmer_CLI (v2.5.0) added to $PATH
|
||||
|
||||
One liner: `make flash_radio`
|
||||
|
||||
## With USB DFU
|
||||
|
||||
@ -56,13 +42,21 @@ One liner: `make flash_radio`
|
||||
- Press and hold `← Left` + `↩ Back` for reset
|
||||
- Release `↩ Back` and keep holding `← Left` until blue LED lights up
|
||||
- Release `← Left`
|
||||
<!-- ![Switch to DFU sequence](https://habrastorage.org/webt/uu/c3/g2/uuc3g2n36f2sju19rskcvjzjf6w.png) -->
|
||||
|
||||
3. Run `dfu-util -D full.dfu -a 0`
|
||||
3. Run `dfu-util -D flipper-z-f7-full-(CURRENT VERSION).dfu -a 0`
|
||||
|
||||
# Build with Docker
|
||||
# How to Build by yourself:
|
||||
|
||||
## Prerequisites
|
||||
## Clone the Repository
|
||||
|
||||
You should clone with
|
||||
```shell
|
||||
$ git clone --recursive https://github.com/Eng1n33r/flipperzero-firmware.git
|
||||
```
|
||||
|
||||
## Build with Docker
|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. Install [Docker Engine and Docker Compose](https://www.docker.com/get-started)
|
||||
2. Prepare the container:
|
||||
@ -71,70 +65,31 @@ One liner: `make flash_radio`
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
## Compile everything
|
||||
### Compile everything for development
|
||||
|
||||
```sh
|
||||
docker-compose exec dev make
|
||||
```
|
||||
|
||||
### Compile everything for release + get updater package to update from microSD card
|
||||
|
||||
```sh
|
||||
docker-compose exec dev make updater_package TARGET=f7 DEBUG=0 COMPACT=1
|
||||
```
|
||||
|
||||
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 Linux/macOS
|
||||
### Flash everything with qFlipper
|
||||
|
||||
## macOS Prerequisites
|
||||
Connect your device and select `Update from file`
|
||||
then select **`flipper-z-{target}-full-{suffix}.dfu`**
|
||||
And wait, if all flashed successfully - you can manually upload IR libs and other stuff to sd card
|
||||
|
||||
Make sure you have [brew](https://brew.sh) and install all the dependencies:
|
||||
```sh
|
||||
brew bundle --verbose
|
||||
```
|
||||
|
||||
## Linux Prerequisites
|
||||
|
||||
### gcc-arm-none-eabi
|
||||
|
||||
```sh
|
||||
toolchain="gcc-arm-none-eabi-10.3-2021.10"
|
||||
toolchain_package="$toolchain-$(uname -m)-linux"
|
||||
|
||||
wget -P /opt "https://developer.arm.com/-/media/Files/downloads/gnu-rm/10.3-2021.10/$toolchain_package.tar.bz2"
|
||||
|
||||
tar xjf /opt/$toolchain_package.tar.bz2 -C /opt
|
||||
rm /opt/$toolchain_package.tar.bz2
|
||||
|
||||
for file in /opt/$toolchain/bin/* ; do ln -s "${file}" "/usr/bin/$(basename ${file})" ; done
|
||||
```
|
||||
|
||||
### Optional dependencies
|
||||
|
||||
- openocd (debugging/flashing over SWD)
|
||||
- heatshrink (compiling image assets)
|
||||
- clang-format (code formatting)
|
||||
- dfu-util (flashing over USB DFU)
|
||||
- protobuf (compiling proto sources)
|
||||
|
||||
For example, to install them on Debian, use:
|
||||
```sh
|
||||
apt update
|
||||
apt install openocd clang-format-13 dfu-util protobuf-compiler
|
||||
```
|
||||
|
||||
heatshrink has to be compiled [from sources](https://github.com/atomicobject/heatshrink).
|
||||
|
||||
## Compile everything
|
||||
|
||||
```sh
|
||||
make
|
||||
```
|
||||
|
||||
Check `dist/` for build outputs.
|
||||
|
||||
Use **`flipper-z-{target}-full-{suffix}.dfu`** to flash your device.
|
||||
|
||||
## Flash everything
|
||||
### Flash everything with ST-Link
|
||||
|
||||
Connect your device via ST-Link and run:
|
||||
```sh
|
||||
@ -143,10 +98,11 @@ make whole
|
||||
|
||||
# Links
|
||||
|
||||
* Discord: [discord.gg/58D6E8BtTU](https://discord.gg/58D6E8BtTU)
|
||||
* 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/)
|
||||
* Unofficial Discord: [discord.gg/58D6E8BtTU](https://discord.gg/58D6E8BtTU)
|
||||
|
||||
* Official Discord: [https://flipperzero.one/discord](https://flipperzero.one/discord)
|
||||
* Official Website: [flipperzero.one](https://flipperzero.one)
|
||||
* Official Forum: [forum.flipperzero.one](https://forum.flipperzero.one/)
|
||||
|
||||
# Project structure
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user