Hi, It's a little bit hard to help you, without any additional infomation. Is the "electrical" connection stable? Did you check the eletrical signals? Do you receive any data from the card. Do you have any output from the test program? With kind regards
Hi Fatih, As said before, the respond is the "card" requesting an IFS change ... The Aruino has to answer it correctly so that further communication is possible .. To anser it try the following code, after receiving the above response ... data[b++] = 0x00; data[b++] = 0xA4; data[b++] = 0x08; data[b++] = 0x00; data[b++] = 0x06; data[b++] = 0x3d; data[b++] = 0x10; data[b++] = 0x3d; data[b++] = 0x20; data[b++] = 0x2f; data[b++] = 0x10; data[b++] = 0x00; Serial.print("Select File : (OpenPGP) ... ");...
Hi Fatih, As said before, the respond is the "card" requesting an IFS change ... The Aruino has to answer it correctly so that further communication is possible .. To anser it try the following code, after receiving the above response ... data[b++] = 0x00; data[b++] = 0xA4; data[b++] = 0x08; data[b++] = 0x00; data[b++] = 0x06; data[b++] = 0x3d; data[b++] = 0x10; data[b++] = 0x3d; data[b++] = 0x20; data[b++] = 0x2f; data[b++] = 0x10; data[b++] = 0x00; Serial.print("Select File : (OpenPGP) ... ");...
Hi Fatih, As said before, the respond is the "card" requesting an IFS change ... The Aruino has to answer it correctly so that further communication is possible .. To anser it try the following code, after receiving the above respond ... data[b++] = 0x00; data[b++] = 0xA4; data[b++] = 0x08; data[b++] = 0x00; data[b++] = 0x06; data[b++] = 0x3d; data[b++] = 0x10; data[b++] = 0x3d; data[b++] = 0x20; data[b++] = 0x2f; data[b++] = 0x10; data[b++] = 0x00; Serial.print("Select File : (OpenPGP) ... "); sc.send_IBlock(0x00,...
Hi Fatih, When I'm not mistaken, the "answer" you have seen is actually a "requet" of the card to set the "IFS" to 254, so that a "lot" of data can be transmitted via one command ... You can check if you get better results, when you change the IFS request in the example to the following ... So the card does not need to "request" an IFS change form it's side ~~~ Serial.print("Try to change IFS ... "); // Offer the card to send a maximum of 0x20 bytes per block // Node Adress 0 (Value 0xFE) if (sc.changeIFS(0,...
Hi Fatih, you are able to read the data ? That's sounds good.. Regards Angus71
Hi Fatih, This should quite simple, just try the t1 example? examples/apdu_t1_communication/apdu_t1_communication.ino and fill in your command from c# into the "data", just as you give it there ... Regards Angus71
Hi Fatih, Based on your C# code I expect the command you use should be command.cla = 0x00; command.ins = 0xA4; command.p1 = 0x08; command.p2 = 0x00; command.data_buf = data; command.data_size = 6; command.resp_size = 0; data[0] = 0x3D; data[1] = 0x10; data[2] = 0x3D; data[3] = 0x20; data[4] = 0x2F; data[5] = 0x10; As it looked like you put the command size as the first entry into the data Regards Angus71