Commit Graph

1029 Commits

Author SHA1 Message Date
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
MX
8ca3581fb0 subghz bugfixes and experimental options 2025-03-15 07:23:23 +03: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
MX
6579b4195e add manually 2025-02-24 11:12:45 +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
fa2af5a826 fix naming 2025-02-20 04:41:02 +03:00
MX
cd94db3b91 FIX GANG QI 2025-02-20 04:39:28 +03:00
MX
1e3100e26e Merge remote-tracking branch 'OFW/dev' into dev 2025-02-20 04:22:42 +03:00
Justin Nesselrotte
3698fc8d02 Fixed repeat in subghz tx_from_file command (#4099)
* Fixed repeat in subghz tx_from_file command
* Fix PVS warnings

Co-authored-by: あく <alleteam@gmail.com>
2025-02-20 10:10:41 +09:00
Willy-JL
f2011a446b Merge remote-tracking branch 'ofw/dev' into mntm-dev 2025-01-11 05:06:46 +00:00
MX
d60c034c92 Merge remote-tracking branch 'OFW/dev' into dev 2024-12-18 10:48:30 +03:00
Astra
256c1a1140 [FL-3917] Add the ability to send a signal once via RPC (#4000)
* Add the ability to send a signal once

* Update protobuf

* Fix sending infrared signals

* Review changes

* Update protobuf

* Separate sending an IR signal once into a function

* Update protobuf module

---------

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
2024-12-17 13:12:55 +00:00
Willy-JL
88a474f604 Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-12-10 05:07:49 +00:00
MX
dd6e0a9b72 keeloq jolly motors add full support with add manually
thanks @pkooiman !
2024-12-06 11:53:09 +03: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
MMX
e4c8270824 SubGHz Keeloq Monarch decode (#3967)
Co-authored-by: あく <alleteam@gmail.com>
2024-10-31 11:27:54 +09:00
Willy-JL
ffd1ceaab4 Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-10-22 03:37:49 +01:00
MX
2441643ac6 subghz monarch add manually 2024-10-19 15:40:35 +03:00
MX
8cdb5619f5 keeloq add key 2024-10-19 15:19:57 +03:00
MX
37f76374a2 Merge remote-tracking branch 'OFW/dev' into dev 2024-10-18 14:30:37 +03: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
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
m7i-org
ae70945238 Sub-GHz: Fix GPS "Latitute" typo, switch to "Lat" and "Lon" in .sub files (#246)
* fix(subghz): s/Latitute/Latitude/

* feat(subghz): using Lat,Lon with fallback to older values

* Some speedup and fix fallbacks

* Update changelog

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2024-10-08 06:10:07 +02:00
Willy-JL
ba605e1c03 Merge remote-tracking branch 'ul/dev' into mntm-dev
Only partially merged 1ceb1eb256 and 09d6e4ee30
Changes to login in cc1101_ext.c and adding setting are ignored
2024-10-07 04:00:01 +01:00
MX
1ceb1eb256 Allow to disable control of GPIO pin on rx/tx states in subghz [ci skip]
in radio settings with debug ON, settings is saved on microsd, please don't use unless you know what you are doing
2024-10-05 08:44:21 +03:00
Willy-JL
16415fcce4 Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-10-01 14:32:09 +01:00
MX
bdb402b068 frequency analyzer multiple fixes
fix scenes crash, fix button logic
fix wrong calls to int module
make worker more OFW like, remove ext module unused code
2024-09-29 04:05:09 +03:00
Willy-JL
62ce89e41e Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-09-24 05:47:20 +01:00
MX
0df33899eb Frequency analyzer fixes and improvements
disable ext module due to lack of required hardware on them and incorrect usage of freq analyzer, like trying to receive "signals" with it (from the space??), while it should be used only to get frequency of the remote placed around 1-10cm around flipper's left corner

Also fix possible GSM mobile towers signal interference by limiting upper freq to 920mhz max

Fix dupliacted freq lists and use user config for nearest freq selector too (finally)
2024-09-20 06:35:46 +03:00
m7i-org
df273950cc Sub-GHz: Show satellites count with an icon (#215)
* feat(subghz): show satellites if enabled

Replaces the display of the number of satellites during SubGHz scanning. If GPS is enabled (an an external module connected) it will blink a GPS icon with the number of sats currently in range (even if zero).
Using a 10x10px "positioning" icon that replaces the SubGHz icon on the bottom right.

* Revert api version to ofw release

* f18 too

* Tweak icon a little

* Update changelog

* Format

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2024-09-18 01:43:30 +02:00
Willy-JL
26959f73d8 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2024-09-10 01:03:42 +02:00
MX
5da447a2b0 more chance to generate working remote at gangqi 2024-09-09 04:11:00 +03:00
Willy-JL
2b5b6543d6 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2024-09-07 19:14:22 +02:00
Silent
8672a1d94c Replace all calls to strncpy with strlcpy, use strdup more, expose strlcat (#3866)
strlcpy doesn't zero the buffer and ensures null termination,
just like snprintf

strlcat is already used by mjs and it's a safe alternative to strcat,
so it should be OK to expose to apps
2024-09-07 17:16:56 +01:00
Willy-JL
45fab3cf3d Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-09-07 00:16:52 +02:00
MX
4d8777d3a0 deduplicated
per @mishamyte request :))
2024-09-06 12:14:02 +03:00
MX
2762ff2def gangqi serial validator and fix add manually 2024-09-06 10:11:43 +03:00
Willy-JL
16859a41b9 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2024-09-06 02:00:42 +02:00
MX
0ad8c67ab6 one byte 2024-09-06 00:55:29 +03:00
MX
eed32aca77 Merge remote-tracking branch 'OFW/dev' into dev 2024-09-06 00:48:44 +03:00
MX
a4eebd7ad6 Add hollarm 42bit protocol and more
custom button support and add manually support for new protocols
2024-09-06 00:46:29 +03:00
RebornedBrain
49e1ae6e87 [FL-3895] Broken file interaction fixes (#3852)
* Show error screen if corrupted filed has been loaded
* Added rpc error codes and error processing to NFC
* Made iButton scene on_enter handler clear to prevent showing scene before file is loaded
* Added rpc error codes and error processing to iButton
* Made lfRfid scene on_enter handler clear to prevent showing scene before file is loaded
* Added rpc error codes and error processing to lfRfid
* Made SubGHz scene on_enter handler clear to prevent showing scene before file is loaded. Also moved file_name_tmp formatting logic to a separate function
* Now function returns loading status and starts rx only if load succeeded
* Added show error logic on tx_button start
* Introduced rpc error codes for infrared
* Adjusted rpc scene logic to show scene only when
loading is fine
* Added new  list of rpc errors which are common within several applications
* Removed same enums from apps
* Same rpc error in different apps replaced with common value from rpc error code list
* SubGHz error codes now start from RpcAppSystemErrorCodesReserved value
* Infrared error codes now start from RpcAppSystemErrorCodesReserved value
* Removed unused enum
* Now all rpc error codes are more generalized and can be used among all apps without any specific enums
* Removed specific error codes, now rpc error codes are used instead
* RPC: no plurals in enums

Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 20:54:49 +01:00
MX
56530ee61c Merge remote-tracking branch 'OFW/dev' into dev 2024-09-05 22:10:41 +03:00