1
mirror of https://github.com/flipperdevices/flipperzero-firmware.git synced 2025-12-12 04:41:26 +04:00
Files
flipperzero-firmware/applications
Anna Antonenko 13333edd30 [FL-3954, FL-3955] New CLI architecture (#4111)
* feat: FuriThread stdin

* ci: fix f18

* feat: stdio callback context

* feat: FuriPipe

* POTENTIALLY EXPLOSIVE pipe welding

* fix: non-explosive welding

* Revert welding

* docs: furi_pipe

* feat: pipe event loop integration

* update f18 sdk

* f18

* docs: make doxygen happy

* fix: event loop not triggering when pipe attached to stdio

* fix: partial stdout in pipe

* allow simultaneous in and out subscription in event loop

* feat: vcp i/o

* feat: cli ansi stuffs and history

* feat: more line editing

* working but slow cli rewrite

* restore previous speed after 4 days of debugging 🥲

* fix: cli_app_should_stop

* fix: cli and event_loop memory leaks

* style: remove commented out code

* ci: fix pvs warnings

* fix: unit tests, event_loop crash

* ci: fix build

* ci: silence pvs warning

* feat: cli gpio

* ci: fix formatting

* Fix memory leak during event loop unsubscription

* Event better memory leak fix

* feat: cli completions

* Merge remote-tracking branch 'origin/dev' into portasynthinca3/3928-cli-threads

* merge fixups

* temporarily exclude speaker_debug app

* pvs and unit tests fixups

* feat: commands in fals

* move commands out of flash, code cleanup

* ci: fix errors

* fix: run commands in buffer when stopping session

* speedup cli file transfer

* fix f18

* separate cli_shell into modules

* fix pvs warning

* fix qflipper refusing to connect

* remove temp debug logs

* remove erroneous conclusion

* Fix memory leak during event loop unsubscription

* Event better memory leak fix

* unit test for the fix

* improve thread stdio callback signatures

* pipe stdout timeout

* update api symbols

* fix f18, formatting

* fix pvs warnings

* increase stack size, hope to fix unit tests

* cli: revert flag changes

* cli: fix formatting

* cli, fbt: loopback perf benchmark

* thread, event_loop: subscribing to thread flags

* cli: signal internal events using thread flags, improve performance

* fix f18, formatting

* event_loop: fix crash

* storage_cli: increase write_chunk buffer size again

* cli: explanation for order=0

* thread, event_loop: thread flags callback refactor

* cli: increase stack size

* cli: rename cli_app_should_stop -> cli_is_pipe_broken_or_is_etx_next_char

* cli: use plain array instead of mlib for history

* cli: prepend file name to static fns

* cli: fix formatting

* cli_shell: increase stack size

* cli: fix rpc lockup

* cli: better lockup fix

* cli: fix f18

* fix merge

---------

Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
Co-authored-by: あく <alleteam@gmail.com>
2025-04-02 22:10:10 +04:00
..
2025-02-20 12:37:52 +09:00
2024-02-12 18:16:58 +04:00

Structure

debug

Applications for factory testing the Flipper.

  • accessor - Wiegand server
  • battery_test_app - Battery debug app
  • blink_test - LED blinker
  • bt_debug_app - BT test app. Requires full BT stack installed
  • display_test - Various display tests & tweaks
  • file_browser_test - Test UI for file picker
  • keypad_test - Keypad test
  • lfrfid_debug - LF RFID debug tool
  • text_box_test - UI tests
  • uart_echo - UART mode test
  • unit_tests - Unit tests
  • usb_mouse - USB HID test
  • usb_test - Other USB tests
  • vibro_test - Vibro test

main

Applications for main Flipper menu.

  • archive - Archive and file manager
  • bad_usb - Bad USB application
  • gpio - GPIO application: includes USART bridge and GPIO control
  • ibutton - iButton application, onewire keys and more
  • infrared - Infrared application, controls your IR devices
  • lfrfid - LF RFID application
  • nfc - NFC application, HF rfid, EMV and etc
  • subghz - SubGhz application, 433 fobs and etc
  • u2f - U2F Application

services

Background services providing system APIs to applications.

  • applications.h - Firmware application list header

  • bt - BLE service and application

  • cli - Console service and API

  • crypto - Crypto cli tools

  • desktop - Desktop service

  • dialogs - Dialogs service: GUI Dialogs for your app

  • dolphin - Dolphin service and supplementary apps

  • gui - GUI service and API

  • input - Input service

  • loader - Application loader service

  • notification - Notification service

  • power - Power service

  • rpc - RPC service and API

  • storage - Storage service, internal + sdcard

settings

Small applications providing configuration for basic firmware and its services.

  • about - Small About application that shows flipper info
  • bt_settings_app - Bluetooth options
  • desktop_settings - Desktop configuration
  • dolphin_passport - Dolphin passport app
  • notification_settings - LCD brightness, sound volume, etc configuration
  • power_settings_app - Basic power options
  • storage_settings - Storage settings app
  • system - System settings

system

Utility apps not visible in other menus, plus few external apps pre-packaged with the firmware.

  • hid_app - BLE & USB HID remote
  • js_app - JS engine runner
  • snake_game - Snake game
  • storage_move_to_sd - Data migration tool for internal storage
  • updater - Update service & application