fat update for readme

This commit is contained in:
aanper 2020-08-18 20:18:09 +03:00
parent 9d1559920c
commit 202bf64cba
3 changed files with 61 additions and 49 deletions

101
README.md
View File

@ -1,36 +1,66 @@
# Flipper Zero Firmware community repo
![](https://github.com/Flipper-Zero/wiki/blob/master/images/firmware-wiki-header.gif)
This repo contains [Flipper Zero](https://flipperzero.one/zero)'s Firmware core, cleaned from all dirty demos, and prepared for contributors. 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.
![](https://github.com/Flipper-Zero/wiki/blob/master/images/firmware-wiki-header.gif)
Welcome to [Flipper Zero](https://flipperzero.one/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.
# Building
# Current state of Flipper developement
See [Building instructions](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Firmware#building)
## Hardware
# How to contribute
У нас есть плата версии [Version 0 (F1B1C0)](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware-version-F1B1C0.0) с кучей багов
To contribute to code or to wiki make the following steps:
(тут фотка платы и мб фотки костылей).
1. Read this wiki
2. Read [contribution guide](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Contributing)
3. Ensure you read and sign [Flipper CLA](https://cla-assistant.io/glitchcore/flipper-cla-host)
4. Read Flipper [Roadmap](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Flipper-roadmap)
## Firmware
# Project structure
```
├── app # App
├── target_f1 # target f1
├── target_lo # local target (for linux)
├── wiki # Documentation (wiki) generates from this files
└── wiki-deploy.sh # Script to generate Wiki from local .md files
```
В процессе подготовки к кампании мы прототипировали работу с разными протоколами, графический интерфейс. Весь этот код вскоре будет опубликован здесь. Current code cleaned from all dirty demos and prepared for contributors.
# UI
Сейчас мы проектируем архитектуру. You can run firmware locally (with HAL stub).
Common UI feature (menu, screens, features) at [UI page](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/UI)
* `docker-compose exec dev make -C target_lo` for build
* `docker-compose exec dev target_lo/build/target_lo` for run
# Features
(подробнее о сборке смотрите [building instructions](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Firmware#building)).
# Flipper developement roadmap
У нас такой план:
* **Phase 0** Preparing for Kickstarter, prototyping UI, checkng hardware, prototype protocol sniffer, tag readers, etc. (compelete).
* **Phase 1.** Разобраться с процессами, документацией и архитектурой (on now). Сейчас у нас нет железок для всех контрибьюторов, поэтому важно сделать стенд для удаленного запуска тестов и сделать эмулятор.
* **Phase 2.** Позвать толпу контрибьюторов, отбирать тех, кому высылать комплект железа
* **Phase 3.** Сделать плату [Version 1 (F2B0C1)](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware-version-F2B0C1.1) и разослать ее контрибьюторам. Начать отлаживать на железе.
* **Phase 4.** Сделать плату с блютузом на основе STM32WB55RB и разослать ее контрибьюторам.
# Task for phase 1: что нужно делать прямо сейчас
* Finalize firmware core architecture and document it for contributors onboarding. You can see progress in [Core project](https://github.com/Flipper-Zero/flipperzero-firmware-community/projects/3)
* Set up a test environment and CI. You can see progress in [Environment project](https://github.com/Flipper-Zero/flipperzero-firmware-community/projects/2)
* Create Flipper Zero software emulator with display and buttons [Task #22](https://github.com/Flipper-Zero/flipperzero-firmware-community/issues/22)
* Set up integration between wiki and issues, configure wiki generator from doc files: [Task #16](https://github.com/Flipper-Zero/flipperzero-firmware-community/issues/16)
* Finish the basic wiki pages: create feature description, UI sketches, links to related project/code, documentation for protocols/
* Make basic code examples [Task #15](https://github.com/Flipper-Zero/flipperzero-firmware-community/issues/15)
* Transfer old code to new architecture
**We are open to changes.** You can suggest changes to any part of the code, wiki, guidelines, workflow, automation, etc.
Если вы уже готовы нам помочь — read [contribution guide](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Contributing) about creating issue, editing wiki, improve codebase and configure environment.
# Firmware
**[Firmware page](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Firmware)**
Flipper consists of two main parts:
* Core: OS, HAL, FS, bootloader, FURI
* Applications: features like RFID or Tamagotchi, and also background tasks like button debouncing and control the backlight.
## UI
Common UI feature (menu, screens...) at [UI page](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/UI)
## Features
* [Basic Features](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Basic-features)
* [Sub-1 GHz radio](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Sub-1-GHz-radio) (Transceiver Based on CC1101 chip for 315/433/868 MHz)
@ -46,36 +76,9 @@ Common UI feature (menu, screens, features) at [UI page](https://github.com/Flip
* [USB](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/USB)
* [Plugins](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Plugins)
# PlatformIO & Arduino
* Easy IDE deploying
* Cross platform HID device without drivers
* Ready to use library for LCD, Buttons, CC1101, GPIO, Infrared, 125khz, Bluetooth? NFC?
# Hardware
[Hardware specification](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware-specification)
### Releases
All PCB releases named according to the following rules:
* `F` mean fw target. Different F-versions has different firmware.
* `B` mean body. Different B-versions has mechanical incompatibility. If B=0, PCB is not intended for installation in a case.
* `C` mean interConnections. If С=0, device contain single board and no interconnections. Otherwise, different C-versions is incompatible to each other.
* Number afer point mean sequential numbering of release.
List of releases:
* [Version 0 (F1B1C0)](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware-version-F1B1C0.0)
* [Version 1 (F2B0C1)](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware-version-F2B0C1.1)
### Hardware components
* LCD display [buydisplay.com](https://www.buydisplay.com/1-4-inch-graphic-128x64-lcd-module-serial-spi-st7565-black-on-white)
# Firmware
[Firmware description page](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Firmware)
**[Hardware page](https://github.com/Flipper-Zero/flipperzero-firmware-community/wiki/Hardware)**
# Links

View File

@ -2,6 +2,15 @@ _Overview of Flipper firmware architecture:_
![FW arch](https://github.com/Flipper-Zero/wiki/raw/master/images/flipper_fw_arch.png)
# Project structure
```
├── app # App
├── target_f1 # target f1
├── target_lo # local target (for linux)
├── wiki # Documentation (wiki) generates from this files
└── wiki-deploy.sh # Script to generate Wiki from local .md files
```
# HAL
We use STM32 HAL/LL. Description available here: [dm00105879.pdf](https://github.com/Flipper-Zero/wiki/raw/master/dm00105879-description-of-stm32f4-hal-and-ll-drivers-stmicroelectronics.pdf)

0
wiki/hw/Hardware.md Normal file
View File