diff --git a/scenes/seader_scene_card_menu.c b/scenes/seader_scene_card_menu.c index dca9dc0..e6364ec 100644 --- a/scenes/seader_scene_card_menu.c +++ b/scenes/seader_scene_card_menu.c @@ -34,7 +34,7 @@ void seader_scene_card_menu_on_enter(void* context) { seader_scene_card_menu_submenu_callback, seader); if(seader->is_debug_enabled) { - if(credential->sio[0] != 0) { + if(credential->sio[0] == 0x30) { submenu_add_item( submenu, "Save SR", diff --git a/scenes/seader_scene_credential_info.c b/scenes/seader_scene_credential_info.c index 9b8e69a..d8cb084 100644 --- a/scenes/seader_scene_credential_info.c +++ b/scenes/seader_scene_credential_info.c @@ -72,7 +72,7 @@ void seader_scene_credential_info_on_enter(void* context) { FontSecondary, furi_string_get_cstr(credential_str)); - if(credential->sio[0] != 0) { + if(credential->sio[0] == 0x30) { furi_string_set(sio_str, "+SIO"); widget_add_string_element( widget, 64, 48, AlignCenter, AlignCenter, FontSecondary, furi_string_get_cstr(sio_str)); diff --git a/seader_worker.c b/seader_worker.c index 33dbd38..d537ffd 100644 --- a/seader_worker.c +++ b/seader_worker.c @@ -378,10 +378,13 @@ bool unpack_pacs( FURI_LOG_D(TAG, "Received pac: %s", pacDebug); memset(display, 0, sizeof(display)); - for(uint8_t i = 0; i < sizeof(seader_credential->sio); i++) { - snprintf(display + (i * 2), sizeof(display), "%02x", seader_credential->sio[i]); + if(seader_credential->sio[0] == 0x30) { + for(uint8_t i = 0; i < sizeof(seader_credential->sio); i++) { + snprintf( + display + (i * 2), sizeof(display), "%02x", seader_credential->sio[i]); + } + FURI_LOG_D(TAG, "SIO %s", display); } - FURI_LOG_D(TAG, "SIO %s", display); } if(pac->size <= sizeof(seader_credential->credential)) { @@ -565,7 +568,7 @@ bool iso15693Transmit(SeaderWorker* seader_worker, uint8_t* buffer, size_t len) snprintf(display + (i * 2), sizeof(display), "%02x", rxBuffer[i]); } // FURI_LOG_D(TAG, "Result %d %s", recvLen, display); - if(memcmp(buffer, readBlock6, len) == 0) { + if(memcmp(buffer, readBlock6, len) == 0 && rxBuffer[0] == 0x30) { memcpy(credential->sio, rxBuffer, 32); } else if(memcmp(buffer, readBlock9, len) == 0) { memcpy(credential->sio + 32, rxBuffer + 8, 24);