AnsweredAssumed Answered

[SOLVED] PN7120: ICODE SLIX2 Read Single Block doesn't respond

Question asked by Steve Rapinchuk on Jan 31, 2018
Latest reply on Mar 1, 2018 by Steve Rapinchuk

I'm trying to read/write ICODE SLIX2 ICs (SL2S2602) using a PN7120, which is connected to a PIC32MX microcontroller without an RTOS. Due to the timing constraints of the I2C bus (can only read/write within a very small window), I need to write my own code to communicate with the PN7120. I get to the point where RF_INTF_ACTIVATED_NTF is returned (including UID). I then send a "single block read" command, which gets a CORE_CONN_CREDITS_NTF response, but never gets a response to the single block read. At first I thought maybe the CRC in the single block read command was incorrect, but I verified my code generates the exact same CRC as the example at the end of the ISO/IEC FCD 15693-3 document.

Here's the complete transaction log I exported from an I2C protocol analyzer (TotalPhase Beagle).

 

CORE_RESET_CMD: 20 00 01 01        
CORE_RESET_RSP: 40 00 03 00 10 01* 


CORE_INIT_CMD: 20 01 00
CORE_INIT_RSP: 40 01 17 00 03 0E 03 00 06 00 01 02 03 81 82 02 C8 00 FF 02 00 04 05 08 02 02*


RF_DISCOVER_MAP_CMD: 21 00 16 07 04 02 02 05 03 03 01 01 01 02 01 01 03 01 01 04 01 02 80 01 80
RF_DISCOVER_MAP_RSP: 41 00 01 00*


RF_DISCOVER_CMD: 21 03 15 0A 00 01 02 01 01 01 06 01 05 01 80 01 81 01 82 01 83 01 85 01
RF_DISCOVER_RSP: 41 03 01 00*
RF_INTF_ACTIVATED_NTF: 61 05 15 01 01 06 06 FF 01 0A 00 00 8C 70 D6 00 08 01 04 E0 06 80 80 00*


read single block: 00 00 0D 20 20 8C 70 D6 00 08 01 04 E0 00 16 2D
CORE_CONN_CREDITS_NTF: 60 06 03 01 00 01*
 

It never gives a response to the read single block as all following reads on the I2C bus get NAK'ed. Am I missing something? I can't find any complete examples anywhere showing the I2C traffic while attempting to "read single block" on an ICODE SLIX2.

Outcomes