Dear All,
I have an issue regarding ISO 15693 Write Command. Using Address Flag (0x22) command works fine and also getting success response, but as I am sending frame with Option flag with tag UID (0x62) data get written into tag memory successfully but response I am getting is not success(instead of 0x0000 it gives 0x4f01). Here is our customised code for Write Single Block :
uint8_t TxBuflength=0;
phhalRf_RxParams_t sRxParams;
uint16_t Status=0xFFFF;
Status = phhalRf_FieldOn();
Status = phhalRf_LoadProtocol_Initiator(E_PHHAL_RF_LP_I_TX_15693_100, E_PHHAL_RF_LP_I_RX_15693_26);
PH_RETURN_ON_FAILURE(Status)
phhalRf_SetConfig(PHHAL_RF_CONFIG_TXWAIT_US, 1200);
phhalRf_SetConfig(PHHAL_RF_CONFIG_RXWAIT_US, 10);
phhalRf_PCD_SetExchgFdt(20000);
if((Flag & ISO15K_ADDRESS_FLAG)==ISO15K_ADDRESS_FLAG) // Check Valid Flag 0x02
{
phhalRf_PCD_SetExchgFdt(20000);
Flag |=ISO15K_DATA_RATE_FLAG;
TxBuffer[TxBuflength++] = Flag;
TxBuffer[TxBuflength++] = Cmd;
memcpy(&TxBuffer[TxBuflength],UID,8);
TxBuflength+=8;
}
else
{
Flag |=ISO15K_DATA_RATE_FLAG;
TxBuffer[TxBuflength++] = Flag;
TxBuffer[TxBuflength++] = Cmd;
}
if((Flag & ISO15K_OPTION_FLAG)==ISO15K_OPTION_FLAG)
{
Status = phhalRf_PCD_Exchg_TxOnlyEOF(RxBuffer,&sRxParams);
__NOP();
}
TxBuffer[TxBuflength++] = BlockAddress;
memcpy(&TxBuffer[TxBuflength],(uint8_t *)BlockData,4);
TxBuflength +=4;
Status = phhalRf_PCD_Exchg(TxBuffer,RxBuffer,TxBuflength,&sRxParams); // Exchange function
return Status;
Is anything wrong or missing in above code? Please guide us for the same
Thanks in Advance
regards,
Amol
Dear Amol Borase,
what ISO 15693 tag are you using and what reader as well ?
my recommendation would be that you base your code in our NFC reader library first in order to avoid any issue, there is an example available in the NFC reader library for ISO 15693.
please let me know which products from NXP are you using and whether you are using our library as a base.
Have a great day !
BR
Jonathan
Hii Jonathan,
We are using PN7462 Development Board.To develop code for ISO 15693 protocol command using basic internal library functions as you can see in above given code. All other commands developed like this is working fine with no issue but in case of write with option flag I made configurations according to NFC library functions example too . Can you please check is there any mistake we are doing while configuration related to option flag. Please suggest any changes in configuration in above mention code.