Commit Graph

712 Commits

Author SHA1 Message Date
Alexander Bays
0e3e1b352b Desktop / MNTM Settings: Directories and generic files support for Keybinds / Main Menu (#331)
* feat(Desktop): Directories support for keybinds

- Adds *RIGHT* button select in the file browser dialogs and changing the `Open File` action to `Open File/Directory` in `Settings > Desktop > Keybinds Setup`. This adds the ability to open to any directory in the Archive app, in addition to the default behavior of opening a file in it's default app.

* line order mixup

* Main Menu: Allow adding JS files (or any file)

- Normal files and directories are now able to be added to then main menu and are run in their appropriate apps.
- e.g. .txt files shown in text viewer, .js files are run in the JS Runner app, and folders are navigated to by the Archive app. All similar to the desktop keybinds functionality.
- Icons are also assigned appropriately based on the extensions, though more could probably be added to the `loader_menu_get_ext_icon` function.
- Also replaced some of the long arduous is_dir checks and just used the `storage_dir_exists` function since its already there and does the same.

* should be checking `ext` for NULL

* Move select_right at end of structs for binary compatibility

apps may blindly reach into these structs so need to keep the basics in same structure

for DialogsFileBrowserOptions this is even in public api and after compilation this would be incompatible with other firmwares even without reaching into private structs

* Select menu item / folder for directories too

* Move api below too

* Keep ofw order here too

* Refactor starting archive into desktop, less FuriString passing around

* Dont leave main menu when launching archive

* Simplify/fix a few things

* Handle folders in run_with_default_app()

* Update App -> Item naming in MNTM settings

* Fix build

* Explain pressing right

* Update changelog

---------

Co-authored-by: WillyJL <me@willyjl.dev>
2025-07-22 01:51:33 +00:00
WillyJL
bd88e42622 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-07-19 17:51:01 +01:00
MX
8ef9a07608 Subghz V2 Phoenix fully supported now
With big thanks to all contributors
 2022.08 - @Skorpionm
 2025.07 - @xMasterX & @RocketGod-git
2025-07-09 04:54:34 +03:00
MX
6ae1ce6861 upd api symbols 2025-07-06 01:36:26 +03:00
MX
aad07ed943 expansion and serial fixes and new api
by HaxSam & WillyJL
2025-07-05 17:57:30 +03:00
WillyJL
d38a3635f4 Merge remote-tracking branch 'fork-ofw/fix/noisy-uart-hang' into mntm-dev --nobuild 2025-07-02 08:38:04 +01:00
WillyJL
222c159211 FuriHalSerial: Fix RXFNE interrupt hang 2025-07-02 07:20:04 +01:00
MX
c81c136121 merge all nfc app changes
by WillyJL
2025-06-30 20:39:27 +03:00
MX
1382a6af46 submenu merge all changes
by WillyJL
2025-06-30 19:48:34 +03:00
WillyJL
9e1baf715e Merge remote-tracking branch 'fork-ofw/feat/nfc-type-4-final' into mntm-dev --nobuild 2025-06-29 03:43:52 +01:00
WillyJL
9671c878bc Sub-GHz: Move Weather, POCSAG & TPMS to ext apps 2025-06-24 04:08:16 +01:00
WillyJL
326c3a13de IR: "Decode only" mode, more intuitive learn scene buttons 2025-06-07 15:58:04 +01:00
WillyJL
93cece63a9 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-05-22 19:33:02 +01:00
MMX
0f713bc6e4 Merge pull request #899 from Leptopt1los/tm01x-dallas-write-support
TM01x Dallas write support
2025-05-14 18:36:02 +03:00
Methodius
e538bd7c8e tm01x dallas write support 2025-05-14 16:32:17 +03:00
Willy-JL
d480a53f91 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-04-30 05:56:51 +01:00
Mykhailo Shevchuk
c0e169a229 Attempt to auth with default 3DES key 2025-04-29 02:31:41 +03:00
Mykhailo Shevchuk
ef3d17ea4e Extracted TDES auth to separate method 2025-04-29 00:07:54 +03:00
Willy-JL
bc4bf99f77 Merge remote-tracking branch 'ul/dev' into mntm-dev 2025-04-23 04:21:50 +01:00
Willy-JL
af17d70e5c Merge remote-tracking branch 'ofw/dev' into feat/nfc-type-4 2025-04-22 01:42:37 +01:00
Dmitry422
8a0fb5df36 LCD Inversion refactoring 2025-04-13 23:43:43 +07: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
21c9852666 Merge remote-tracking branch 'ofw/dev' into mntm-dev --nobuild 2025-04-13 02:54:05 +01:00
MX
9a57b19bfb Merge remote-tracking branch 'OFW/dev' into dev [ci skip] 2025-04-12 19:08:58 +03:00
hedger
ddf77f58e3 sdk: bump API to force re-upload for the catalog (#4186) 2025-04-12 15:27:58 +04: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
MX
98728fe93c fix api to ofw 2025-04-10 21:03:59 +03:00
Dmitry422
5eacafa16d Start moving RGB backlight back to Notification service 2025-04-10 18:01:47 +07:00
Willy-JL
04415bf7dc Merge remote-tracking branch 'ofw/dev' into feat/nfc-type-4 2025-04-10 03:42:55 +01:00
Dmitry422
224d4e060b LCD Inversion finished by MMX 2025-04-09 23:37:30 +07:00
MX
cca87e3c0a Merge remote-tracking branch 'OFW/dev' into dev [ci skip] 2025-04-07 18:24:49 +03: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
MX
edb327e50a Merge remote-tracking branch 'OFW/dev' into dev 2025-04-07 18:01:37 +03: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
MX
3745ae2241 merge ofw pr 4136 [ci skip]
BadUSB: Full USB/BLE parameter customization, UI improvements, and more
by Willy-JL
2025-04-06 04:57:58 +03:00
MX
324b8ddb95 oops 2025-04-06 04:44:09 +03:00
MX
1385ea0ea0 some code cleanup
by Willy-JL
2025-04-06 03:00:37 +03:00
MX
c8fc2fa7b3 Merge remote-tracking branch 'OFW/dev' into dev 2025-04-06 01:54:22 +03:00
MX
4f5cba4cd1 Revert "Merge remote-tracking branch 'OFW/gsurkov/vcp_break_support' into dev [ci skip]"
This reverts commit fc25c9fba0, reversing
changes made to 41ae5d8981.
2025-04-05 23:41:23 +03: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
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
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
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
Willy-JL
7f46fe5d5c Merge remote-tracking branch 'ofw/dev' into mntm-dev --nobuild 2025-04-03 06:19:15 +01:00
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
MX
c9201a3bde Merge remote-tracking branch 'OFW/dev' into dev 2025-04-01 22:55:16 +03:00
Eric Betts
5786066512 BLE advertising improvements (#4151)
* Support longer advertised BLE UUID

* BLE: support manufacturer data

* Don't pair when GapPairingNone

* Add PR feedback

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-04-01 22:37:40 +04:00