Commit Graph

3163 Commits

Author SHA1 Message Date
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
hedger 649e173e03 Merge branch 'dev' into feat/nfc-type-4-final 2025-09-25 12:11:54 +01:00
MX 93b4ad4595 Merge remote-tracking branch 'OFW/dev' into dev 2025-09-24 22:32:16 +03:00
Anna Antonenko d0360625d6 [FL-3925] JS views finished (#4155)
* js: value destructuring and tests

* js: temporary fix to see size impact

* js_val: reduce code size 1

* i may be stupid.

* test: js_value args

* Revert "js: temporary fix to see size impact"

This reverts commit f51d726dbafc4300d3552020de1c3b8f9ecd3ac1.

* pvs: silence warnings

* style: formatting

* pvs: silence warnings?

* pvs: silence warnings??

* js_value: redesign declaration types for less code

* js: temporary fix to see size impact

* style: formatting

* pvs: fix helpful warnings

* js_value: reduce .rodata size

* pvs: fix helpful warning

* js_value: reduce code size 1

* fix build error

* style: format

* Revert "js: temporary fix to see size impact"

This reverts commit d6a46f01794132e882e03fd273dec24386a4f8ba.

* style: format

* js: move to new arg parser

* style: format

* feat: all js views done

* js, toolbox: generalize string owning

* toolbox: silence pvs warning

---------

Co-authored-by: hedger <hedger@nanode.su>
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-24 23:24:28 +04: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 905b5726ad Merge remote-tracking branch 'OFW/dev' into dev 2025-09-24 17:58:32 +03:00
MMX 7554b32538 SubGHz: Linear and Dickert MAHS protocols fixes & improvements (#4267)
* Linear and dickert mahs fixes

* fix dip pattern

* proper fix

by WillyJL

* Fix unit tests

Linear Decoder now decodes more linear signals

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-24 14:45:03 +04:00
dogtopus dfd753703a FeliCa Emulation: Handle certain Polling commands in firmware (#4204)
* FeliCa: Handle non-hardware Polling commands

NFC TagInfo and possibly other readers rely on Polling commands with Request Code of 1 (default System Code request) or non-FFFF System Code to detect card type. Since the NFC controller doesn't seem to handle them in hardware and simply bubbles them up, and then the Flipper firmware will just ignore them and refuse to respond afterwards, this causes the reading operation to fail.

This commit adds a simple handler for such Polling commands so that readers behaving like NFC TagInfo could read the emulated card without failing.

* Only handle cases when System Code is not FFFF

The NFC controller should handle Polling commands with the System Code set to FFFF, so it's not necessary for the firmware to handle it.

* Remove system code logging

* More cleanups

* Remove the claim that we need a poller change

We already have enough information to determine whether or not the card supports NDEF since SYS_OP register value is included in all current Lite-S card dumps.

* Respond to 12FC polling command when needed

* Handle Polling with NDEF and Lite-S Service Code

This allows the reader to specifically select the service by naming the Service Code.

* Introduce API for manual handling of Polling commands

Introduce nfc_felica_listener_timer_anticol_start() and nfc_felica_listener_timer_anticol_stop(). These are for now just wrappers around the block_tx timer that can be used to delay the response until the desired Time Slot. Thanks to the loose timing constraints of FeliCa collision resolution protocol, no compensation seems to be necessary. Also enabled the block_tx timer for FeliCa listener, but with both compensation and fdt set to 0 to keep the original behavior of not using the timer during normal data exchange.

This API is now being used for handling Polling commands that are not handled by the NFC controller on the hardware side.

* Document target_time_slot

* Implement changes suggested by @RebornedBrain

* api: f18 version sync

* nfc: added stubs for `nfc_felica_listener_timer_anticol` for unit tests

---------

Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: hedger <hedger@nanode.su>
2025-09-24 14:08:40 +04:00
WillyJL ad94694fbd CLI: Fix long delay with quick connect/disconnect (#4251)
* CLI: Fix long delay with quick connect/disconnect

noticeable with qflipper, for some reason it sets DTR on/off/on again
so flipper starts CLI, stops it, then starts again
but cli shell is trying to print motd, and pipe is already broken
so each character of motd times out for 100ms
changing pipe timeout to 10ms works too, but is just a workaround

it didnt always happen, i think that variable time of loading ext cmds
made it so on ofw it usually manages to print motd before pipe is broken
on cfw with more ext commands it always hung, on ofw only sometimes

important part is bailing early in cli shell
in cli vcp i made it cleanup cli shell on disconnect so it doesnt stay
around after disconnecting usb, might free a little ram maybe

* cli_shell: possibly more robust fix?

* Fix use after free crash

* cli_shell: waste even less time

Co-Authored-By: WillyJL <me@willyjl.dev>

---------

Co-authored-by: Anna Antonenko <portasynthinca3@gmail.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-24 13:19:18 +04:00
WillyJL 7380eacf0e NFC: Fix read crash with unexpectedly large MFC AUTH(0) response (#4265)
This was noticeable with Chameleon Ultra NTAG emulation

Co-authored-by: hedger <hedger@users.noreply.github.com>
2025-09-23 14:43:45 +01:00
WillyJL 470f6a679d CLI: Fix crash with unexpected plugin files (#4243) 2025-09-22 22:08:29 +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
MMX bbb33c1d75 Merge pull request #920 from WillyJL/fix/linear-again-again
Sub-GHz: Actually fix Linear display for real now
2025-09-10 00:09:50 +03:00
MX b07cb9401f subghz raw protocol fixes
by WillyJL
2025-09-09 16:48:08 +03:00
WillyJL f09942a4a3 Sub-GHz: Fix RAW files again 2025-09-07 14:15:48 +02:00
WillyJL bf106d5e3d Sub-GHz Remote: Fix hang with RAW files, prevent it for the future --nobuild 2025-09-06 16:14:15 +02:00
WillyJL af67a99da9 Sub-GHz: Actually fix Linear display for real now 2025-09-06 04:42:11 +02:00
WillyJL d06d3684e5 Sub-GHz: Actually fix Linear display for real now 2025-09-06 04:41:15 +02:00
WillyJL d97155eb2d Format 2025-09-06 03:35:15 +02:00
WillyJL 3a35730a24 Merge remote-tracking branch 'xero/dev' into mntm-dev 2025-09-06 03:32:17 +02:00
WillyJL d8608394ab Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-09-06 02:44:58 +02:00
MX c091a58486 fix linear again 2025-08-27 03:42:01 +03:00
MX 5f7aaf2a04 NFC: Fix read crash with unexpectedly large MFC AUTH(0) response
by WillyJL
https://github.com/flipperdevices/flipperzero-firmware/pull/4265/files
2025-08-27 03:09:52 +03:00
WillyJL 828a73bbd1 Sub-GHz: Only fix Linear inverted bits in user interface, keep old remotes compatible 2025-08-26 02:11:36 +02:00
WillyJL 354dad4af3 Sub-GHz: Only fix Linear inverted bits in user interface, keep old remotes compatible (#460)
* Sub-GHz: Fix Linear inverted bits

* Only invert to show correct bits in user interface
2025-08-25 23:59:47 +00:00
noproto 40b533fddb Merge remote-tracking branch 'xero-dev/dev' into dev 2025-08-24 23:02:27 -04:00
noproto d040f9b8bd Merge remote-tracking branch 'upstream/dev' into dev 2025-08-24 22:55:51 -04:00
WillyJL 27e5133f75 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-08-23 22:12:44 +02:00
WillyJL 050814e2a9 NFC: Fix read crash with unexpectedly large MFC AUTH(0) response --nobuild
This was noticeable with Chameleon Ultra NTAG emulation
2025-08-23 17:43:10 +02:00
noproto 9882c586ae Fix regression, read card. Don't try dict if user chose "Unlock with key". 2025-08-18 02:13:51 -04:00
noproto 374f49319b Fix uninitialized key attempt 2025-08-18 00:21:36 -04:00
noproto 1b88b86a11 Merge remote-tracking branch 'flipperdevices/dev' into ulcdict 2025-08-17 17:54:56 -04:00
MX f2bfed6bbc Avoid false positives for dickert mahs 2025-08-15 00:40:01 +03:00
MX eb9b84e0c0 Linear 10bit EZCode remotes support 2025-08-15 00:28:49 +03:00
WillyJL 2eafb72a5f Merge remote-tracking branch 'fork-ofw/fix/cli-delay' into mntm-dev --nobuild 2025-07-31 19:57:17 +02:00
MX 610fd68b75 RFID: Add additional procotols supported by EM4305 chipset
by jamisonderek
2025-07-30 04:59:05 +03:00
MX 6a2f062234 OFW PR. 4251 CLI: Fix long delay with quick connect/disconnect
by WillyJL
2025-07-30 03:43:36 +03:00
Anna Antonenko 93d7005743 cli_shell: waste even less time
Co-Authored-By: WillyJL <me@willyjl.dev>
2025-07-23 14:21:40 +04:00
WillyJL c37c67200e Merge remote-tracking branch 'fork-ofw/fix/cli-delay' into mntm-dev 2025-07-23 00:19:56 +02:00
Anna Antonenko 4d82f5cac7 cli_shell: possibly more robust fix? 2025-07-22 21:56:16 +04:00
WillyJL 291ed9d1ed CLI: Fix long delay with quick connect/disconnect
noticeable with qflipper, for some reason it sets DTR on/off/on again
so flipper starts CLI, stops it, then starts again
but cli shell is trying to print motd, and pipe is already broken
so each character of motd times out for 100ms
changing pipe timeout to 10ms works too, but is just a workaround

it didnt always happen, i think that variable time of loading ext cmds
made it so on ofw it usually manages to print motd before pipe is broken
on cfw with more ext commands it always hung, on ofw only sometimes

important part is bailing early in cli shell
in cli vcp i made it cleanup cli shell on disconnect so it doesnt stay
around after disconnecting usb, might free a little ram maybe
2025-07-22 17:17:36 +02:00
WillyJL 580211c97c CLI: Fix long delay with quick connect/disconnect
noticeable with qflipper, for some reason it sets DTR on/off/on again
so flipper starts CLI, stops it, then starts again
but cli shell is trying to print motd, and pipe is already broken
so each character of motd times out for 100ms
changing pipe timeout to 10ms works too, but is just a workaround

it didnt always happen, i think that variable time of loading ext cmds
made it so on ofw it usually manages to print motd before pipe is broken
on cfw with more ext commands it always hung, on ofw only sometimes

important part is bailing early in cli shell
in cli vcp i made it cleanup cli shell on disconnect so it doesnt stay
around after disconnecting usb, might free a little ram maybe
2025-07-22 17:16:17 +02:00
Derek Jamison ec922aa5af RFID: Add additional procotols supported by EM4305 chipset (#434)
* Add additional procotols supported by EM4305 chipset

* Add support for GProxII (inverted EM4305 BIPHASE)

* Update changelog

---------

Co-authored-by: WillyJL <me@willyjl.dev>
2025-07-20 01:44:14 +00:00
Aaron Tulino b33456d243 MNTM Settings: Add Skip Sliding Animations option for Lockscreen (#436)
* Add Fast Lock/Unlock
The cover animation takes time and blocks input while animating, so add options to skip the animations.

* Combine options into "Skip Sliding Animation"

* Update changelog

* Wording

---------

Co-authored-by: WillyJL <me@willyjl.dev>
2025-07-20 00:46:11 +00:00
WillyJL bd88e42622 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2025-07-19 17:51:01 +01:00
MX 3b29bd6508 Roger decoder allow bigger gap and extend buttons functionality 2025-07-12 03:57:14 +03:00
MX 269cbd66e1 A little better naming for display in v2phox 2025-07-09 08:14:31 +03:00
MX 3c3d06bae0 Roger that 2025-07-09 08:02:05 +03:00
MX 1bed4d29cb Nero Radio static - better parsing 2025-07-09 08:01:36 +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