continue;\r
                }\r
 \r
-               // send a dummy byte as reader response in order to trigger the cards authentication timeout\r
-               uint8_t dummy_answer = 0;\r
-               ReaderTransmit(&dummy_answer, 1, NULL);\r
-               timeout = GetCountSspClk() + AUTHENTICATION_TIMEOUT;\r
+               // send a dummy response in order to trigger the cards authentication failure timeout\r
+               uint8_t dummy_answer[8] = {0};\r
+               ReaderTransmit(dummy_answer, 8, NULL);\r
 \r
                num_nonces++;\r
                if (num_nonces % 2) {\r
                        i += 9;\r
                }\r
 \r
-               // wait for the card to become ready again\r
-               while(GetCountSspClk() < timeout);\r
-\r
        }\r
 \r
        LED_C_OFF();\r
 \r
        uint8_t receivedAnswer[MAX_MIFARE_FRAME_SIZE];\r
        uint8_t receivedAnswerPar[MAX_MIFARE_PARITY_SIZE];\r
+       \r
+       LED_A_ON();\r
+       LED_B_OFF();\r
+       LED_C_OFF();\r
+       iso14443a_setup(FPGA_HF_ISO14443A_READER_LISTEN);\r
+\r
+       clear_trace();\r
+       set_tracing(true);      \r
 \r
        ReaderTransmitBitsPar(wupC1,7,0, NULL);\r
        if(ReaderReceive(receivedAnswer, receivedAnswerPar) && (receivedAnswer[0] == 0x0a)) {\r
 \r
        // From iceman1001: removed the if,  since some magic tags misbehavies and send an answer to it.\r
        mifare_classic_halt(NULL, 0);\r
-\r
+       \r
+       LED_B_ON();\r
        cmd_send(CMD_ACK,isOK,0,0,0,0);\r
+       LED_B_OFF();\r
+\r
+       FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF);\r
+       LEDsoff();      \r
 }\r
 \r
 //\r