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
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
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
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
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
WillyJL
3bd6ee03ef
GUI: Fix widget text scroll with 256+ lines ( #4160 )
...
Co-authored-by: hedger <hedger@users.noreply.github.com >
2025-03-31 19:11:05 +04:00
Willy-JL
ebb6194155
Merge branch 'fix/widget-textscroll-256' into mntm-dev
2025-03-26 11:35:11 +00:00
Willy-JL
d02f13bef1
GUI: Fix widget text scroll with 256+ lines
2025-03-26 07:37:43 +00:00
Alexander Bays
c3bfebb6e6
GUI: Add marquee 'Text Scroll' option ( #363 )
...
* GUI: Add marquee 'Text Scroll' option
- Adds the tiny `Text Scroll` option under `MNTM > Interface > General` to either use the standard scroll, or a new marquee style back and forth on any scrollable text.
- `elements_scrollable_text_line_centered` renamed to `elements_scrollable_text_line_ex` to be more general. Has `bool marquee`.
* Unnecessary switch here
* Apply setting internally
* Revert a few usages
* Update changelog
* Last thing
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2025-03-02 04:50:56 +00:00
Alexander Bays
adc66d78da
Clock: 12 hour "midnight format" ( #341 )
...
* Clock: 12 hour midnight format
- References #317 and adds the options `12:XX` and `00:XX` in `Settings > System > Midnight Format` to display the preferred clock format past midnight on all clocks (Desktop, Main Menu MNTM style, Lock screen and Nightstand clock app). "12:30 AM" -> "00:30" OR "12:30".
* Fix: Move midnight format setting out of furi_rtc
- Also felt like the midnight format setting was too out of place in `MNTM > Interface` with the 5 other submenu entries, so I put it in Misc for now.
* clock app external
* Moved midnight format setting into new `Interface > General`
* Update applications/main/momentum_app/scenes/momentum_app_scene_interface_general.c
* Update changelog
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2025-03-02 04:20:38 +00:00
Alexander Bays
3b96cc47a7
Main Menu: Refine CoverFlow menu style ( #379 )
...
* Main Menu: Refine CoverFlow menu style
- Rounds the corners of the cards
- Adds 1px margin around the center card
- Fixes vertical spacing of the cards, text label and the scrollbar.
* Update changelog
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com >
2025-03-02 04:04:19 +00: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
Willy-JL
bd2ee18e48
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2025-02-28 02:03:45 +00:00
Willy-JL
02e00498a1
BadKB: Rename code to BadUSB for easier merges
...
Still called BadKB for display name and appid
2025-02-28 00:06:57 +00:00
Willy-JL
268b694362
BadKB: Rewrite BadKB extras on "new" OFW BadUSB structure
...
- Mainly, HID interface abstractions and porting all BadKB options to it
- Tying up some loose ends, some things still not ideal but good enough
- Can customize BLE MAC address when BLE Remember is enabled
- Added BLE_ID command, alias for BT_ID (OFW BadUSB calls everything BLE)
2025-02-27 04:33:21 +00:00
MX
ec593e660c
Merge remote-tracking branch 'OFW/astra/3934-alarm-improvements' into dev
2025-02-25 02:06:05 +03:00
Aleksandr Kutuzov
00e64e8679
Merge remote-tracking branch 'origin/dev' into astra/3934-alarm-improvements
2025-02-25 06:18:42 +09: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
MX
b887d6af21
Merge remote-tracking branch 'OFW/dev' into dev [ci skip]
2025-02-21 05:18:29 +03:00
WillyJL
404764b660
GUI: Widget view extra options for JS ( #4120 )
...
* Fill option for widget frame
* Add widget circle element
* Add widget line element
* Fix missing include for InputType
* Fix missing comment
* Update api symbols
* Load .fxbm from file
* Fix copy pasta
* Add fill param to example
* Fix some comments
* Bump JS SDK 0.3
* Fix free
* Rename widget frame to rect
* Gui: add widget_add_frame_element backward compatibility macros
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2025-02-21 10:47:56 +09:00
MX
f242eef26f
Merge remote-tracking branch 'OFW/dev' into dev
2025-02-21 03:08:00 +03:00
Akiva-Cohen
4e9aa3883b
Updated Button Panel ( #4119 )
...
* updated button panel
* fixed mismateched .c and .h files
* Gui: extra events for ok button handling in button_panel
* Gui: extra events for other buttons handling in button_panel
Co-authored-by: あく <alleteam@gmail.com >
2025-02-21 06:57:28 +09:00
MX
aef8a97ab4
Merge remote-tracking branch 'OFW/dev' into dev
2025-02-20 18:40:54 +03:00
Willy-JL
30df72a835
Merge remote-tracking branch 'ofw/dev' into mntm-dev
2025-02-20 04:20:28 +00:00
Astra
2817666eb9
[FL-3774] Fix 5V on GPIO ( #4103 )
...
* Move OTG controls to the power service
* Accessor: add missing power service import
* Power: add is_otg_enabled to info and properly handle OTG enable with VBUS voltage present
* Power: method naming
* Power: add backward compatibility with old-style use of furi_hal_power
* Scripts: lower MIN_GAP_PAGES to 1
* SubGhz: fix incorrect logging tag
* SubGhz: delegate OTG management to power service
* Power: fix condition race, various improvements
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2025-02-20 12:37:52 +09:00
MX
486dc48a7a
Merge remote-tracking branch 'OFW/dev' into dev
2025-02-20 03:08:53 +03:00
Anna Antonenko
0f240c4dbc
[FL-3949] Universal IR signal selection ( #4085 )
...
* feat: universal ir signal selection
* fix: f18, format specifiers
* update labels with suggestions from the ui team
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com >
2025-02-20 08:58:55 +09:00
MX
45529e76e9
fix
2025-02-13 04:13:00 +03:00
MX
d57e2c9ef7
fmt
2025-02-13 03:56:22 +03:00
MX
e22669da96
fixes and corrections
2025-02-13 03:56:04 +03:00
Willy-JL
2242176a88
Asset Packs: Fix level-up anims not being themed
2025-02-06 01:05:06 +00:00
Willy-JL
c4d1328acc
Lock on boot by default if SD is missing
...
Setting defaults to ON, so removing SD card will lock on boot if PIN is set
Also changes that lock on boot will not apply if PIN is not set (what if no PIN set and no SD card, then lock keypad always? bad idea)
2025-02-05 02:10:54 +00:00
Willy-JL
69e9423712
Prevent autolock based on RPC too --nobuild
2025-02-05 01:58:32 +00:00
Willy-JL
8553132b71
Merge remote-tracking branch 'ul/dev' into mntm-dev
2025-02-05 01:57:25 +00:00