added a command to clear trace. Moved picopass reader to above _other_ 14b checks to improve speeds. Might do a extensive param to search for those odd ones

This commit is contained in:
iceman1001 2024-01-16 16:23:20 +01:00
commit 989ef99e4a

View file

@ -74,6 +74,17 @@ static int switch_off_field_14b(void) {
return PM3_SUCCESS;
}
static int clear_trace_14b(void) {
iso14b_raw_cmd_t packet = {
.flags = ISO14B_CLEARTRACE,
.timeout = 0,
.rawlen = 0,
};
clearCommandBuffer();
SendCommandNG(CMD_HF_ISO14443B_COMMAND, (uint8_t *)&packet, sizeof(iso14b_raw_cmd_t));
return PM3_SUCCESS;
}
static void hf14b_aid_search(bool verbose) {
json_t *root = AIDSearchInit(verbose);
@ -1454,6 +1465,8 @@ static int CmdHF14BReader(const char *Cmd) {
PrintAndLogEx(INFO, "Press " _GREEN_("<Enter>") " to exit");
}
clear_trace_14b();
return readHF14B(cm, verbose);
}
@ -2541,6 +2554,13 @@ int readHF14B(bool loop, bool verbose) {
else if (found)
return PM3_SUCCESS;
// Picopass
found |= HF14B_picopass_reader(verbose) ;
if (found && loop)
continue;
else if (found)
return PM3_SUCCESS;
// try ASK CT 14b
found |= HF14B_ask_ct_reader(verbose);
if (found && loop)
@ -2556,13 +2576,6 @@ int readHF14B(bool loop, bool verbose) {
else if (found)
return PM3_SUCCESS;
// Picopass
found |= HF14B_picopass_reader(verbose) ;
if (found && loop)
continue;
else if (found)
return PM3_SUCCESS;
} while (loop && kbd_enter_pressed() == false);
if (verbose && found == false) {