Initial state of project

Initial state of project

Firmware revamp, second PCB prototype, development roadmap

Initial state of project

Hardware release: F1B1C0.0

Current Flipper Zero prototype is based on board Version 0 (F1B1C0.0) that has a lot of bugs.

Firmware

During the early prototyping stages of Flipper Zero, we have used a lot of 3rd-party code, sketches, and dirty demos just as proof of concept, and didn't think too much about architecture. This code splits into many incompatible pieces of code, and some of them don’t even have an UI. This repo is cleaned from all the dirty demos and prepared for contributors, so we will start porting all the legacy code here, following the new architecture.

Release 0.1

Download release

You can run firmware locally (with HAL stub).

  • docker-compose exec dev make -C target_lo for build
  • docker-compose exec dev target_lo/build/target_lo for run

Read more in building instructions.

To do

Flipper Development roadmap

  • Phase 0 (complete) Preparing for Kickstarter, UI prototyping, checking hardware, prototype protocol sniffer, tag readers, etc.
  • Phase 1. (Current) Set up developing routines for massive contributors activity, architecture and documentation. Building hardware rig for remote testing.
  • Phase 2. Start massive contributors program. Preparing Developments Kits for sending to few developers.
  • Phase 3. Next PCB release Version 1 (F2B0C1) and sending it to more contributors.
  • Phase 4. Release PCB based on STM32WB55RB and sending it to developers.
  • Phase 5. Making all repositories publicly open.

Tasks for phase 1: (Doing right now)

Right now we are working on clean architecture and documentation for contributors.

  • Finalize firmware core architecture and document it for contributors onboarding
  • Set up a test environment and CI
  • Create Flipper Zero software emulator with display and buttons Task #22
  • Set up integration between wiki and issues, configure wiki generator from doc files: Task #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
  • Transfer old code to new architecture

Next hardware release

We have finished the next version of PCB, where a lot of bugs are fixed, and now waiting for its manufacturing. This new board will be used as Developer Kit for early firmware development and will be sent to developers.