Commit Graph

14158 Commits

Author SHA1 Message Date
Willy-JL
b7cc3c627c Merge remote-tracking branch 'ofw/dev' into mntm-dev 2025-04-16 06:11:46 +01:00
Anna Antonenko
34a3222ec4 [FL-3979] USB-UART bridge fix (#4189)
* cli_vcp: make enable/disable requests synchronous

* usb_uart_bridge: open and close vcp record once
2025-04-16 04:20:31 +01:00
Willy-JL
bcff30246f Update apps
- FlipWiFi: Added AP mode to host a network with custom HTML (by jblanked)
2025-04-15 05:03:32 +01:00
Willy-JL
c2dbdb5dd5 Loader: Fix event edge cases, fixes Apps hang 2025-04-15 04:05:52 +01:00
Willy-JL
2aba6cc6bf Fix build (?) 2025-04-14 09:00:58 +01:00
WillyJL
7515ea7401 Merge pull request #396 from Next-Flip/feat/nfc-plugin-mania
NFC: Protocol support plugins
2025-04-14 08:55:09 +01:00
Willy-JL
57d84c73af Update changelog 2025-04-14 08:54:43 +01:00
Willy-JL
8bedb187c0 Merge remote-tracking branch 'mntm/dev' into feat/nfc-plugin-mania 2025-04-14 08:52:19 +01:00
Willy-JL
5facd2a593 NFC: Improve loading of parser plugins 2025-04-14 08:52:02 +01:00
Willy-JL
4ec99873f0 Apps: Add Seos compatible (by bettse) 2025-04-14 08:27:21 +01:00
Willy-JL
1f336651b6 CLI: Fix JS plugin 2025-04-14 01:17:06 +01:00
Willy-JL
adde98f836 NFC: Fix MFC protocol support 2025-04-14 01:03:10 +01:00
Willy-JL
0c24138b04 FBT: Separate unknown symbol detection 2025-04-14 01:02:56 +01:00
Willy-JL
206aa94a54 Merge remote-tracking branch 'mntm/dev' into feat/nfc-plugin-mania 2025-04-13 04:00:00 +01:00
Alexander Bays
16fb7e44df GUI: Checkerboard overlay behind popup elements (#380)
* GUI: Checkerboard overlay behind popup elements

Adds setting 'Popup Overlay' (default ON) which draws a checkerboard pattern behind popups, like the Archive actions menu, keypad/pin lock modal, and the varitemlist locked message. Gives the illusion of separation from the popup element and the background content and is an aesthetic improvement.

* Refactor

* Update changelog

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2025-04-13 03:59:28 +01:00
Willy-JL
7fcf254733 NFC: Add missing API imports 2025-04-13 03:23:51 +01:00
Willy-JL
a7d5c2b56b NFC: Re-enable Asset Packs (?) 2025-04-13 03:01:52 +01:00
Willy-JL
a6e40f6937 NFC: Simplify some duplicate code 2025-04-13 03:01:36 +01:00
Willy-JL
399c72dd35 NFC: Split NfcProtocolSupport into plugins 2025-04-13 03:01:10 +01:00
Willy-JL
7b95117e32 NFC: Move api_resolver out of NfcSupportedCards 2025-04-13 02:56:44 +01:00
Willy-JL
21c9852666 Merge remote-tracking branch 'ofw/dev' into mntm-dev --nobuild 2025-04-13 02:54:05 +01:00
Willy-JL
f7da27f62c Loader: Share ViewHolder / Loading with LoaderMenu --nobuild 2025-04-13 02:37:04 +01:00
Willy-JL
1589e84a6b Archive: Fix setting items having Delete option 2025-04-12 23:28:55 +01:00
WillyJL
1eb57ba462 FBT: Fix for Python 3.13 (#4187)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-12 15:35:19 +04:00
hedger
ddf77f58e3 sdk: bump API to force re-upload for the catalog (#4186) 2025-04-12 15:27:58 +04:00
Willy-JL
4a26ecfb8c Update apps
- ESP Flasher: Bump Marauder 1.4.2 (by justcallmekoko)
- FlipDownloader: Renamed from FlipStore, added VGM firmwares from VGM-Library (by jblanked)
- FlipWorld: Added multiplayer, auto-updating, bugfixes and improvements (by jblanked)
- Picopass: 'Save as Seader' for iClass SE Captured with NR-MAC, SIO parsing from iceman/evildaemond talk (by bettse)
- Seader: Add SIO parsing from iceman/evildaemond talk (by bettse)
2025-04-12 11:36:55 +01:00
Willy-JL
b07ccb4ba0 Update changelog 2025-04-12 10:53:58 +01:00
Willy-JL
fea9b2e487 Merge branch 'fix/python-3.13' into mntm-dev 2025-04-12 10:39:39 +01:00
Willy-JL
98b85c44c8 FBT: Fix for Python 3.13 2025-04-12 10:39:13 +01:00
Willy-JL
bce27a1463 Archive: Fix memory leak with Search+Info --nobuild 2025-04-12 10:37:20 +01:00
Willy-JL
49d7ce7349 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2025-04-12 10:36:13 +01:00
WillyJL
868eb10381 SDK: Fix missing RECORD_CLI define (#4185)
* SDK: Fix missing RECORD_CLI define

* sdk: added compatibility `cli.h` header

* cli: updated porting comments

---------

Co-authored-by: hedger <hedger@nanode.su>
2025-04-12 07:21:39 +04:00
Anna Antonenko
e1bccf66b3 Fix NULL dereference in CLI completions (#4184)
* cli_completions: fix null dereference

* cli: mark free_blocks as parallel safe

* codeowners: add me to co-owners of cli
2025-04-11 23:38:28 +01:00
Anna Antonenko
096c088bf1 vcp, cli: Handle Tx/Rx events before Connect/Disconnect + extra fixes (#4181)
* cli_vcp: handle tx/rx before connext/disconnect

* cli_vcp: disable trace

* cli_perf: advanced error reporting

* cli_vcp: reset tx flag directly in event handler

* fix formatting

* cli_vcp: make tx flag volatile

* storage_settings: fix scene ids

* cli_shell: add safety check to set_prompt

* cli_registry: move from bptree to dict, fix memory leak

* cli_vcp: go back to message queue for event signaling

* loader: move BeforeLoad event even earlier

* fix formatting
2025-04-11 14:53:10 +04:00
Pablo Mazzini
5f66425671 SubGhz: added support for 42-bit Prastel variation (#4178)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-07 20:13:45 +04:00
Eric Betts
4dd123fd8a BLE: Slightly increase mfg_data size (#4177)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-07 19:16:42 +04:00
Anna Antonenko
3d02063bce fbt: Deterministic STARTUP order & additional checks (#4179)
* unit_tests: clear startup order

* fam: ensure unique STARTUP order

* fbt: warn on same .order values within a group leading to non-determinitic builds

* fbt: better formatting for app order warning

---------

Co-authored-by: hedger <hedger@nanode.su>
2025-04-07 16:45:09 +04:00
Anna Antonenko
eb0f5ef8c0 [FL-3947] Pinning of settings options (#4077)
* feat: pinning settings in favorites

* include archive in unit tests fw

* change settings icon

* update text with suggestions from the ui team

* Small touch of constness

---------

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-04-07 03:17:58 +04:00
RebornedBrain
f07048d1b0 [FL-3902] NFC app now can launch MFKey32 (#4117)
* feat: app chaining

* add `launch_current_app_after_deferred`, remove `get_referring_application`

* fix naming

* new api

* fix f18

* Added new function which enqueues external app from nfc app

* Added path to MFKey32 app

* Button "Crack nonces in MFKey32" added to ReadMenu scene

* SaveConfirm scene adjusted to move to different scenes depending on state

* SaveSuccess scene now moves to different scenes depending on SaveConfirm scene state

* MfKeyComplete scene shows different text when MFKey.fap present on the device

* Now MfKeyClassic scene can run external app

* fix deferred launches after errors

Co-authored-by: Anna Antonenko <portasynthinca3@gmail.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-04-07 01:49:22 +04:00
Anna Antonenko
6b5d006690 [FL-3953] Application chaining (#4105)
* feat: app chaining

* add `launch_current_app_after_deferred`, remove `get_referring_application`

* fix naming

* new api

* fix f18

* fix deferred launches after errors

* fix: memory leak

* Updater: MIN_GAP_PAGES = 0

* loader: loader_get_application_launch_path doc

* loader: fix freeze

* loader: reject mlib, reduce code size

* loader: generic synchronous call, reduce size

* loader: reject furi_string, reduce size

* apps: debug: removed order field from manifests since it is no longer meaningful

---------

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-04-05 20:22:05 +04:00
Anna Antonenko
dac1457f0a [FL-3963] Move JS modules to new arg parser (#4139)
* js: value destructuring and tests

* js: temporary fix to see size impact

* js_val: reduce code size 1

* i may be stupid.

* test: js_value args

* Revert "js: temporary fix to see size impact"

This reverts commit f51d726dbafc4300d3552020de1c3b8f9ecd3ac1.

* pvs: silence warnings

* style: formatting

* pvs: silence warnings?

* pvs: silence warnings??

* js_value: redesign declaration types for less code

* js: temporary fix to see size impact

* style: formatting

* pvs: fix helpful warnings

* js_value: reduce .rodata size

* pvs: fix helpful warning

* js_value: reduce code size 1

* fix build error

* style: format

* Revert "js: temporary fix to see size impact"

This reverts commit d6a46f01794132e882e03fd273dec24386a4f8ba.

* style: format

* js: move to new arg parser

* style: format

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-05 03:17:30 +04:00
Anna Antonenko
7192c9e68b [FL-3965] Separate cli_shell into toolbox (#4175)
* cli_shell: separate into toolbox

* fix: cmd flags

* fix formatting

* cli: increase default stack depth

* cli_shell: fix loader lock logic

* cli: fix command flags

* fix f18

* speaker_debug: fix

* cli_registry: fix docs

* ufbt: rename cli target back

* cli: rename app and record

* cli: fix and simplify help command

* cli_master_shell: fix ext commands

* fix formatting

* cli: rename master to main

* fix formatting

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-05 02:58:58 +04:00
Willy-JL
e7fd9a43cc CLI: Fix VCP with lock on boot + allow locked RPC 2025-04-04 14:57:46 +01:00
Willy-JL
81581c79b5 Spring cleaning 2025-04-04 13:18:36 +01:00
Willy-JL
32ad9ea25b Revert "Merge remote-tracking branch 'OFW/gsurkov/vcp_break_support' into dev" --nobuild
This reverts commit fc25c9fba0, reversing
changes made to 41ae5d8981.
2025-04-04 12:09:48 +01:00
Willy-JL
7e3a65dfd3 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2025-04-04 11:51:56 +01:00
Anna Antonenko
6f852e646c docs: badusb arbitrary modkey chains (#4176) 2025-04-03 23:48:09 +01:00
hedger
09c61ecbde cli: fixed free_blocks command (#4174)
* cli: fixed free_blocks command - regression after new heap implementation

* github: updated codeowners
2025-04-03 20:42:40 +01:00
Anna Antonenko
5dcf6b55ef [FL-3928, FL-3929] CLI commands in fals and threads (#4116)
* 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 completions

* more key combos

* commands in fals

* move commands out of flash

* ci: fix errors

* speedup cli file transfer

* merge fixups

* fix f18

* 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_shell: give up pipe to command thread

* fix formatting

* fix: format

* fix merge

* fix. merge.

* cli_shell: fix detach ordering

* desktop: record_cli -> record_cli_vcp

* cli: fix spelling, reload/remove ext cmds on card mount/unmount

* cli: fix race conditions and formatting

* scripts: wait for CTS to go high before starting flipper

* scripts: better race condition fix

* REVERT THIS: test script race condition fix

* Revert "REVERT THIS: test script race condition fix"

This reverts commit 3b028d29b07212755872c5706c8c6a58be551636.

* REVERT THIS: test script fix

* scripts: sleep?

* cli: updated oplist for CliCommandTree

* Revert "REVERT THIS: test script fix"

This reverts commit e9846318549ce092ef422ff97522ba51916163be.

* cli: mention memory leak in FL ticket

---------

Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-04-03 21:39:53 +04:00
Francesco Pompò
fa09a18483 Added Vivax and Sansui under Elitelux section (#4173)
Apparently both the mentioned Elitelux and Vivax models are the same, so they share the same codes. Sansui is a brand that is also associated with them as one of the available Sansui codes is the same as this one. This code might also work for the non-smart version of the Vivax TV, the TV-32LE114T2S2, but it has not been tested.

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-03 17:14:47 +04:00