Commit Graph

6874 Commits

Author SHA1 Message Date
MX 2762ff2def gangqi serial validator and fix add manually 2024-09-06 10:11:43 +03: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
WillyJL c6326915ae DialogEx: Fix NULL ptr crash (#3878) 2024-09-05 22:13:03 +01:00
Valera Olexienko 20aff7320f Infrared: Add Airwell AW-HKD012-N91 (#3856)
Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 21:14:57 +01: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 2683f950a7 return back after merge 2024-09-05 22:14:40 +03:00
MX 56530ee61c Merge remote-tracking branch 'OFW/dev' into dev 2024-09-05 22:10:41 +03:00
あく 62bbf406be Debug: use proper hook for handle_exit in flipperapps (#3842)
* Debug: use proper hook for handle_exit in flipperapps
* fbt: flash firmware for `blackmagic` target

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com>
2024-09-05 19:55:43 +01:00
hedger feb1b2f349 [FL-3882] Clean up of LFS traces (#3849)
* updater, storage: removed mentions of LFS from public APIs; updated corresponding strings
* rpc: updated include path

Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 18:44:22 +01:00
porta c9791a280a [FL-3884] Proper integer parsing (#3839)
* feat: strint_to_uint32 and tests
* fix: permit explicit bases and prefixes
* feat: strint_to_{int32,uint16,int16}
* feat: strint_to_u?int64
* refactor: replace strtol, strtoul, sscanf with strint_to_*
* fix: api symbols
* docs: document parameter `end` of strint_to_uint_32
* style: apply changes requested by hedger
* refactor: fix pvs-studio diagnostic
* style: apply changes requested by CookiePLMonster
* fix: unused var
* fix: pointer type
* refactor: convert atoi to strint_to_*
* fix: strint_to_uint8 doesn't actually exist ._ .
* fix: memory leak
* style: address review comments
* Toolbox: couple small comments in the code and doxygen comment update. SubGhz, Loader: fix strint usage.
* Loader: fix incorrect cast

Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 18:02:42 +01:00
Skorpionm 6a48dd28f5 SubGhz: Fix RPC status for ButtonRelease event (#3838)
Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 16:10:12 +01:00
Filipe Paz Rodrigues 4a58930247 CCID: App changes (#3837)
- Keep ccid_callback and buffer as private to the iso7816_handler
- set usb ccid callback from iso7816_handler (to ensure the right structure is being passed)
- make iso7816 related code independent from furi related code (goal is to make it independently testable)
- rename vars

Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 16:04:32 +01:00
Georgii Surkov fa2d611652 [FL-3889] 5V on GPIO control for ext. modules (#3830)
* Make file extensions case-insensitive
* Bump protobuf version
* Add support for 5V control via RPC
* Add support for 5V control via Expansion protocol
* Update running instructions
* Update expansion module documentation
* Prettify condition
* Test RPC OTG control as well
* Assets: bump protobuf version
* Disable PVS license expiration check, fix PVS warnings

Co-authored-by: あく <alleteam@gmail.com>
2024-09-05 15:40:14 +01:00
DerSkythe b040db07f4 Gui: Add up and down button drawing functions to GUI elements (#3804)
* feat: Add up and down button drawing functions to GUI elements
  Two button drawing functions, elements_button_up and elements_button_down, have been added to the GUI elements. These functions allow a button to be drawn at the top left and top right corner of the canvas respectively, with an accompanying string and icon. The underlying layout and design of these buttons is defined within these functions.
* feat: Add null checks for Canvas parameter in button functions
  Added furi_check to ensure the Canvas parameter is not null in elements_button_up and elements_button_down functions. This prevents potential crashes due to dereferencing a null pointer.

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-09-05 14:50:33 +01:00
あく f353e5708d Gui: change dialog_ex text ownership model (#3831)
* Gui: change dialog_ex text ownership model
* Gui: change text ownership model part 2
* Examples: fix DialogEx usage in number input
* Gui: fix nullptr dereference in DialogEx, proper reset procedure

Co-authored-by: hedger <hedger@users.noreply.github.com>
2024-09-05 14:32:48 +01:00
MX 24325e4418 gangqi add button parsing 2024-09-05 03:54:16 +03:00
MX b5a22512be upd changelog 2024-09-04 04:47:56 +03:00
MX 2e787dea47 merge ofw pr 3868 [ci skip]
by zinongli

LFRFID: Fix Guard GProxII False Positive and 36-bit Parsing
2024-09-04 04:46:31 +03:00
MX ed4c5eb7bf saflok parser improvements [ci skip]
by @zinongli & @xtruan & @zacharyweiss & @evilmog & @Arkwin
2024-09-04 04:35:02 +03:00
MX b7bc060ad5 Merge remote-tracking branch 'OFW/astra/3766-unlock-crash-fix' into dev 2024-09-04 04:28:51 +03:00
MX d2f0fbad45 Merge remote-tracking branch 'OFW/astra/gproxii-fix-detection' into dev 2024-09-04 03:17:29 +03:00
MX 00a0c6ee1a Merge remote-tracking branch 'OFW/dev' into dev 2024-09-04 03:16:37 +03:00
MX 8fd8e4f3d9 Add marantec24 and gangqi protocols
Protocols by @xMasterX / captures for gangqi by @mishamyte
2024-09-04 03:16:30 +03:00
Astra a8482984de Fix incorrect parity starting bit 2024-09-03 17:42:49 +09:00
Astra 14a49759ce Fix detection of GProx II cards and false detection of other cards as GProx II 2024-09-03 17:20:49 +09:00
Zinong Li 5272eb7550 Publishing T5577 page 1 block count macro (#3864)
* publishing t5577 page 1 block count macro

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-09-02 18:03:56 +09:00
Astra 7c88a4a8f1 [FL-3899] Add the Procrastination animation (#3860)
* Add the Procrastination animation: sorry been putting off doing this for a while
* Reformat images
2024-08-29 21:21:25 +09:00
Astra 0e71813749 Fix crash on Ultralight unlock 2024-08-26 20:46:49 +09:00
MX 889c80e900 upd changelog 2024-08-18 01:09:44 +03:00
MX a6d0efef83 fix any path for badusb favourites 2024-08-18 01:01:14 +03:00
MX 6a93494506 Settings: Show free flash amount in internal storage info [ci skip]
by Willy-JL
2024-08-18 00:45:12 +03:00
MX 02553d0c6b upd changelog 2024-08-17 18:02:56 +03:00
MX 67dae229a9 merge ofw PR 3840 [ci skip]
GUI: NumberInput small improvements by Willy-JL
2024-08-17 17:54:06 +03:00
MX 6a689d29ce Merge branch 'OFW/skorp/subghz_fix_rpc' into dev [ci skip] 2024-08-17 16:11:31 +03:00
SkorP e15a56c988 SubGhz: Fix RPC status for ButtonRelease event 2024-08-12 15:47:45 +04:00
MX f6ebc13342 Merge remote-tracking branch 'OFW/dev' into dev 2024-08-12 12:41:59 +03:00
hedger 99655c15e4 scripts: improved size validator for updater image (#3834)
* scripts: update.py: reduced reservation size for flash memory; improved error messages; added checks for updater images
* scripts: update: fixed imports

Co-authored-by: あく <alleteam@gmail.com>
2024-08-12 10:09:41 +09:00
あく 702db8925f Desktop: seaprate callbacks for dolphin and storage subscriptions (#3836)
* Desktop: seaprate callbacks for dolphin and storage subscriptions
* dolphin: renamed local variable to prevent unintended overrides

Co-authored-by: hedger <hedger@nanode.su>
2024-08-12 09:51:43 +09:00
MX 98af4f4a71 upd changelog 2024-08-10 20:55:44 +03:00
MX c211803076 upd subremote [ci skip] 2024-08-10 15:33:50 +03:00
MX 19c13baa48 fix rgb patch [ci skip] 2024-08-10 15:06:39 +03:00
MX 7b56945538 oops 2024-08-10 14:50:48 +03:00
MX 821f5bab18 Merge remote-tracking branch 'OFW/dev' into dev 2024-08-10 14:47:38 +03:00
MX 6c0dadad3f after merge fixes 2024-08-10 14:42:11 +03:00
MX bf6c6c231f [FL-3841] FuriEventLoop Pt.2 (#3703)
* Abstract primitive type from main logic in FuriEventLoop
* Remove message_queue_i.h
* Add stream buffer support for event loop
* Add semaphore support for event loop
* Add temporary unit test workaround
* Make the linter happy
* Add mutex support for event loop
* Implement event subscription and unsubscription while the event loop is running
* Implement edge events
* Fix leftover logical errors
* Add event loop timer example application
* Implement flag-based edge trigger and one-shot mode
* Add event loop mutex example application
* Only notify the event loop if stream buffer is at or above its trigger level
* Reformat comments
* Add event loop stream buffer example application
* Add event loop multiple elements example application
* Improve event loop flag names
* Remove redundant signal handler as it is already handled by the event loop
* Refactor Power service, improve ViewHolder
* Use ViewHolder instead of ViewDispatcher in About app
* Enable ViewDispatcher queue on construction, deprecate view_dispatcher_enable_queue()
* Remove all invocations of view_dispatcher_enable_queue()
* Remove app-scened-template
* Remove missing library from target.json
* Port Accessor app to ViewHolder
* Make the linter happy
* Add example_view_holder application, update ViewHolder docs
* Add example_view_dispatcher application, update ViewDispatcher docs
* Replace FuriSemaphore with FuriApiLock, remove workaround delay
* Fix logical error
* Fix another logical error
* Use the sources directive to speed up compilation
* Use constant define macro
* Improve FuriEventLoop documentation
* Improve FuriEventLoop documentation once more
* Bump API Version
* Gui: remove redundant checks from ViewDispatcher
* Gui: remove dead ifs from ViewDispatcher

Co-authored-by: Silent <CookiePLMonster@users.noreply.github.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-08-10 14:32:27 +03:00
MX 1e5dd001fe after merge fixes 2024-08-10 14:22:33 +03:00
MX 28272f7a7a Storage: remove LFS (#3577)
* Storage: drop internal storage

* Storage: rollback some unnecessary changes

* Storage: rollback some unnecessary changes part 2

* Storage: cleanup various defines and int handling. Ble: allow short connection interval if internal flash is not used.

* Storage: do not return storage if it is not ready

* Save PIN code to RTC, update settings

* Simplify the code, clean up includes

* Rearrange some code

* apps: storage_move_to_sd: conditionally enable with --extra-define=STORAGE_INT_ON_LFS

* Load Desktop settings automatically

* Redirect /any to /ext

* Abolish storage_move_to_sd app

* Remove as many mentions of ANY_PATH as possible

* Fix desktop settings wrongly not loading

* Improve desktop settings handling and strings

* Load BLE settings and keys automatically

* Improve BLE configuration procedure

* Do not load bluetooth keys twice if they were already loaded

* Load dolphin state automatically

* Fix merge artifact

* Load notification settings automatically

* Update desktop settings strings

* Load expansion settings automatically

* Do not use thread signals to reload desktop settings

* Load region data automatically, separate to its own hook

* Improve ble behaviour with no keys

* Fix Dolphin state not resetting correctly

* Add a status check

* Make Desktop save its own settings

* Check result when taking and releasing mutex

* Improve default thread signal handling in FuriEventLoop

* Make bt service in charge of saving settings, add settings api

* Fix a deadlock due to timer thread not receiving time

* Lock core2 when reinitialising bt

* Update clang-format

* Revert "Update clang-format"

This reverts commit d61295ac063c6ec879375ceeab54d6ff2c90a9a1.

* Format sources with clang-format

* Revert old stack size for desktop settings

* Allocate big struct dynamically

* Simplify PIN comparison

* Save pointer to storage in Desktop object

* Fix region provisioning for hardware regions

* Remove stale TODO + siimplify code

* Clean up region.c

* Use sizeof instead of macro define

* Limit PIN length to 10 for consistency

* Emit a warning upon usage of /any

* Add delay after finding flipper

* Remove unnecessary delay

* Remove all mentions of STORAGE_INT_ON_LFS

* Remove littlefs and internal storage

* Remove all possible LittleFS mentions

* Fix browser tab in Archive

* Ble: fix connection interval explanation

* Bump API Symbols

* BLE: Update comments interval connection comments

* Storage: clear FuriHalRtcFlagStorageFormatInternal if set

---------

Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com>
2024-08-10 13:18:51 +03:00
MX 6c6d64f1bd ifdef fixes for subremote 2024-08-10 12:13:21 +03:00