Commit graph

2445 commits

Author SHA1 Message Date
WillyJL
9f71be6fef
IR: Remember OTG state (#3549)
Co-authored-by: あく <alleteam@gmail.com>
2024-04-01 22:42:47 +09:00
Guacamolie
002e5cd9de
Bad USB: fix crash when selecting a keyboard layout (#3555)
Commit 6de2934 (BadUSB: BLE, media keys, Fn/Globe key commands (#3403),
2024-03-25) changed the life-cycle of the bad_usb_script object, so that
the bad_usb_script is allocated when entering the work scene, and freed
when going to the config scene. It also made it so that the keyboard
layout always gets reloaded when entering the work scene.

The logic of the layout config scene, however, assumes that it still
needs to reload the keyboard layout after selecting it. The keyboard
layout data is stored within bad_usb_script however, which is NULL when
within the layout config scene.

The fix is simple. Since we are now reload the keyboard layout anyway
when entering the work scene, we can just remove this extra call.

Resolves: #3552
2024-04-01 21:49:51 +09:00
Kuronons
3084469d83
L1_Mods animation update : adding VGM visual (#3502)
* Update images
* Update meta.txt
* Reverting to MOD 9999

Co-authored-by: あく <alleteam@gmail.com>
2024-03-29 12:40:26 +09:00
Georgii Surkov
64bd2f9c84
[FL-3677, FL-3798] RFID Improvements (#3524)
* Update saved_info and read_success scenes
* Update EM4100 rendering
* Update HIDExt rendering
* Update Gallagher rendering
* Update HidProx rendering
* Update IOProx rendering
* Update H10301 rendering
* Update PAC/Stanley rendering
* Add strcasecmp() to API, better manufacturer/name handling
* Update Viking rendering
* Update FDX-A rendering
* Update Pyramid rendering
* Update Indala26 rendering
* Update Idteck rendering
* Update Keri rendering
* Update Nexwatch rendering
* Update Jablotron rendering
* Update Paradox rendering
* Truncate long Hex string on scene_read_suceess
* Fix formatting
* Update AWID rendering
* Update FDX-B rendering
* Tweak string formatting in various screens
* More read_success view tweaks
* Fix formatting
* Fix Pyramid brief rendering
* Reset saved key menu when going back
* Reset other menus on back where applicable
* Update confirmation scenes
* Update emulation scene
* Update delete scene
* Update raw read info screen
* Update raw read scene, fix crash
* Update raw read success scene
* Update write scene
* Always return to SceneSelectKey after saving
* Update SceneWriteSuccess and SceneDeleteSuccess
* Replace closing parens with dots
* FL-3798: Fix special formatting in text_box
* Simplify SceneReadSuccess
* Fix crash when having a trailing newline in text_box
* Bump API symbols version
* Make PVS happy
* Format sources

Co-authored-by: あく <alleteam@gmail.com>
2024-03-29 12:32:43 +09:00
RebornedBrain
c353182353
[FL-3800, FL-3801] Fixed plugins and UI (#3543)
* Fixed some UI mismatches in plugin and nfc app
* Fixed nameing mismatches in mosgortrans_util
* Fix ultralight naming display

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-29 11:45:01 +09:00
hedger
538422e2a9
ufbt: fixes for generated vscode project (#3547)
Co-authored-by: あく <alleteam@gmail.com>
2024-03-29 10:47:43 +09:00
gornekich
74cda02368
[FL-3803] NFC: Fix mf desfire detect (#3548) 2024-03-29 10:32:15 +09:00
superKoder
21e7c46033
infrared_transmit.h was missing #pragma once (#3541)
Co-authored-by: superKoder <superKoder@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-26 16:24:28 +09: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
Silent
8ec1c74baf
SavedStruct: Introduce saved_struct_get_metadata (#3392)
* SavedStruct: Replace saved_struct_get_payload_size with saved_struct_get_metadata
  This new function can obtain the magic value, version and payload size
  all at once. This makes the function useful e.g.
  for backwards compatibility.
* SavedStruct: const-qualify saved_struct_save
* Toolbox: add saved struct documentation

Co-authored-by: あく <alleteam@gmail.com>
2024-03-26 03:48:18 +09:00
Nikolay Minaylov
84beb9b23e
JS CLI command (#3539)
* js command
* made the js command exit when there's an error
* JS CLI: moved to js_app
* JS: abortable cli invocations
* JS: less debug logging in console logs, fix storage descriptor leak in cli

Co-authored-by: Milk-Cool <milan-pl@mail.ru>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-03-26 01:35:38 +09:00
Brandon Weeks
bb439a9761
Fix DIP decoding for Linear Delta-3 (#3528)
Since my original PR (#2239) DIP values produced have been inverted.

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 18:24:57 +09:00
Kowalski Dragon
8762629276
Add ChromeOS Bad USB demo (#3486)
Signed-off-by: Kowalski Dragon (kowalski7cc) <kowalski7cc@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 18:03:20 +09:00
Georgii Surkov
adafe96924
[FL-3762] Configurable Infrared TX output (#3484)
* Implement Gui for the feature
* Implement furi_hal side
* Implement IR module detection
* Fix PVS warnings
* Add comments

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-03-25 17:56:56 +09:00
Nikolay Minaylov
6de2934394
BadUSB: BLE, media keys, Fn/Globe key commands (#3403)
* BadUSB: media keys, GLOBE command
* f18 api table fix
* BadUSB over BLE
* Made PVS happy

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-03-25 17:39:33 +09:00
gornekich
f633f476c8
[FL-3787] NFC: Slix privacy password reveal and Desfire detect fix (#3504)
* slix: fix incorrect default privacy passwords
* slix poller: add check privacy password state
* mf desfire: change detect algorithm
* mf desfire: change detection algorithm to check master key version
* mf desfire: change assert to check
* Update api symbols and cleanup code

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 16:18:28 +09:00
Georgii Surkov
11d7f53854
[FL-3770, FL-3680] HID App improvements and little extra (#3518)
* FL-3680: change capitalisation
* Replace D-Pad graphic
* Fix the bluetooth indicator not showing
* Remove exit confirm scene
* Fix wrong back button durations
* Improve application structure
* Improve mouse clicker view
* Improve mouse jiggler view
* Improve media view
* Improve mouse and media views
* Improve tiktok view
* Reset mouse jiggler state on view exit
* Use alpha in mouse and tiktok views
* Reset mouse left button state on view exit
* Improve button graphics
* Improve mouse graphics

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 16:00:35 +09:00
hedger
763e2f5bab
github: additional pre-upload checks for doxygen workflow (#3526)
Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 15:51:09 +09:00
Protik Banerji
bf769ee398
Add Dutch Originals Sound Bar IR codes to infrared app (#3529)
* Add Dutch Originals Soundbar IR codes
* Switch change_input button to next and prev

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 15:42:42 +09:00
gornekich
23940bff81
[FL-3796], [FL-3795] NFC UI fixes (#3532)
* nfc app: fix navigation in select protocol scene
* nfc app: fix text box position and size on emulation screen

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 15:36:17 +09:00
WillyJL
c52f28efa4
GUI: Fix textbox overflow/crash/hang with 256+ lines (#3536)
* GUI: Fix textbox overflow/crash/hang with 256+ lines
* GUI: Textbox calculate lines based on font height
* Gui: proper types in text_box

Co-authored-by: あく <alleteam@gmail.com>
2024-03-25 15:28:20 +09:00
WillyJL
0a48658a9a
GUI: Fix elements module for new canvas API (#3527)
* GUI: Fix elements module for new canvas API
* Update symbols
* Update f18 symbols
* Gui: update elements for new canvas

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-03-23 14:54:01 +09:00
hedger
6947d3dea2
BLE/GAP fixes (#3533)
* hal: fixed ble_gap race on queue init
* fbt: removed deprecated path_as_posix
* hal: fixed inconsistencies between f7/f18 APIs
* hal: fixed excessively strict event handler re-init checks

Co-authored-by: あく <alleteam@gmail.com>
2024-03-22 21:36:05 +09:00
Egor Koleda
2aa2dcc71b
Add support for Pioneer SR IR remotes (#3308)
* add support for Pioneer SR IR remotes
* fix minor issues
* fix repeat
* Fix protocol enumeration order
* Add unit tests for Pioneer IR protocol
* Clean up raw test data
* Add encoder/decoder tests, modify parser
* Remove dead code
* Use loops where appropriate

Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com>
Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
2024-03-22 21:25:52 +09:00
Silent
4039ccbcca
fbt/ufbt: Ensure POSIX paths are passed to GDB on all platforms (#3360)
* fbt/ufbt: Ensure POSIX paths are passed to GDB on all platforms
  GDB heavily dislikes forward slashes from Windows paths and strips
  them internally instead of normalizing them. Account for this by
  passing POSIX paths explicitly.
* fbt: different approach for posix path handling
* fbt, ufbt: further fixes for path handling
* fbt: explicit path stringification
* linter fixes

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 07:36:38 +09:00
小兽兽
0c465f7eb3
Added new IR commands (#3480)
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 07:24:33 +09:00
Jaroslav Nesterov
1bef579b82
Add support for DEFAULT_STRING_DELAY in Bad USB App (#3476)
* Add support for `DEFAULT_STRING_DELAY` in bad_usb
* Format Sources

Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 07:18:02 +09:00
Gabe
702ab672bb
Adding F13-F24 function key support to BadUSB (#3468)
* Adding F13-F24 function key support to BadUSB
* Adding F13-F24 function key support to JS version of BadUSB

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 06:45:16 +09:00
Nikolay Minaylov
7d50c4a742
it-IT-mac layout (#3401)
Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 06:35:48 +09:00
hedger
ee36c66572
fbt: doxygen target (#3510)
* fbt: doxygen target
* github: adjustments for doxygen
* github: always generate docs, only upload for dev
* doxygen: fixed exclusion path for awesome-css
* github: stricter check for push ref
* github: bumped action version to fix node.js deprecation
* github: added PVS report url to workflow summary
* github: pvs: reworked report URL handling
* github: added size report to summary
* docs: added `doxygen` target
* fbt: common naming scheme for COMSTR
* Documentation: fix warnings and errors
* Doxygen: stricter warning checks
* fbt: "doxy" target, opens generated doxygen documentation in browser
* github: doxygen: now using edge (1.10) version

Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 01:32:53 +09:00
Astra
558f75672f
[FL-3760] NFC Parsers cosmetic fixes (#3511)
* NFC Parsers cosmetic fixes
* Clarify the unknown digit indication

Co-authored-by: あく <alleteam@gmail.com>
2024-03-21 00:08:35 +09:00
Georgii Surkov
7987917d85
[FL-3496, FL-3523, FL-3767, FL-3790] Infrared fixes and more (#3515)
* FL-3496: do not hardcode universal library names in CLI
* FL-3523: remove TODO, no changes necessary
* FL-3767: remove TODO, no changes necessary
* FL-3790: fix laggy TextInput by not adding it into a ViewStack
* Improve documentation
* Fix logical error in documentation

Co-authored-by: あく <alleteam@gmail.com>
2024-03-20 23:54:07 +09:00
Astra
1c033e2afe
NFC wording fixes (#3512)
* NFC wording fixes
* Fix filename

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-20 23:44:48 +09:00
Georgii Surkov
169522cbe8
[FL-3792] Fix iButton emulation regression (#3519)
Co-authored-by: あく <alleteam@gmail.com>
2024-03-20 23:37:16 +09:00
Astra
8bd984ff81
[FL-3151] Update the WiFi devboard developer documentation (#3520)
Co-authored-by: あく <alleteam@gmail.com>
2024-03-20 18:44:31 +09:00
Astra
ff0952d66a
[FL-3776] Add the Freedom_2_dolphins animation (#3521)
* Add the Freedom_2_dolphins animation
* Dolphin: rebalance animation weights

Co-authored-by: あく <alleteam@gmail.com>
2024-03-20 18:37:07 +09: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
Anna Prosvetova
a09ec4d976
Infrared: Add Fujitsu ASYG24KMTB (#3513) 2024-03-19 18:19:31 +09:00
Georgii Surkov
022fccf0d7
[FL-3783] Asynchronous Infrared remote manipulation (#3503)
* Introduce ConcurrentRunner, load universal and regular remotes concurrently
* Perform all lengthy operations in a ConcurrentRunner
* Fix python formatting
* Clean up code
* Add usage warning
* Remove ConcurrentRunner, use a plain FuriThread instead
* Load remotes asynchronously in RPC mode as well
* Reorder code for clarity
* Clean up, use thread return code to report errors
* Improve wording
* Fix logical error
2024-03-12 02:35:51 +09:00
あく
adbe4d44f4
DateTime: fix missing weekday in datetime_timestamp_to_datetime conversion (#3508) 2024-03-11 17:09:39 +04:00
Astra
4f7eb77071
Fix troika 4K keys (#3499) 2024-03-07 15:57:32 +09:00
Astra
ecab4d53d2
[FL-870] Auto-generated firmware documentation take two (#2944)
* Add doxygen and doxygen-awesome css, cleanup docs files
* Ignore more libraries and remove leftover local variables
* Create an actual intro page
* .md files linting
* Add doxygen action
* Fix Doxygen path
* Fix doxyfile path
* Try to upload
* Change docs branch
* Add submudules checkout
* Disable doxygen on PR
* Mention the firmware docs in the readme
* More dev docs mentions in the readme
* Fix runner group, add tags
* Test dev in PR
* Disable running on PR
* Fix a typo in the doxyfile
* Try upload to S3
* Fix local path
* Fix S3 ACL
* Add delete flag, unifying dev and tags
* Update ignored directories
* More ignored directories
* Even more ignored directories
* Fix submodule
* Change S3 uploader
* Change S3 uploader version
* Fix aws sync flags
* Fix ACL
* Disable ACL
* Improve ignores, add WiFi devboard docs
* TEMP: generate dev docs
* TEMP: generate 0.89.0 docs
* Disabling PR trigger
* Enable submodules and test build
* Enable test build
* Disable test build
* Change docs directory structure
* Fix accidentally committed submodule
* Fix submodules
* Update links to the developer documentation
* Markdown linting
* Update workflow, enable test build
* Fix doxygen dir path
* Update Doxyfile-awesome.cfg
* Change paths
* Fix upload docs path
* Disable pull_request debug trigger
* Disable tags building
* Remove autolinks and namespaces
* Establish basic documentation structure
* Add missing changes
* Improve stylesheet, move some files
* Improve examples
* Improve the main page
* Improve application dev docs
* Improve system programming docs
* Improve development tools docs
* Improve other docs
* Improve application examples
* Fix formatting
* Fix PVS-studio warnings
* Improve visuals
* Fix doxygen syntax warnings
* Fix broken links
* Update doxygen action

Co-authored-by: DrunkBatya <drunkbatya.js@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com>
2024-03-06 15:25:21 +09:00
Silent
5e47048369
Archive: Fix item focus after aborting the Delete operation (#3475)
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-05 12:03:46 +09:00
assasinfil
a6c5a1ba69
Troyka parser improvements (#3390)
* Updated troyka layout (full version)
* Changed to furi func
* Small refactor
* Bitlib refactor
* Moved to API
* Rollback troyka parser
* Fix functions
* Parser func refactor start
* Layout E3 refactored
* Layout E4 refactored
* Layout 6 refactored
* Layout E5 refactored
* Layout 2 refactored
* Layout E5 fix
* Layout E6 refactored, valid_date need fix
* Layout E6 fix
* Layout FCB refactored
* Layout F0B refactored
* Layout 8 refactored
* Layout A refactored
* Layout C refactored
* Layout D refactored
* Layout E1 refactored
* Layout E2 refactored
* Fixes
* Old code cleanup
* Memory cleanup
* Unused imports cleanup
* Keys struct refactor
* Layout E1 fix
* Added debug info for layout and department
* Fix PVS warnings
* Fix more PVS warnings

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-05 11:56:35 +09:00
philicious
7b26dc5ebf
NFC: Fix washcity plugin verify function being to greedy (#3467)
* NFC: Fix washcity plugin verify function being to greedy
  It verifies only a single sector and that one using one of the commonly used key 0xA0A1A2A3A4A5
  This leads to false-positives and the dicts not being used at all
* nfc app: washcity plugin: fix verify function

Co-authored-by: gornekich <n.gorbadey@gmail.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-03-05 11:42:39 +09:00
Rodrigo Basoalto
1070064f89
Parser for Santiago, Chile BIP transit card (#3456)
* Parser for Santiago, Chile BIP transit card
  It's used for all public transportation in the city of Santiago, Chile
  (bus, subway). We've reverse-engineered most of the non-zero bits of
  data found, and checked them across dozens of cards.
* Update to use bit_lib instead of nfc_util
* PR feedback

Co-authored-by: Rodrigo Basoalto <basoalto@fintual.com>
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2024-03-04 18:50:28 +09:00
Sergei Gavrilov
4b7ca736d6
WiFi board: fixed update script on Windows (unfortunately also Mac and Linux) (#3485)
* WiFi board update: windows fix

* Scripts: add python\Scripts to the path

* Windows: another way to call esptool

* Aaaaaand once more!

* logz

* wifi board scripts: udev rule, dev channel

* fbt: added ARGS variable for passing extra options to certain scripts; removed `devboard_flash_dev` in favor of `devboard_flash ARGS="-c dev"`

* fbt: fully removed `devboard_flash_dev

* scripts: wifi_board.py: cleanup

* ufbt: ported ARGS for supported targets to ufbt

* docs: updated for ARGS=...

---------

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: hedger <hedger@users.noreply.github.com>
2024-03-01 15:58:15 +04:00
Sergei Gavrilov
18ea2371a4
Gui: reset canvas orientation and frame when entering direct draw mode (#3488) 2024-02-29 02:09:55 +04:00
Silent
7fc4ba7c1c
FBT/uFBT: Enable C++20/GNU23 in VSCode IntelliSense (#3394)
* FBT/uFBT: ms-vscode.cpptools can't be a configuration provider to itself

* FBT/uFBT: Enable C++20/C23 in IntelliSense as the compilation options do
2024-02-27 17:56:11 +04:00