Commit Graph

1697 Commits

Author SHA1 Message Date
MX a5dedec00a ensure correct byte shifts 2025-10-01 02:34:46 +03:00
MX 999afe3f5b post merge fix 2025-09-30 02:16:07 +03:00
MX f4529dc8c1 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-29 23:11:36 +03:00
Nathan N e7634d7563 NFC: Ultralight C App Key Management, Dictionary Attack (#4271)
* Upstream Ultralight C dictionary attack (squashed)

* linter: formatting

* unit_tests: nfc: split nfc data to named var

* Fix mf_ultralight_poller_sync_read_card

* linter: suppressed warnings on TODOs

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-29 21:05:06 +04:00
MX 958cc79596 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-29 16:33:57 +03:00
RebornedBrain eea53491de [FL-3569] NFC CLI commands (#4158)
* 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

* Now cli_shell can be customized with another motd and another command set

* Added custom motd callback definition

* Now user can alloc and free his own cli command set

* cli_vcp can now restart shell with another command set

* Help command modified to show available commands from different command sets

* Api adjustement

* Reworked nfc_cli to start new shell with another command set

* Revert custom shell changes from vcp

* Custom motd callback moved to cli_shell

* Cli Shell now can be started from ongoing cli command

* Help command moved to a separate function so it can be used for custom shell

* Now nfc command spawns separate shell for further nfc commands

* cli_shell: give up pipe to command thread

* fix formatting

* cli_shell: separate into toolbox

* speaker_debug: fix

* fix: format

* Merge branch 'portasynthinca3/3928-3929-cli-fals-threads' into portasynthinca3/3965-cli_shell-toolbox

* fix merge

* fix. merge.

* fix formatting

* fix: cmd flags

* fix: formatting

* Added basic command descriptor structs and macros

* Basic nfc commands definitions added

* Nfc cli commands collection and functions added

* Raw skeleton of nfc cli processor added

* cli: increase default stack depth

* New callbacks for ctx alloc / free added

* nfc_cli moved to cli folder

* Some more logic for command processor

* Scanner command no works via command_processor

* plugin manifest adj

* Argument descriptors were removed, now only keys left

* Some helper command function implemented

* Command processor logic now mostly works

* Added all parsers and dummy implementation of raw cmd

* Now processor checks duplicated keys and treat them as errors

* Some renamings

* Arguments processing moved to separate function

* Now command processor can reuse context of previuos command for the next one if it's allowed

* can_reuse callback added for checking if context can be reused

* command processor is now freed on nfc cli exit

* Some cleanups

* First working version of raw command

* Now input data are placed directly to bit buffer

* Added tag

* Introduced request/response structs

* Moved raw command to a separate folder

* Moved some common types to header

* Added protocol specific handlers for iso14a and felica

* Opened felica crc header for referencing

* Added handler for iso14443_3b

* Opened iso15693_3_poller for referencing

* Added iso15693_3 handler for raw command

* NfcCliRawError enum introduced for response result

* Refactored handlers implementation

* Formatting functions now added as helpers

* New printing result logic

* Not present error value added to enum

* Timeout added to raw command

* Command processor now supports multivalue keys

* Apdu command implementation added

* NfcScanner moved to helpers and command now uses it

* Helper now can format protocol names

* Dump command added

* Added some more functions to scanner helper

* Dump main logic simplified

* Dump handlers moved to protocols folder

* Protocol parser added to simplify searching protocol by name

* Protocol and key arguments added to dump command

* Cleanups

* Apdu now parses protocol using helper parser

* Raw now parses protocol using helper parser

* Wrong naming fix

* Emulate command added to cli

* Description added to action descriptor and command macros

* Description field added to all commands

* Removed unnecessary enum for commands

* Added functions for formatting command and action info

* Proper error messages and help added

* Fix for unsupported single action command

* Function renamed to more appropriate

* Field command moved to all other commands

* Cleanups

* Nfc commands modified with new cli shell

* Removed previous nfc_cli.c after merge

* Removed nfc_cli.h header

* Some renamings and cleanups

* Some comments and instructions added

* Some comments and instructions added

* TODOs removed

* Fix for missing parse callback

* Added not implemented dummy for mfu actions, for now

* Fix name mismatch

* Remove unneeded header

* Mfu command moved to separate folder, also raw info action logic added

* Dictionary with id/vendors added to assets. It is used by nfc_cli_mfu_info_get_vendor function

* One more unneeded header removed

* Moved mfu info action to a separate file

* Info action now uses sync mfu poller

* mfu rdbl action added

* wrbl action added for mfu command

* Some formatting for rdbl command

* Function for formatting mfu errors added

* All mfu actions now show errors in the same way

* Fix error with sync poller. Previously when read failed function returned ErrorNone, now it processes iso14a error to get proper value

* Make PVS happy

* Nfc cli now doesn't start if desktop app is running

* Make action description look more common

* Scanner now has -t key and can show detected protocol hierarchies

* Apdu now checks max input payload data

* Proper format

* Proper error handling added to dump command

* Timeout key added dump command

* Fix merge issue

* formatting

* Pragma pack replaced with FURI_PACKED

* Fix felica memory leak

---------

Co-authored-by: Anna Antonenko <portasynthinca3@gmail.com>
Co-authored-by: Georgii Surkov <georgii.surkov@outlook.com>
Co-authored-by: あく <alleteam@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-29 14:34:49 +04:00
MX 1e431422e7 smol fixes [ci skip] 2025-09-28 02:11:06 +03:00
MX 0c1c54c949 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-25 23:42:49 +03:00
Axum 2ef556d456 Update demo_windows.txt (#4211)
Fix for newer version of ai enabled Windows Notepad not able to keep up with default fast input text.

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-25 22:05:29 +04:00
Zinong Li 8c0c7f1bb9 LFRFID: Show ISO-3166 Country Names For Pet Chips (#4091)
* Country list header and printf

* off load country list to asset

* lint

* Field specific getters

* check string length before cutting

* lfrfid: minor iso3166 cleanup

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-25 21:22:56 +04:00
WillyJL 013c5ffa52 BadUSB: Fix case sensitive key combos, fix modifiers in HOLD/RELEASE (#4216)
* BadUSB: Fix key combos main keys being case sensitive

* BadUSB: Fix modifier keys with HOLD/RELEASE commands

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-25 18:34:06 +04:00
MX 93b4ad4595 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-24 22:32:16 +03:00
MMX 30077dd512 Fix PVS warnings (#4277)
* Fixing PVS warns

* pvs: additional fixes

---------

Co-authored-by: hedger <hedger@nanode.su>
2025-09-24 21:00:39 +04:00
MX 2ae03e7d51 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-24 18:55:40 +03:00
minchogaydarov 973fb26f57 Add Daikin FTXN25LV1B9 and Toyotomi KTN22-12R32 (#4232)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-24 19:23:01 +04:00
Zinong Li f0d4210d19 NFC: Amusement IC Card Parser (FeliCa Lite & Lite-S) (#4259)
* type/brand parse

* debug

* decryptions

* corrections

* comments

* AIC access code decryption and CRC check

* easier than we thought! only acc_code[0] == 5 needs parsing

* finishing touches

* can't support serial number decode

* Revert "can't support serial number decode"

This reverts commit 7761b31bcf7effb97e608578ab1e090625078784.

* serial number CAN be decrypted

* format

* print fix

* fix CRC check

* delete unnecessary line

* linter fixes

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-24 19:14:43 +04:00
MX dc8fc9fbe0 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-24 00:45:00 +03:00
MX d791711b09 Fix FaacSLH 868 add manually crash 2025-09-24 00:44:19 +03:00
Zinong Li f4138e5999 NFC: MFC 1k Banapass Parser (#4260)
* seems to be working

* faster reading

* clone detection

* linter: fixes

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-24 00:47:22 +04:00
Amy Grace 5932dbe70a Add an old JVC model to universal remotes (#4274)
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-22 22:27:59 +04:00
MX 2c2228a4b9 merge ofw pr 4271
also thanks WillyJL
link to PR
https://github.com/flipperdevices/flipperzero-firmware/pull/4271/files
2025-09-21 16:45:31 +03:00
MX 19bb5cb0d9 upd subghz remote 2025-09-09 17:22:35 +03:00
MX 40e56bc862 subghz add zkteco support, fbt format 2025-08-11 21:30:22 +03:00
MX 46e7912d94 Fix branch&manifest 2025-08-11 21:16:16 +03:00
MX 801d6ae71c upd subghz remote 2025-08-11 15:44:28 +03:00
Louis D 71eafcdd6c fix: use the datasize of the generation functions in the protocols geninfo struct 2025-08-01 14:47:40 +02:00
Louis D 4ecfd63759 fix: restore the original byte order in the GenData struct 2025-07-31 22:39:53 +02:00
MX 2c0b7caf55 Better add manually advanced 2025-07-31 00:26:31 +03:00
MX 9ab4fcb256 fmt 2025-07-30 06:03:25 +03:00
MMX e69e8fcdf3 Merge pull request #909 from MrLego8-9/feature/subghz-nice-custom-buttons
[SubGHz] Add variant of 'Add Manually' menu with manual editing for each value
2025-07-30 06:01:15 +03:00
MX 3aa75341d6 NFC: Fix incorrect Saflok year formula
by Eltrick
2025-07-30 04:39:04 +03:00
MX c189283329 simplify Bad USB BLE profile
by aaronjamt & WillyJL
2025-07-30 04:37:49 +03:00
Louis D 115734373b feat: add variation of 'Add Manually' menu with manual value selection for all entries 2025-07-24 14:56:00 +02:00
Louis D e6cc2852fd WIP: add sub-menu for all manual additions 2025-07-22 19:19:40 +02:00
Louis D 8887cbff88 feat: add option for custom button when creating a new Nice Flor-S or Nice One remote 2025-07-17 00:27:23 +02:00
MX 3c3d06bae0 Roger that 2025-07-09 08:02:05 +03:00
MX 30621b2fd7 Update keeloq keys, motorline add manually support, readme spoiler alert
Add keeloq keys:
by @xMasterX & @RocketGod-git
2025-07-09 05:47:38 +03:00
MX 8ef9a07608 Subghz V2 Phoenix fully supported now
With big thanks to all contributors
 2022.08 - @Skorpionm
 2025.07 - @xMasterX & @RocketGod-git
2025-07-09 04:54:34 +03:00
MX 74f6ee1e7c badusb fix modifier keys with HOLD/RELEASE commands
by WillyJL
2025-07-07 17:55:14 +03:00
MX 43b35019ed subghz marantec protocol implement crc verification and add manually
fix crc function, add valid/invalid display (does not affect TX) and use new crc sum in add manually menu
2025-07-06 18:43:34 +03:00
MX 8f203f47d9 comunello add manually support 2025-07-05 17:48:30 +03:00
MX c81c136121 merge all nfc app changes
by WillyJL
2025-06-30 20:39:27 +03:00
MX 1b754c1482 Fix possible frequency analyzer deadlock when holding Ok
by WillyJL
2025-06-25 02:57:05 +03:00
MX 0b53be5cbd Add DEZ10
by realcatgirly

https://github.com/Next-Flip/Momentum-Firmware/pull/418/files
2025-06-25 02:50:18 +03:00
MX 3aa3098d47 subghz better ignore lists 2025-05-24 19:49:31 +03:00
Luu ff8c3540eb Fix clipper date timestamp 2025-05-22 19:12:22 +02:00
MX b352342434 rename and extend ignore alarms option in subghz 2025-05-21 17:34:37 +03:00
GameLord2011 d1c3b0bc68 Fixed inverted logic condition in subghz chat cli (#4212) 2025-05-21 01:50:47 +04:00
MX e108405fe4 add 462750000 to default subghz freqs 2025-05-14 01:55:18 +03:00
MX c5d077fc7a various fixes
by WillyJL
2025-05-11 19:38:34 +03:00