Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NFC refactoring #3050

Merged
merged 217 commits into from
Oct 24, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
217 commits
Select commit Hold shift + click to select a range
d46bca6
nfc: rename structure in old application
gornekich Mar 23, 2023
30ffca4
nfc: introduce new hal
gornekich Mar 23, 2023
cc22440
nfc: introduce new parsers
gornekich Mar 23, 2023
6663843
nfc: introduce nfc rpc app
gornekich Mar 23, 2023
0c5fab4
subghz: temporary build fix
gornekich Mar 23, 2023
af4857e
nfc: fix timings
gornekich Mar 24, 2023
0d97f4d
nfc: fix listener events
gornekich Mar 28, 2023
bf311e7
nfc: add nfca emulation
gornekich Mar 28, 2023
3aef20f
nfc rpc: add mf ultralight emulation handlers
gornekich Mar 29, 2023
2ebd7f3
nfc: fix rpc max size
gornekich Mar 29, 2023
e5f620b
nfc: introduce emulation worker
gornekich Mar 30, 2023
2b77f98
nfc: support mfu commands
gornekich Mar 30, 2023
ddaff8d
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring
gornekich Mar 31, 2023
d83a05c
nfc: rename mf_ultralight_common -> mf_ultralight
gornekich Apr 3, 2023
2d5649a
nfc: fix incomplete frame tx
gornekich Apr 3, 2023
dfd729b
mfu: introduce command handlers
gornekich Apr 4, 2023
c15ae51
nfc: remove listener rx API
gornekich Apr 5, 2023
602a01e
nfc: start reworking poller
gornekich Apr 5, 2023
f8506f2
nfc app: copy old nfc app
gornekich Apr 6, 2023
2e58cd2
nfc app: start reworking read
gornekich Apr 7, 2023
65b8cab
nfc: new nfca read scene
gornekich Apr 7, 2023
c4f6130
nfc: rework nfc app
gornekich Apr 10, 2023
27ed14e
nfc: add uid emultaion
gornekich Apr 12, 2023
b9be790
nfc: add nfc acquire and release
gornekich Apr 12, 2023
8c37cf6
nfc: rework with new pollers
gornekich Apr 14, 2023
4194fbe
nfc: mf ultralight support
gornekich Apr 17, 2023
e9faf3a
nfc: mf ultralight read state machine
gornekich Apr 17, 2023
6178b18
nfc: start adding sync API
gornekich Apr 19, 2023
6b17f47
mf ultralight: add all sync api
gornekich Apr 19, 2023
82aa39c
mf ultralight: read state machine
gornekich Apr 20, 2023
22be7d4
nfc: add unlock scenes
gornekich Apr 20, 2023
3439646
nfc: add mf ultralight menu
gornekich Apr 20, 2023
79bdc92
nfc app: introduce mifare ultralight auth
gornekich Apr 20, 2023
789a37f
nfc app: add unlock scripts
gornekich Apr 20, 2023
0d86bbf
nfca: rework with nfc poller buffer
gornekich Apr 20, 2023
147c875
nfc: rework configuration
gornekich Apr 20, 2023
40109bc
nfc: introduce nfcb poller
gornekich Apr 21, 2023
6be1fdc
nfc: generic poller rework
gornekich Apr 21, 2023
e29d778
hal nfc: config timer div
gornekich Apr 23, 2023
6bc1f3d
nfc: introduce nfc commands
gornekich Apr 24, 2023
c9628ec
nfc: separate public and private API
gornekich Apr 24, 2023
81ba664
mf ultralight: neat state handlers
gornekich Apr 25, 2023
b36dcee
mf ultralight: separate private and public api
gornekich Apr 25, 2023
8c9cd1c
mf ultralight: add configuration pages
gornekich Apr 25, 2023
9cd685d
mf ultralight: fix reading state machine
gornekich Apr 28, 2023
cc6e6dd
nfc app: add file select
gornekich May 1, 2023
2cde986
nfc app: add saved menu scene
gornekich May 2, 2023
a40a4a6
nfc app: add saving
gornekich May 2, 2023
8cb631d
nfc: rework nfc data generators
gornekich May 2, 2023
9964fb6
nfc app: add generator scenes
gornekich May 2, 2023
e40f45e
nfc: dix memory leak
gornekich May 2, 2023
8a8a260
nfc app: nfca add manual
gornekich May 2, 2023
eb77641
nfc dev: fix save and load bugs
gornekich May 3, 2023
2dcdce6
unit tests: rework nfc unit tests
gornekich May 3, 2023
1c0f2b2
nfc: fix false positive fwt timeout
gornekich May 3, 2023
39cb8ca
nfc: add reset in generic poller
gornekich May 4, 2023
a1f5d2c
nfc: fix reset in generic poller
gornekich May 4, 2023
ff6f27a
nfc: correct reset
gornekich May 4, 2023
e996dc6
nfc: introduce poller and listener unit tests
gornekich May 5, 2023
0413e43
mf ultralight: rework read paged
gornekich May 6, 2023
8a9d501
unit test: add ntag 215 for unit tests
gornekich May 6, 2023
27903f0
nfc: ultralight tests
gornekich May 6, 2023
2bcea0e
mf ultralight: fix async api
gornekich May 7, 2023
eea41aa
nfc: rework allocation order
gornekich May 8, 2023
5137100
nfc: add test for original ultralight
gornekich May 8, 2023
779ab87
unit tests: add nfc test files
gornekich May 8, 2023
d9c1faa
mf ultralight fixes
gornekich May 8, 2023
74e3a28
nfc app: rework unlock with reader ultralight
gornekich May 11, 2023
5323584
mf ultralight: default password support
gornekich May 8, 2023
7cec8b3
mf ultralight: listener fixes
gornekich May 8, 2023
e13a0bb
mf ultralight: fix ntag i2c reading
gornekich May 10, 2023
9d63f97
mf ultralight: fix feature sets
gornekich May 10, 2023
d13b741
nfc tests: add ntag216
gornekich May 10, 2023
4bbdade
nfc tests: add write test
gornekich May 10, 2023
5a29f7c
nfc app: rework shadow files
gornekich May 10, 2023
2d57b09
nfc app: add delete scenes
gornekich May 11, 2023
39b3eaf
nfc tests: turn on unit tests
gornekich May 11, 2023
d1385d1
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring
gornekich May 11, 2023
8f0de13
nfc: introduce mifare classic
gornekich May 14, 2023
3bea05c
nfc: add mifare classic generators
gornekich May 14, 2023
8f76169
nfc: rename old API
gornekich May 14, 2023
80d7e50
mf classic: add load and save file
gornekich May 14, 2023
46ce9f6
nfc test: add mf classic file tests
gornekich May 14, 2023
60950d9
nfc: fix errors
gornekich May 14, 2023
e40bf54
nfc: rename crypto to old_crypto for symbol reslution
gornekich May 15, 2023
96a70a0
mf classic: introduce auth context
gornekich May 15, 2023
3fc6029
nfc hal: remove interrupt instead of disabling
gornekich May 15, 2023
6bf995c
nfc rpc: add mf classic auth and read block
gornekich May 17, 2023
faf28a1
mf classic: start auth
gornekich May 17, 2023
d8601c7
mf classic: rework auth
gornekich May 17, 2023
51ced8a
nfc: add sync read block
gornekich May 17, 2023
29b0542
nfc: debug build, fix crashes
gornekich Jun 2, 2023
64d5e0e
nfc: start dict attack
gornekich May 19, 2023
ba19dd4
mf classic: continue dict attack
gornekich May 23, 2023
bc6d12f
mf classic: fix buffer reset
gornekich May 23, 2023
85fcb42
mf classic: rework state machine
gornekich May 29, 2023
eaed19c
mf classic: add key reuse attack
gornekich May 31, 2023
994670a
nfc: add mf classic menu scene
gornekich Jun 1, 2023
82ee706
nfc: introduce supported cards
gornekich Jun 2, 2023
4e54af1
nfc: introduce nfc plugin
gornekich Jun 6, 2023
cc4dd36
nfc: format sources
gornekich Jun 6, 2023
c7c2119
Gsurkov/3324 mf desfire (#2741)
gsurkov Jun 6, 2023
abbe855
Merge branch 'gornek/mf_classic_dict_attack' into gornek/nfc_refactoring
gornekich Jun 6, 2023
a2cc5a9
Gsurkov/3324 mf desfire (#2761)
gsurkov Jun 12, 2023
e40cecd
Gornek/rework with bit buffer (#2763)
gornekich Jun 12, 2023
31b818a
nfc: move deprycated files to separate folder
gornekich Jun 12, 2023
4069d18
Gsurkov/3324 mf desfire (#2788)
gsurkov Jun 20, 2023
fe5b043
Gornek/generic poller v3 (#2780)
gornekich Jun 20, 2023
6623c33
nfc: fix typo
gornekich Jun 20, 2023
4b7e3d0
Gsurkov/mf desfire iter4 (#2791)
gsurkov Jun 21, 2023
1ffc06d
Nfc Scanner (#2792)
gornekich Jun 22, 2023
2758723
Rework with furi hal bus, merge dev (#2798)
gornekich Jun 23, 2023
fc46026
Gsurkov/mf desfire iter5 (#2802)
gsurkov Jun 26, 2023
bbe4170
MFU poller cleanup (#2803)
gornekich Jun 26, 2023
01865f1
Nfc poller (#2804)
gornekich Jun 27, 2023
f992738
Massive renaming (#2810)
gornekich Jun 28, 2023
399c77b
Generic listener part 0 (#2813)
gornekich Jun 29, 2023
673465c
Generic listener part 1 (#2820)
gornekich Jun 30, 2023
39b87f7
Merge dev (#2827)
gornekich Jul 1, 2023
2a9ca19
Nfc gui rework (#2822)
gsurkov Jul 4, 2023
2641a2c
Unit tests, add manually scenes fixes (#2844)
gornekich Jul 5, 2023
7df53a2
New NFC GUI (#2848)
gsurkov Jul 6, 2023
69ca0de
[NFC] New file format (#2856)
gsurkov Jul 7, 2023
f54f7fc
MFC emulation part 0 (#2867)
gornekich Jul 12, 2023
2196a53
[NFC] ISO14443-4A emulation, MF DESFire and GUI fixes (#2869)
gsurkov Jul 12, 2023
30d8fda
Full MFC emulation , Detect Reader (#2886)
gornekich Jul 17, 2023
ef3a322
[NFC] Supported card plugins (#2889)
gsurkov Jul 18, 2023
6d74e51
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring
gornekich Jul 18, 2023
cda1089
[FL-3426] "More" button on "Info" scene shows card dump for Ultraligh…
RebornedBrain Jul 20, 2023
10aff39
[FL-3447] Debug field implementation (#2916)
RebornedBrain Jul 24, 2023
61caa1e
[NFC] NFC-B support (#2918)
gsurkov Jul 25, 2023
be46e5d
Simple Array improvements (#2919)
gsurkov Jul 25, 2023
b09c6d4
[FL-3445] Nfc: shadow file support (#2931)
RebornedBrain Aug 1, 2023
480ba84
[NFC] ISO15693-3 (NFC-V) Poller (#2936)
gsurkov Aug 2, 2023
caf642c
Fix NFC14443-3B (NFC-B) poller (#2946)
gsurkov Aug 4, 2023
10d767c
[FL-3449] Introduce Felica poller (#2961)
gornekich Aug 9, 2023
49d65c0
Fixed tearing flags for NTAG21x (#2965)
RebornedBrain Aug 10, 2023
643c285
[FL-3446] Feature check adjustment and nesting removal (#2977)
RebornedBrain Aug 11, 2023
5fbdf34
Ultralight commands fixed and reset is done on the nfc level (#2989)
RebornedBrain Aug 18, 2023
fe33eac
Ultralight commands adjustments (#2997)
RebornedBrain Aug 21, 2023
89b675c
mf ultralight: fix naming
gornekich Aug 21, 2023
bcfa912
[NFC] ISO15693-3 (NFC-V) Emulation (#2996)
gsurkov Aug 21, 2023
d87bd74
INCR_CNT command added for Ultralight and READ_CNT fixed for NTAGs (#…
RebornedBrain Aug 22, 2023
079b74d
[FL-3444], [FL-3448] MFC Poller improvements (#3016)
gornekich Aug 28, 2023
5e1e3ff
[FL-3573] MFU ASCII mirror handling (#3019)
RebornedBrain Aug 29, 2023
5e0dc8c
[FL-3568] Signal reader optimization (#3022)
gornekich Aug 30, 2023
ac9d9cd
Improve Iso15 emulation (#3029)
gornekich Aug 31, 2023
ad042e8
[FL-3574] Ultralight composite command handling (#3028)
RebornedBrain Aug 31, 2023
2ad34a7
[FL-3571] BitBuffer and generic listener optimization (#3026)
gornekich Sep 1, 2023
68f1027
[FL-3574] SECTOR_SELECT command implementation (#3045)
RebornedBrain Sep 6, 2023
35aebe4
[NFC] SLIX Protocol Support (#3034)
gsurkov Sep 6, 2023
de0ed43
[FL-3572] Nfc API cleanup (#3049)
gornekich Sep 7, 2023
d1e8dec
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring_v1
gornekich Sep 7, 2023
71c4449
nfc: delete old application
gornekich Sep 7, 2023
b6af4e5
nfc: remove nfc rpc application
gornekich Sep 7, 2023
deddd76
linter: remove linter changes
gornekich Sep 7, 2023
198740d
nfc: remove deprecated files from lib
gornekich Sep 7, 2023
bf3acfb
hal: remove old nfc hal
gornekich Sep 7, 2023
8964292
nfc: fix new hal naming
gornekich Sep 7, 2023
b13aa4a
nfc: add necessary API
gornekich Sep 7, 2023
a542e7c
nfc: format python sources
gornekich Sep 7, 2023
f9fb856
lib: remove RFAL !!!
gornekich Sep 7, 2023
96bd3b4
firmware: remove rfal from target
gornekich Sep 7, 2023
39ee079
Introduce NFC documentation (#3057)
gornekich Sep 8, 2023
fe563ca
[FL-3575, FL-3577, FL-3576] FAST_WRITE command implementation added (…
RebornedBrain Sep 11, 2023
b829864
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring_v1
gornekich Sep 11, 2023
6491026
[FL-3586] Single counter increase (#3065)
RebornedBrain Sep 12, 2023
53bdccd
NFC: fix unit tests, rework nfc dict (#3071)
gornekich Sep 12, 2023
45e0324
Single counter increase fix (#3077)
RebornedBrain Sep 13, 2023
f90cc00
[FL-3570] ISO14443-4B support (#3052)
gsurkov Sep 14, 2023
5c25d5a
Ultralight cleanup (#3079)
RebornedBrain Sep 14, 2023
e56e011
[FL-3590] Read single counter fix (#3080)
RebornedBrain Sep 14, 2023
fa59bcc
nfc: fix mfu API
gornekich Sep 14, 2023
ffe00e4
Merge branch 'dev' into gornek/nfc_refactoring_v1
gornekich Sep 14, 2023
d359f0b
[NFC] Rendering improvements (#3082)
gsurkov Sep 15, 2023
e1298e3
Add myki parser (#3081)
gsurkov Sep 15, 2023
621630f
[FL-3581] Improved UID editing (#3086)
gsurkov Sep 18, 2023
b4076ef
[FL-3584] Emulation exit fix (#3087)
gsurkov Sep 18, 2023
a1ef31b
[FL-3598] Fix PVS-Studio warnings in NFC refactoring (#3091)
gsurkov Sep 18, 2023
9e374a4
[FL-3576] Ultralight static lock bytes implementation (#3094)
RebornedBrain Sep 19, 2023
a8fa187
[FL-3603] Support for external NFC field detection on the new NFC sta…
Astrrra Sep 19, 2023
2a4bc86
Implement RPC mode for NFC app (#3096)
gsurkov Sep 19, 2023
6a32ac9
mf ultralight: fix PVS warnings
gornekich Sep 19, 2023
ed8e2fe
Merge branch 'dev' into gornek/nfc_refactoring_v1
gornekich Sep 19, 2023
f466cfa
[FL-3446] Dynamic lock bytes and CMD_WRITE adjustments (#3101)
RebornedBrain Sep 26, 2023
1f23b76
[FL-3595] Nfc fixes (#3111)
gornekich Sep 26, 2023
85d3481
[FL-3591] Ultralight fix unlock with reader (#3109)
RebornedBrain Sep 26, 2023
08c4c8b
[FL-3602] ISO15693 & DigitalSequence/Signal optimizations (#3108)
gsurkov Sep 26, 2023
cf5aece
[FL-3613] NFC response delay timer (#3115)
gsurkov Sep 27, 2023
cac2c2d
[FL-3599] Ultralight C support (#3116)
RebornedBrain Sep 28, 2023
df6c974
[FL-3591] Unlock card result scene adjustments (#3120)
RebornedBrain Sep 29, 2023
15a36f5
Merge branch 'dev' into gornek/nfc_refactoring_v1
gornekich Sep 29, 2023
131cdd2
NFC fixes (#3125)
gornekich Oct 2, 2023
2865b81
Merge branch 'dev' into gornek/nfc_refactoring_v1
gornekich Oct 2, 2023
dae5d3d
Ascii counter fix (#3130)
RebornedBrain Oct 6, 2023
9883120
COMPATIBLE_WRITE command fix (#3135)
RebornedBrain Oct 9, 2023
70b2f92
NFC various fixes (#3134)
gornekich Oct 10, 2023
86ecfa4
Ultralight compatible write fixes (#3139)
RebornedBrain Oct 12, 2023
b58e7ab
NFC: Proper nfc files deleting (#3148)
RebornedBrain Oct 13, 2023
a77c69f
Fix typo in mf_desfire_render.c
gsurkov Oct 16, 2023
10f8940
Fix typo in iso14443_4a_render.c
gsurkov Oct 16, 2023
a966c33
Add ST25TB poller (#3076)
augustozanellato Oct 16, 2023
5139d17
[FL-3594] NFC docs (new stack) (#3147)
gsurkov Oct 16, 2023
5a59a5b
Merge remote-tracking branch 'origin/dev' into gornek/nfc_refactoring_v1
gornekich Oct 16, 2023
268cd9f
[FL-3625] AUTH_LIMIT implementation (#3153)
RebornedBrain Oct 17, 2023
1eb1bb8
NFC: more fixes (#3154)
gornekich Oct 17, 2023
597fd21
[FL-3622] Read page rollover for PWD protected pages (#3157)
RebornedBrain Oct 18, 2023
f97ff5c
[FL-3626] NFC timer refactoring (#3155)
gsurkov Oct 18, 2023
9eb3666
Remove rogue TODO
gsurkov Oct 18, 2023
29e425d
Remove rogue TODO
gsurkov Oct 18, 2023
c6258db
Remove rogue FIXME
gsurkov Oct 18, 2023
5fb9ec7
nfc iso14443-3a: add poller trx functions to API
gornekich Sep 12, 2023
5e5696c
nfc hal: make sure nfc hal is released
gornekich Oct 22, 2023
bc73b34
iso14443_3a: use macros instead of literal
gornekich Oct 22, 2023
a89b741
Merge branch 'dev' into gornek/nfc_refactoring_v1
skotopes Oct 23, 2023
5f9a8cd
GitHub: enable lib debug in unit tests
skotopes Oct 24, 2023
636d351
Bump api symbols
skotopes Oct 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@
/scripts/toolchain/ @skotopes @DrZlo13 @hedger @drunkbatya

# Lib
/lib/ST25RFAL002/ @skotopes @DrZlo13 @hedger @gornekich
/lib/stm32wb_copro/ @skotopes @DrZlo13 @hedger @gornekich
/lib/digital_signal/ @skotopes @DrZlo13 @hedger @gornekich
/lib/infrared/ @skotopes @DrZlo13 @hedger @gsurkov
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
if: success()
timeout-minutes: 10
run: |
./fbt flash SWD_TRANSPORT_SERIAL=2A0906016415303030303032 FIRMWARE_APP_SET=unit_tests FORCE=1
./fbt flash SWD_TRANSPORT_SERIAL=2A0906016415303030303032 LIB_DEBUG=1 FIRMWARE_APP_SET=unit_tests FORCE=1

- name: 'Wait for flipper and format ext'
id: format_ext
Expand Down Expand Up @@ -66,4 +66,4 @@ jobs:
- name: 'Check GDB output'
if: failure()
run: |
./fbt gdb_trace_all SWD_TRANSPORT_SERIAL=2A0906016415303030303032 FIRMWARE_APP_SET=unit_tests FORCE=1
./fbt gdb_trace_all SWD_TRANSPORT_SERIAL=2A0906016415303030303032 LIB_DEBUG=1 FIRMWARE_APP_SET=unit_tests FORCE=1
2 changes: 1 addition & 1 deletion .pvsoptions
Original file line number Diff line number Diff line change
@@ -1 +1 @@
--ignore-ccache -C gccarm --rules-config .pvsconfig -e lib/cmsis_core -e lib/fatfs -e lib/fnv1a-hash -e lib/FreeRTOS-Kernel -e lib/heatshrink -e lib/libusb_stm32 -e lib/littlefs -e lib/mbedtls -e lib/micro-ecc -e lib/microtar -e lib/mlib -e lib/qrcode -e lib/ST25RFAL002 -e lib/stm32wb_cmsis -e lib/stm32wb_copro -e lib/stm32wb_hal -e lib/u8g2 -e lib/nanopb -e */arm-none-eabi/*
--ignore-ccache -C gccarm --rules-config .pvsconfig -e lib/cmsis_core -e lib/fatfs -e lib/fnv1a-hash -e lib/FreeRTOS-Kernel -e lib/heatshrink -e lib/libusb_stm32 -e lib/littlefs -e lib/mbedtls -e lib/micro-ecc -e lib/microtar -e lib/mlib -e lib/qrcode -e lib/stm32wb_cmsis -e lib/stm32wb_copro -e lib/stm32wb_hal -e lib/u8g2 -e lib/nanopb -e */arm-none-eabi/*
Loading