NFC magic cards support (#1966)

* nfc magic: introduce nfc app to work with magic cards
* nfc: add nfc device functions to API
* nfc magic: add bacis scenes
* nfc magic: add wrong card and write confirm scenes
* nfc magic: introduce magic lib
* nfc magic: write magic lib
* nfc magic: add write commands to magic lib
* nfc magic: work on worker
* furi_hal_nfc: add bits data exchage method to API
* nfc magic: rework with new API
* nfc magic: add check and wipe scenes
* nfc magic: add icons, gui fixes
* nfc: format python src

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
gornekich
2022-11-04 11:01:44 +04:00
committed by GitHub
parent 3bd74b7f01
commit bf8fd71c00
35 changed files with 1693 additions and 0 deletions

View File

@@ -4,6 +4,9 @@ env.Append(
CPPPATH=[
"#/lib/nfc",
],
SDK_HEADERS=[
File("#/lib/nfc/nfc_device.h"),
],
)
libenv = env.Clone(FW_LIB_NAME="nfc")

View File

@@ -12,6 +12,10 @@
#include <lib/nfc/protocols/mifare_classic.h>
#include <lib/nfc/protocols/mifare_desfire.h>
#ifdef __cplusplus
extern "C" {
#endif
#define NFC_DEV_NAME_MAX_LEN 22
#define NFC_READER_DATA_MAX_SIZE 64
#define NFC_DICT_KEY_BATCH_SIZE 50
@@ -101,3 +105,7 @@ bool nfc_device_delete(NfcDevice* dev, bool use_load_path);
bool nfc_device_restore(NfcDevice* dev, bool use_load_path);
void nfc_device_set_loading_callback(NfcDevice* dev, NfcLoadingCallback callback, void* context);
#ifdef __cplusplus
}
#endif