st25r3911b sequence to see tag
Hi all,
I use a dsPIC33 MCU, but I am very familiar with the STM32 as well, so I used the ST25R Dicovery source code as an example.
The design is a PIC MCU and the ST25R3911B, (with our antenna circuitry following ST design suggestions). I have the SPI port communication working well, and I can read/write to the ST25R registers from the MCU.
1. I currently call the initialization at power up (rfalAnalogConfigInitialize() and rfalInitialize()), with gets completed without errors.
2. I now need to know what is the sequence of commands needed to talk to a tag. We can talk to the tag (read/write) from the
ST25R Dicovery
PC GUI without problems, but I am not sure which commands need to be sent to achieve that in the embedded code, because I don't know the exact sequence of commands needed. Here's what I do when I want to discover a tag placed on the antenna:a. I call iso15693Initialize() ... no error. (trying to imitate the 'Configuration' button click on the PC GUI)
b. I call rfalFieldOnAndStartGT() ... no error. Do I need this????
c. And trying to imitate the 'Inventory' button click on the PC GUI, I call iso15693Inventory() ... but the code gets stuck in rfalTransceiveRunBlockingTx() in this statement: while( ((ret = rfalGetTransceiveStatus() ) == ERR_BUSY) && rfalIsTransceiveInTx() ); ... it's forever waiting at RFAL_TXRX_STATE_TX_WAIT_GT state.
Also, I have rfalWorker() in my main loop in main.c
Am I missing a command in my sequence?
Or maybe, does it mean it needs the tag closer? Is the antenna not turned on? Is it potentially a hardware problem with our antenna circuitry?
After that is achieved, I realize I still have to try to imitate 'Get System Information', 'iso15693ReadBlock' for reading blocks, 'iso15693WriteBlock', etc, etc
But am I missing anything so far just to initialize the device and then get an 'Inventory'? (before calling iso15693Inventory())
Thanks,
Gil
#iso15693 #st25r3911b-disco #st25r3911b #inventory16slot