Commit graph

150 commits

Author SHA1 Message Date
MX
17dbb4105d
Merge remote-tracking branch 'OFW/dev' into dev 2024-06-06 00:35:40 +03:00
Georgii Surkov
20c4121f25
[FL-3832] Use static synchronisation primitives (#3679)
* Use static mutex
* Add static_assert checks
* Use static semaphore
* Fix formatting
* Use static stream buffer
* Use static timer
* Use static event group
* Increase allocation size for stream buffer
* Remove recursive bit from the mutex before freeing
* Prevent service tasks from ever returning
* Use static threads
* Do not realloc memory when changing stack size
* Use FuriSemaphore instead of raw FreeRTOS one in rpc_test
* Remove redundant includes
* Abolish FreeRTOS dynamic allocation
* Improve FuriMutex
* Improve FuriMessageQueue
* Remove redundant comments and parentheses
* Clean up code more
* Create service threads via a dedicated constructor
* Minor code improvements
* Update docs for FuriThread, FuriTimer
* Fix doxygen typo
* Use a bigger buffer for static StreamBuffer
* Furi: remove timer control block only when timer thread have completed all operations
---------

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-06-05 18:04:03 +01:00
hedger
03196fa110
cleanup of various warnings from clangd (#3682)
* cleanup of various warnings from clangs
* lfrfid_debug: cast fixes
* subghz: binraw: round->roundf
* furi: thread: updated internal stack size variable to size_t
* github: fail faster on unsuccessful build
* unit_tests: double trouble
2024-06-03 14:43:23 +01:00
MX
6a91588f52
Merge remote-tracking branch 'OFW/dev' into dev 2024-05-21 01:34:05 +03:00
hedger
9e42e00ead
Icons: compression fixes & larger dimension support (#3564)
* toolbox, gui: fixes for compressed icon handling
* ufbt: fixes for generated vscode project
* scripts: increased max dimensions for image converter
* icon type changes
* linter fixes; api sync
* gui: docs fix
* toolbox: fixed potential decoder buffer overflow
* minor cleanup
* fbt: sdk: suppressed deprecation warnings in API table
* toolbox: compress: added unit tests
   vscode: now installs resources for unit_tests
   unit_tests: now loads subghz region data
* toolbox: compress: review fixes, pt 1
* compress: now passes decoder buffer size as constructor argument; auto-resize decoder buffer; crash on failed icon decompression
* PVS fixes
* pvs fixes, pt2
* doxygen fixes
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* investigating unit test failures
* UnitTests: move all tests into plugins, brakes testing
* UnitTests: add plugin API and update plugin entrypoints
* UniTests: Test runner that works with plugins
* fbt: extra filtering for extapps to include in build
* UnitTests: filter tests by name
* loader: restored API table for unit_test build config
* Add various missing symbols to API table
* UnitTest: fail on plugin load error
* UnitTests: cleanup plugin api and reporting
* unit_tests: composite resolver
* UnitTests: remove unused declaration
* unit_tests, nfc: moved mock nfc implementation to libnfc
* unit_tests: api: removed redundant #define
* toolbox: compress: removed size_hint for icons; triggering furi_check on oversized icons
* gui: icon, icon_animation: removed size hit APIs
* Format Sources. Cleanup code.
* loader: refuse to start .fal as app
* toolbox: compress: fixed memory corruption in operations with small destination buffer; added unit tests for that case
* unit_tests: proper test skipping; better selective test interface
* unit_tests: moved 'loading' logging to proper location

Co-authored-by: あく <alleteam@gmail.com>
2024-05-20 18:23:47 +01:00
MX
96db11a0d6
Merge remote-tracking branch 'OFW/dev' into dev 2024-05-11 00:54:32 +03:00
あく
b12d43b765
Desktop: fix crash on autolock after restart in locked state (#3643)
* Desktop: fix crash on autolock after restart in locked state
* Desktop: switch to clock model to fix condition race in desktop lock.
2024-05-10 16:01:33 +01:00
MX
4965215c8d
Merge remote-tracking branch 'OFW/dev' into dev 2024-04-27 14:44:18 +03:00
あく
43c4381820
[FL-3814] Desktop: cleanup error popups (#3615)
* Desktop: cleanup error popups, add missing factory keys notification
* Desktop: enclave warning wording
2024-04-25 08:39:38 +09:00
WillyJL
e3ca293eee
Desktop/Loader: Unload animations before loading FAPs (#3573)
* Desktop: Unload animations before FAP is loaded
* Loader: Add API to start detached (returns instantly, queues event)
* Desktop: Fix early animation unload deadlocks
* Loader: remove redundant event
* Bump api symbols

Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: SG <who.just.the.doctor@gmail.com>
2024-04-09 22:42:03 +09:00
MX
294df5d1d4
desktop animations unload apilock revert
+ js layout fix and lfrfid ui fix
by Willy-JL
2024-04-06 05:40:53 +03:00
MX
344b624efc
fix apps loading logic 2024-04-05 08:57:34 +03:00
MX
1e324a7314
fix favorites lockup 2024-04-05 08:02:38 +03:00
MX
ef29ed149d
better subghz settings and more anim unload fixes
by Willy-JL
2024-04-05 06:36:35 +03:00
MX
ec4b8b8f5e
Various fixes
fixes by Willy-JL
nfc parser by zacharyweiss
js widget and path globals by jamisonderek
2024-04-05 01:25:03 +03:00
MX
7c6541e513
Merge remote-tracking branch 'OFW/dev' into dev 2024-04-04 21:11:59 +03:00
Sergei Gavrilov
5431257470
[FL-3765][FL-3737] Desktop: ensure that animation is unloaded before app start (#3569)
* Desktop: ensure that animation is unloaded before app start
* Desktop: unload animation only if it is loaded
2024-04-04 21:42:58 +09:00
MX
f02b03172a
Merge remote-tracking branch 'OFW/dev' into dev 2024-03-26 13:54:06 +03:00
FireFly7386
f5dff83595
Show the wrong PIN Attempt count on the login screen (#3495)
* now shows failed login attempt count
* fixed the memory leaking
* made some text changes
* removed second allocation of the furi string
* cleaned up code
* Changed Position of the Wrong Attempts Text + It removes if you typed an arrow
* aligned text to the center and switched to furi_string_reset insted of furi_string_set_str("")
* fixed weird behavior
* Desktop: cleanup pin scene code, better reporting on transition between states

Co-authored-by: あく <alleteam@gmail.com>
2024-03-26 16:18:44 +09:00
MX
9961dadee7
Gui: unicode support, new canvas API
merge ofw commit
2024-03-25 14:04:07 +03:00
MX
585b7f963d
Api Symbols: replace asserts with checks
merge ofw commit
2024-03-25 13:53:32 +03:00
あく
bcde0aefbd
[FL-3729] Gui: unicode support, new canvas API (#3322)
* Revert "Rollback #3305 and #3297 fix various rendering issues (#3307)"

This reverts commit 531ba24e9a.

* Gui: refactor canvas to use proper coordinate system types. Furi: new furi_break check macros. Desktop: proper types for negative offset.

* Desktop: proper types in desktop_view_locked_doors_draw

* Examples: update images example, off it goes

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2024-03-19 19:23:06 +04:00
あく
acc39a4bc0
Api Symbols: replace asserts with checks (#3507)
* Api Symbols: replace asserts with checks
* Api Symbols: replace asserts with checks part 2
* Update no args function signatures with void, to help compiler to track incorrect usage
* More unavoidable void
* Update PVS config and code to make it happy
* Format sources
* nfc: fix checks
* dead code cleanup & include fixes

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2024-03-19 23:43:52 +09:00
MX
62edabe9dd
Merge branch 'ofw_dev' into dev 2024-02-15 13:56:57 +03:00
Leptopt1los
feb45f6645
FuriHalRtc refactor: new datetime lib (#3386)
* datetimelib created
* datetimelib unit tests added
* firmware fixes to new datetimelib
* typo fix
* merge artifacts fixed, datetimelib renamed to datetime

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-02-15 10:44:41 +07:00
MX
e243ca47ba
Merge branch 'ofw_dev' into dev 2024-01-05 17:39:24 +03:00
あく
7eeb60e17e
Desktop: fix rpc unlock on pin input screen (#3334) 2024-01-03 17:00:56 +04:00
MX
bee48f483c
Merge branch 'ofw_dev' into nfcrefactoring 2023-11-01 21:07:33 +03:00
あく
aa06328516
Furi, FuriHal: remove FreeRTOS headers leaks (#3179)
* Furi: remove direct FreeRTOS timers use
* Furi: eliminate FreeRTOS headers leak. What did it cost? Everything...
* SubGhz: proper public api for protocols. Format Sources.
* Furi: slightly less redundant declarations
* Desktop: proper types in printf
* Sync API Symbols
* Furi: add timer reset and fix dolphin service, fix unit tests
* Furi: proper timer restart method naming and correct behavior in timer stopped state.

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-11-01 11:24:11 +04:00
Astra
bf8984a225
[FL-3647] Rename menu items related to dummy mode and sound (#3177)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-10-31 20:34:21 +09:00
あく
9af81ce8d0
Furi: cleanup crash use (#3175)
* Furi: optional message in furi_crash and furi_halt
* Consistent furi_crash use
* UnitTests: crash instead of assert
* furi: check: fixed macro for default arg
* unit_tests: fixed crashes everywhere
* lib: infrared: fixed PVS warnings
* furi: eliminated __FURI_ASSERT_MESSAGE_FLAG
* Furi: update check.h docs
* Furi: add check.h usage note
* Docs: grammar

---------

Co-authored-by: hedger <hedger@nanode.su>
2023-10-31 14:40:32 +04:00
MX
3bbb326c9c
Merge branch 'ofw_dev' into nfcrefactoring 2023-10-24 14:42:49 +03:00
gornekich
d92b0a82cc
NFC refactoring (#3050)
"A long time ago in a galaxy far, far away...." we started NFC subsystem refactoring.

Starring:

- @gornekich - NFC refactoring project lead, architect, senior developer
- @gsurkov - architect, senior developer
- @RebornedBrain - senior developer

Supporting roles:

- @skotopes, @DrZlo13, @hedger - general architecture advisors, code review
- @Astrrra, @doomwastaken, @Hellitron, @ImagineVagon333 - quality assurance

Special thanks:

@bettse, @pcunning, @nxv, @noproto, @AloneLiberty and everyone else who has been helping us all this time and contributing valuable knowledges, ideas and source code.
2023-10-24 12:08:09 +09:00
MX
15c480b68a
Merge branch 'ofw-dev' into dev 2023-09-02 13:33:32 +03:00
あく
f218c41d83
Undo some TODO (#3024)
* TODO FL-3497: impossible to fix with current memory allocator

* TODO FL-3497: removed, requires radically different settings approach

* TODO FL-3514: removed, yes we should

* TODO FL-3498: implemented, guarding view port access with mutex.

* TODO FL-3515: removed, questionable but ok

* TODO FL-3510: removed, comment added

* TODO FL-3500: refactored, store pin numbers in GpioPinRecord, fix gpio app crash caused by incorrect gpio_pins traversal.

* Format Sources

* TODO FL-3505: removed, mutex alone is not going to fix issue with WPAN architecture

* TODO FL-3506: removed, change ownership by copy is good

* TODO FL-3519: documentation and link to source added

* Lib: remove unneded total sum from comment in bq27220

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2023-09-01 05:54:52 +04:00
MX
8df9947d42
Merge branch 'ofw-dev' into dev 2023-08-23 19:49:00 +03:00
Nikolay Minaylov
15f92f765d
[FL-3479] Desktop: more favorites, configurable dummy mode (#2972)
* Desktop: more favorite app shortcuts
* Making PVS happy
* Desktop settings submenu fix

Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 21:26:47 +09:00
MX
20593d56c0
Merge branch 'ofw-dev' into dev 2023-08-22 21:53:50 +03:00
Astra
e353433cd8
[FL-3488] Assign tickets to all TODO items (#2988)
Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 02:56:27 +09:00
hedger
200c44bdca
loader: restored support for debug apps (#2993)
* fbt: restored loader support for debug apps (no GUI tho)
* desktop: fixed code for handling autorun apps
* loader: fixed autorun app messing up last update stage
* Loader: handle status without message

Co-authored-by: あく <alleteam@gmail.com>
2023-08-23 02:38:45 +09:00
gid9798
6330012b1d Desktop: fix lock timer after rebooting 2023-08-18 11:27:12 +03:00
gid9798
b1b00d4fa7 Desktop favorites: Return none and add lock in dummy 2023-08-18 11:23:35 +03:00
gid9798
f73f369952 Desktop favorites pt2 2023-08-17 13:40:55 +03:00
gid9798
3990c93013 Desktop favorites pt1 2023-08-17 13:04:40 +03:00
MX
0934b3f791
fix later 2023-08-17 03:24:14 +03:00
MX
aeadaef7c9
remove old vars 2023-08-15 08:37:56 +03:00
MX
4b81046b6f
Merge branch 'ofw-dev' into dev 2023-08-11 18:08:12 +03:00
MMX
f75fcd4e34
UI: Clock on Desktop (#2891)
* Clock on desktop
* Gui: gui_active_view_port_count
* Gui: move gui_active_view_port_count to private header, update docs
* Desktop: simplify desktop clock code
* Desktop: refactor clock
* Desktop: optimize clock code
* Desktop: 3rd cleanup round
* Desktop: 4th cleanup round, missing bits and pieces

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-08-11 01:10:15 +09:00
MX
c1438ce850
remove unused variable 2023-08-05 15:08:56 +03:00
MX
ec588935b5
fbt format 2023-07-13 23:33:40 +03:00