unleashed-firmware/lib
hedger fcbcb6b5a8
Updater: resource compression (#3716)
* toolbox: compress: moved decompressor implementation to separate func
* toolbox: compress: callback-based api; cli: storage unpack command
* toolbox: compress: separate r/w contexts for stream api
* targets: f18: sync API
* compress: naming fixes & cleanup
* toolbox: compress: using hs buffer size for stream buffers
* toolbox: tar: heatshrink stream mode
* toolbox: compress: docs & small cleanup
* toolbox: tar: header support for .hs; updater: now uses .hs for resources; .hs.tar: now rewindable
* toolbox: compress: fixed hs stream tail handling
* updater: reworked progress for resources cleanup; rebalanced stage weights
* updater: single-pass decompression; scripts: print resources compression ratio
* updater: fixed warnings
* toolbox: tar: doxygen
* docs: update
* docs: info or tarhs format; scripts: added standalone compression/decompression tool for heatshrink-formatted streams
* scripts: tarhs: fixed parameter handling
* cli: storage extract command; toolbox: tar: guess type based on extension
* unit_tests: added test for streamed raw hs decompressor `compress_decode_streamed`
* unit_tests: compress: added extraction test for .tar.hs
* rpc: autodetect compressed archives
* scripts: minor cleanup of common parts
* scripts: update: now using in-memory intermediate tar stream
* scripts: added hs.py wrapper for heatshrink-related ops (single object and directory-as-tar compression)
* scripts: naming fixes
* Toolbox: export compress_config_heatshrink_default as const symbol
* Toolbox: fix various types naming
* Toolbox: more of types naming fixes
* Toolbox: use size_t in compress io callbacks and structures
* UnitTests: update to match new compress API
* Toolbox: proper path_extract_extension usage

Co-authored-by: あく <alleteam@gmail.com>
2024-06-30 11:38:48 +01:00
..
app-scened-template Api Symbols: replace asserts with checks (#3507) 2024-03-19 23:43:52 +09:00
bit_lib Api Symbols: replace asserts with checks (#3507) 2024-03-19 23:43:52 +09:00
ble_profile cleanup of various warnings from clangd (#3682) 2024-06-03 14:43:23 +01:00
cmsis_core [FL-3285] Removed STM32CubeWB module (#2608) 2023-05-09 06:30:33 +09:00
cxxheaderparser@ba4222560f [FL-2627] Flipper applications: SDK, build and debug system (#1387) 2022-09-15 02:21:03 +09:00
datetime Api Symbols: replace asserts with checks (#3507) 2024-03-19 23:43:52 +09:00
digital_signal Api Symbols: replace asserts with checks (#3507) 2024-03-19 23:43:52 +09:00
drivers cleanup of various warnings from clangd (#3682) 2024-06-03 14:43:23 +01:00
fatfs Fix spelling across some project files (#3128) 2023-10-10 04:01:17 +09:00
flipper_application ELF, Flipper application: do not crash on "out of memory" (#3664) 2024-06-17 16:40:47 +01:00
flipper_format fbt: doxygen target (#3510) 2024-03-21 01:32:53 +09:00
FreeRTOS-glue Furi: core refactoring and CMSIS removal part 2 (#1410) 2022-07-20 13:56:33 +03:00
FreeRTOS-Kernel@def7d2df2b FreeRTOS: update to 10.5.1 (#2353) 2023-02-04 04:09:20 +10:00
heatshrink@7398ccc916 [FL-3152] Screen streaming improvements (#2498) 2023-03-23 03:00:48 +10:00
ibutton [FL-3817] iButton: fix crash when deleting some keys (#3617) 2024-04-29 19:56:15 +09:00
infrared IR: Fix crash on duty_cycle=1 (#3568) 2024-04-07 22:21:25 +09:00
lfrfid [LFRFID] Added Support for Securakey Protocol (#3697) 2024-06-13 12:55:51 +01:00
libusb_stm32@6ca2857519 Add Initial CCID support (#3048) 2023-09-21 18:09:00 +09:00
littlefs@611c9b20db Littlefs updated to v2.7.0 (#2986) 2023-08-23 03:08:58 +09:00
mbedtls@edb8fec988 [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
microtar@1e921369b2 [FL-2263] Flasher service & RAM exec (#1006) 2022-04-13 23:50:25 +03:00
mjs [FL-3854] Disable logging in mjs +2k free flash (#3713) 2024-06-15 16:20:53 +01:00
mlib@62c8ac3e5d Lib: update m-lib to latest release. Update m-lib usage across project. (#818) 2021-11-15 20:09:40 +03:00
music_worker Api Symbols: replace asserts with checks (#3507) 2024-03-19 23:43:52 +09:00
nanopb@afc499f9a4 [FL-2052] New build system based on scons (#1269) 2022-06-26 21:00:03 +09:00
nfc [FL-3857] NFC Ultralight Original write support (#3718) 2024-06-17 15:20:35 +01:00
one_wire [FL-3792] Fix iButton emulation regression (#3519) 2024-03-20 23:37:16 +09:00
print [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
pulse_reader cleanup of various warnings from clangd (#3682) 2024-06-03 14:43:23 +01:00
signal_reader cleanup of various warnings from clangd (#3682) 2024-06-03 14:43:23 +01:00
stm32wb_cmsis@d1b860584d [FL-3285] Removed STM32CubeWB module (#2608) 2023-05-09 06:30:33 +09:00
stm32wb_copro@64a060d91f Update radio stack to v1.19.0 (#3545) 2024-04-09 16:01:55 +09:00
stm32wb_hal@cfd0dd258c [FL-3285] Removed STM32CubeWB module (#2608) 2023-05-09 06:30:33 +09:00
subghz SubGHz: Princeton - Add check for wrong guard_time values and show guard time in UI (#3719) 2024-06-17 14:49:09 +01:00
toolbox Updater: resource compression (#3716) 2024-06-30 11:38:48 +01:00
u8g2 [FL-3729] Gui: unicode support, new canvas API (#3322) 2024-03-19 19:23:06 +04:00
update_util Updater: resource compression (#3716) 2024-06-30 11:38:48 +01:00
appframe.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
err.h [FL-3152] Screen streaming improvements (#2498) 2023-03-23 03:00:48 +10:00
freertos.scons [FL-3174] Dolphin builder in ufbt; minor ufbt/fbt improvements (#2601) 2023-05-03 14:48:49 +09:00
heatshrink.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
lfs_config.h [FL-2794] Lib: update LFS to v2.5.0, lower update free page limit (#1706) 2022-09-05 20:40:20 +03:00
libusb_stm32.scons [FL-3174] Dolphin builder in ufbt; minor ufbt/fbt improvements (#2601) 2023-05-03 14:48:49 +09:00
littlefs.scons [FL-3174] Dolphin builder in ufbt; minor ufbt/fbt improvements (#2601) 2023-05-03 14:48:49 +09:00
mbedtls.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
mbedtls_cfg.h [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
microtar.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
mlib.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
nanopb.scons [FL-3690] Libraries cleanup; u2f crypto rework to use mbedtls (#3234) 2023-12-01 18:16:48 +09:00
ReadMe.md ReadMe: update outdated bits and pieces (#3726) 2024-06-20 18:18:31 +01:00
SConscript Revert "TLSF memory allocator. Less free flash, moar free ram. (#3572)" (#3651) 2024-05-16 18:43:27 +04:00
stm32wb.scons ble: profile rework (#3272) 2024-02-16 14:20:45 +07:00

Structure

  • app-scened-template - C++ app library
  • bit_lib - library for working with bits/bytes directly
  • ble_profile - BLE Profiles source code
  • cmsis_core - CMSIS Core package, contain cortex-m core headers
  • cxxheaderparser - C++ headers parser, used by SDK bundler
  • datetime - DateTime library
  • digital_signal - Digital signal library: used by NFC for software implemented protocols
  • drivers - Various flipper drivers
  • fatfs - FatFS file system driver
  • flipper_application - Flipper application library, used for FAPs
  • flipper_format - Flipper File Format library
  • FreeRTOS-glue - Extra glue to hold together FreeRTOS kernel and flipper firmware
  • FreeRTOS-Kernel - FreeRTOS kernel source code
  • heatshrink - Heatshrink compression library
  • ibutton - ibutton library, used by iButton application
  • infrared - Infrared library, used by Infrared application
  • lfrfid - LF-RFID library, used by LF RFID application
  • libusb_stm32 - LibUSB for STM32 series MCU
  • littlefs - LittleFS file system driver, used by internal storage
  • mbedtls - MbedTLS cryptography library
  • microtar - MicroTAR library
  • mjs - MJs, javascript engine library
  • mlib - M-Lib C containers library
  • music_worker - MusicWorker library for playing midi and RTTTL files
  • nanopb - NanoPB library, protobuf implementation for MCU
  • nfc - NFC library, used by NFC application
  • one_wire - OneWire library, used by iButton application
  • print - Tiny printf implementation
  • digital_signal - Digital Signal library used by NFC for software implemented protocols
  • pulse_reader - Pulse Reader library used by NFC for software implemented protocols
  • stm32wb_cmsis - STM32WB series CMSIS headers, extends CMSIS Core
  • stm32wb_copro - STM32WB Copro library: contains WPAN and radio co-processor firmware
  • stm32wb_hal - STM32WB HAL library, extends STM32WB CMSIS and provides HAL
  • subghz - Subghz library, used by SubGhz application
  • toolbox - Toolbox library, contains various things that is used by Flipper firmware
  • u8g2 - u8g2 graphics library, used by GUI subsystem
  • update_util - update utilities library, used by updater