WillyJL
c37c67200e
Merge remote-tracking branch 'fork-ofw/fix/cli-delay' into mntm-dev
2025-07-23 00:19:56 +02:00
WillyJL
a27d092d51
Fix use after free crash
2025-07-23 00:01:00 +02:00
WillyJL
291ed9d1ed
CLI: Fix long delay with quick connect/disconnect
...
noticeable with qflipper, for some reason it sets DTR on/off/on again
so flipper starts CLI, stops it, then starts again
but cli shell is trying to print motd, and pipe is already broken
so each character of motd times out for 100ms
changing pipe timeout to 10ms works too, but is just a workaround
it didnt always happen, i think that variable time of loading ext cmds
made it so on ofw it usually manages to print motd before pipe is broken
on cfw with more ext commands it always hung, on ofw only sometimes
important part is bailing early in cli shell
in cli vcp i made it cleanup cli shell on disconnect so it doesnt stay
around after disconnecting usb, might free a little ram maybe
2025-07-22 17:17:36 +02:00
WillyJL
580211c97c
CLI: Fix long delay with quick connect/disconnect
...
noticeable with qflipper, for some reason it sets DTR on/off/on again
so flipper starts CLI, stops it, then starts again
but cli shell is trying to print motd, and pipe is already broken
so each character of motd times out for 100ms
changing pipe timeout to 10ms works too, but is just a workaround
it didnt always happen, i think that variable time of loading ext cmds
made it so on ofw it usually manages to print motd before pipe is broken
on cfw with more ext commands it always hung, on ofw only sometimes
important part is bailing early in cli shell
in cli vcp i made it cleanup cli shell on disconnect so it doesnt stay
around after disconnecting usb, might free a little ram maybe
2025-07-22 17:16:17 +02:00
WillyJL
9f2480aafc
CLI: Fix crash with date command --nobuild
...
Related: https://github.com/akopachov/flipper-zero_authenticator-companion/issues/47
2025-05-08 07:41:46 +01:00
WillyJL
c420cbb1a5
Desktop: Fix freeze on boot if PIN set ( #4193 )
2025-04-18 05:52:15 +01:00
Willy-JL
2583b19c50
Merge branch 'fix/pin-lock-frozen-boot' into mntm-dev
2025-04-18 05:46:40 +01:00
Willy-JL
e11c946ed6
Desktop: Fix freeze on boot if PIN set
2025-04-18 05:42:44 +01:00
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
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
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
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
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
Anna Antonenko
24fbfd1663
[FL-3956] CLI autocomplete and other sugar ( #4115 )
...
* 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
* 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
* fix merge
* fix merge
* cli_shell: fix autocomplete up/down logic
* cli_shell: don't add empty line to history
* cli_shell: fix history recall
* cli_shell: find manually typed command in history
* cli_shell: different up/down completions navigation
* fix formatting
* cli_shell: fix memory leak
* cli_shell: silence pvs warning
* test_pipe: fix race condition
* storage_cli: terminate on pipe broken
---------
Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com >
Co-authored-by: あく <alleteam@gmail.com >
2025-04-03 17:07:47 +04:00
Willy-JL
7f46fe5d5c
Merge remote-tracking branch 'ofw/dev' into mntm-dev --nobuild
2025-04-03 06:19:15 +01:00
Willy-JL
858526cae1
Revert "[FL-3909] CLI improvements, part I ( #3928 )" --nobuild
...
This reverts commit 0f831412fa .
This was reverted by OFW right after it was made, back in October 2024.
They are now getting back to implementing these features differently.
Thus, a revert is in order. But neofetch is staying :)
2025-04-03 02:22:36 +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
hedger
5fcaef25b0
Stricter constness for const data ( #4126 )
...
* libs: stricter constness for saving RAM with .rodata section; fbt: sdk: fixed signature generation for nested const params
* hal: additional fixes for constness in USB subsystem
* debug apps: additional usb-related fixes
* mjs: more consts for token parser
* fatfs: const driver struct
* hal: more consts for ble & nfc vars
* hal: made FuriHalSpiBusHandle static
* hal: made FuriHalI2cBusHandle static
* usb: restored previous api
* linter fixes
* API fixes
2025-03-31 19:23:32 +04:00
Willy-JL
ab85ec4cc9
Enable debug on flipper when attaching blackmagic --nobuild
2025-03-02 00:42:06 +00:00
Willy-JL
2f376edd7d
Merge remote-tracking branch 'ul/dev' into mntm-dev
2025-02-28 05:04:24 +00:00
MX
b38d239eb8
Merge remote-tracking branch 'OFW/hedger/more-constness' into dev [ci skip]
2025-02-24 21:18:11 +03:00
hedger
15a5e652e0
usb: restored previous api
2025-02-22 20:40:52 +00:00
hedger
b99f65dd9a
hal: additional fixes for constness in USB subsystem
2025-02-22 16:32:24 +00:00
hedger
b0835220ac
libs: stricter constness for saving RAM with .rodata section; fbt: sdk: fixed signature generation for nested const params
2025-02-22 16:05:56 +00:00
Willy-JL
f151527ffb
Move "info" CLI command back to flash --nobuild
...
Fixes FBT when API versions mismatch
2025-01-17 01:43:26 +00:00
dexv
dbbecd9e1f
CLI: Add 'clear' command and command suggestion ( #342 )
...
* Add 'clear' command and improve command suggestion in CLI
- Introduced a new CLI command 'clear' (alias 'cls') to clear the terminal screen.
- Enhanced command not found feedback by suggesting similar commands based on user input.
- Added a function to calculate string distance for better command matching.
* Review changes
* Update changelog
---------
Co-authored-by: dexv <89728480+DXVVAY@users.noreply.github.com >
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2025-01-13 02:44:09 +00:00
Willy-JL
f2011a446b
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2025-01-11 05:06:46 +00:00
MX
bd348cf72d
Merge remote-tracking branch 'OFW/dev' into dev
2024-12-21 17:37:08 +03:00
Anna Antonenko
8d078e4b8c
[FL-3927] FuriThread stdin ( #3979 )
...
* feat: FuriThread stdin
* ci: fix f18
* feat: stdio callback context
Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com >
Co-authored-by: あく <alleteam@gmail.com >
2024-12-19 05:38:43 +09:00
Willy-JL
1373f91de2
Merge remote-tracking branch 'ul/dev' into mntm-dev
2024-11-27 11:23:46 +00:00
MX
fc25c9fba0
Merge remote-tracking branch 'OFW/gsurkov/vcp_break_support' into dev [ci skip]
2024-11-26 05:19:11 +03:00
Georgii Surkov
e3c3edcc7e
Add send break support
2024-11-17 21:01:15 +00:00
Willy-JL
6f8cb3b6c4
Improve clarity of some error messages
2024-11-10 04:36:21 +00:00
WillyJL
2e7eedf291
CLI: More commands as plugins on SD -6KB DFU, refactor plugin wrapper, ( #276 )
...
* Unused icons to check later
* Exclude disabled icons from firmware
* Format
* CLI: Test moving more cmds to plugins
* CLI: Macro template for plugin wrapper
* Fix plugin filenames
* Retrofit older cli wrappers
* Fix unused
* Fix manifests
* Add explanation
* Revert "Unused icons to check later"
This reverts commit b7f98e344c .
* Revert "Exclude disabled icons from firmware"
This reverts commit ab62e99898 .
* Add back toplevel chat command
* Add DFU size to github comment
* Fix build
* Fix BT CLI preload fail
* Add these back
* Fix CLI command gpio preload fail
* Fix input command
* These can stay
* Fix negative size rounding
* Update changelog
* Fix DFU size calc
2024-11-04 09:42:25 +01:00
MX
37f76374a2
Merge remote-tracking branch 'OFW/dev' into dev
2024-10-18 14:30:37 +03:00
Willy-JL
019d896075
Merge remote-tracking branch 'ofw/dev' into js-backport-of-backport
2024-10-18 04:38:56 +01:00
porta
b723d463af
Revert "[FL-3909] CLI improvements, part I ( #3928 )" ( #3955 )
...
This reverts commit 0f831412fa .
Co-authored-by: あく <alleteam@gmail.com >
2024-10-17 17:12:27 +01:00
Ivan Barsukov
ca68c953c0
Add warning about stealth mode in vibro CLI ( #3957 )
2024-10-17 16:57:10 +01:00
Willy-JL
d8ef57ccb7
Merge remote-tracking branch 'ul/dev' into js-backport-of-backport
2024-10-16 18:57:58 +01:00
MX
4e5abdadff
fix cli breaking web flipper lab, remove color tags
2024-10-16 19:35:52 +03:00
Willy-JL
2f6faa1b7b
Merge remote-tracking branch 'ul/dev' into mntm-dev
2024-10-16 00:56:19 +01:00
Willy-JL
88dfe97a89
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2024-10-15 23:43:33 +01:00
MX
e3f393e505
Merge remote-tracking branch 'OFW/dev' into dev
2024-10-14 18:00:10 +03:00
porta
0f831412fa
[FL-3909] CLI improvements, part I ( #3928 )
...
* fix: cli top blinking
* feat: clear prompt on down key
* feat: proper-er ansi escape sequence handling
* ci: fix compact build error
* Make PVS happy
* style: remove magic numbers
* style: review suggestions
Co-authored-by: あく <alleteam@gmail.com >
2024-10-14 15:50:18 +01:00
Willy-JL
8b8d3b2833
Merge remote-tracking branch 'ul/dev' into mntm-dev
2024-09-27 01:48:29 +01:00