Fix Mifare NTAG read #1147

Fix #1145
This commit is contained in:
gornekich 2022-04-22 15:41:10 +03:00 committed by GitHub
parent f9140ac2cd
commit 799eb3f502
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 7 deletions

View File

@ -220,7 +220,7 @@ bool mf_classic_read_block(
tx_rx->tx_bits = 4 * 9; tx_rx->tx_bits = 4 * 9;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeRaw; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeRaw;
if(furi_hal_nfc_tx_rx(tx_rx, 5)) { if(furi_hal_nfc_tx_rx(tx_rx, 50)) {
if(tx_rx->rx_bits == 8 * 18) { if(tx_rx->rx_bits == 8 * 18) {
for(uint8_t i = 0; i < 18; i++) { for(uint8_t i = 0; i < 18; i++) {
block->value[i] = crypto1_byte(crypto, 0, 0) ^ tx_rx->rx_data[i]; block->value[i] = crypto1_byte(crypto, 0, 0) ^ tx_rx->rx_data[i];

View File

@ -27,7 +27,7 @@ bool mf_ultralight_read_version(
tx_rx->tx_data[0] = MF_UL_GET_VERSION_CMD; tx_rx->tx_data[0] = MF_UL_GET_VERSION_CMD;
tx_rx->tx_bits = 8; tx_rx->tx_bits = 8;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(!furi_hal_nfc_tx_rx(tx_rx, 4)) { if(!furi_hal_nfc_tx_rx(tx_rx, 50)) {
FURI_LOG_D(TAG, "Failed reading version"); FURI_LOG_D(TAG, "Failed reading version");
mf_ul_set_default_version(reader, data); mf_ul_set_default_version(reader, data);
furi_hal_nfc_sleep(); furi_hal_nfc_sleep();
@ -78,7 +78,7 @@ bool mf_ultralight_read_pages(
tx_rx->tx_data[1] = i; tx_rx->tx_data[1] = i;
tx_rx->tx_bits = 16; tx_rx->tx_bits = 16;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(!furi_hal_nfc_tx_rx(tx_rx, 4)) { if(!furi_hal_nfc_tx_rx(tx_rx, 50)) {
FURI_LOG_D(TAG, "Failed to read pages %d - %d", i, i + 3); FURI_LOG_D(TAG, "Failed to read pages %d - %d", i, i + 3);
break; break;
} }
@ -105,7 +105,7 @@ bool mf_ultralight_fast_read_pages(
tx_rx->tx_data[2] = reader->pages_to_read - 1; tx_rx->tx_data[2] = reader->pages_to_read - 1;
tx_rx->tx_bits = 24; tx_rx->tx_bits = 24;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(furi_hal_nfc_tx_rx(tx_rx, 20)) { if(furi_hal_nfc_tx_rx(tx_rx, 50)) {
reader->pages_read = reader->pages_to_read; reader->pages_read = reader->pages_to_read;
data->data_size = reader->pages_read * 4; data->data_size = reader->pages_read * 4;
memcpy(data->data, tx_rx->rx_data, data->data_size); memcpy(data->data, tx_rx->rx_data, data->data_size);
@ -124,7 +124,7 @@ bool mf_ultralight_read_signature(FuriHalNfcTxRxContext* tx_rx, MfUltralightData
tx_rx->tx_data[1] = 0; tx_rx->tx_data[1] = 0;
tx_rx->tx_bits = 16; tx_rx->tx_bits = 16;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(furi_hal_nfc_tx_rx(tx_rx, 7)) { if(furi_hal_nfc_tx_rx(tx_rx, 50)) {
memcpy(data->signature, tx_rx->rx_data, sizeof(data->signature)); memcpy(data->signature, tx_rx->rx_data, sizeof(data->signature));
signature_read = true; signature_read = true;
} else { } else {
@ -143,7 +143,7 @@ bool mf_ultralight_read_counters(FuriHalNfcTxRxContext* tx_rx, MfUltralightData*
tx_rx->rx_data[1] = i; tx_rx->rx_data[1] = i;
tx_rx->tx_bits = 16; tx_rx->tx_bits = 16;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(!furi_hal_nfc_tx_rx(tx_rx, 4)) { if(!furi_hal_nfc_tx_rx(tx_rx, 50)) {
FURI_LOG_D(TAG, "Failed to read %d counter", i); FURI_LOG_D(TAG, "Failed to read %d counter", i);
break; break;
} }
@ -164,7 +164,7 @@ bool mf_ultralight_read_tearing_flags(FuriHalNfcTxRxContext* tx_rx, MfUltralight
tx_rx->rx_data[1] = i; tx_rx->rx_data[1] = i;
tx_rx->tx_bits = 16; tx_rx->tx_bits = 16;
tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault; tx_rx->tx_rx_type = FuriHalNfcTxRxTypeDefault;
if(!furi_hal_nfc_tx_rx(tx_rx, 4)) { if(!furi_hal_nfc_tx_rx(tx_rx, 50)) {
FURI_LOG_D(TAG, "Failed to read %d tearing flag", i); FURI_LOG_D(TAG, "Failed to read %d tearing flag", i);
break; break;
} }