Hi All, My app inventories iso15693 tags arranged on a line almost 18cm long with the sensor in the center. Even tags at both ends are read when the line is continuously full.
But when i remove the next to last Tag from the line then the last one is not read any more. When i put back the removed Tag then both tags are read again. If the line is made both adding tags from the ends to the center or adding tags from the Center to the ends then every tags is read. Only removing Tag the way described above is when tags are missed.
ANY SUGGESTION WHAT THE PROBLEM IS?
I'm sending the INVENTORY command to a PN5180-NFC module from an esp32.
Thanks i'm advance
Problem partially solved.
I checked the AGC_VALUE when the antenna was unloaded and its value was 76 (dec).
I decided to change the external RX resistors. I tried several values, 5.1kohm, 10kohm (max), 2kohm and 1kohm (min).
The winner were the 2kohm resistors. The AGC_VALUE was 290 (dec), more closer to 300. The 1kohm resistors pair increases AGC_VALUE to 420 when antenna is unloaded.
Now problem muted. When there is zero distance Tag then tags on the border are not read.
I realized that the GEAR is increased to max (8) and Power is too low. So i dísabled DPC (i really decrease lut size to 1) but when the Zero distance Tag is put over the antenna then board gets hot.
I think i need to design My own antenna for My application. It need o read several tags on a line.
Is it possible to design a linear antenna, aprox 180 mm long and 40mm wide, doing the right maths for the Match circuit? Every Tag Will be at aprox 10mm distance from the antenna and DPC won't be needed.
Best regards,
Osmany
Hi @oferrer,
Is this an evaluation board of the PN5180, or a custom implementation? Also, which tags are you using?
Please try firstly the 15693 example from our Reader Library to see if the problem persists.
You can also look at this application note (chapter 4.2 ISO/IEC 15693) for a code snippet that initializes the PN5180 to the ISO15693 protocol, sends an inventory command and listens to the response of a tag.
Best regards,
Julián
Hi Julián,
Thanks for your response.
I'm using a PN5180-NFC developer module (PN5180A IC) got from Amazon, and an ESP32 DevkitC as MC.
The INVENTORY commands (slot 16+afi filtering) runs periodicaly scanning for tags. It runs well while adding tags into the field. It gets every Tag UID. After the command successes then memory blocks are read (Read single block command) for each inventoried Tag in order to complete information. The response keep steady for every Tag inside the expected range, even from tags on the border.
The problem happens when Tag next to the last tag (tag previous to the tag on the border) is removed from the field, and an empty space remains. The INVENTORY command loses the tag on the border (not only the removed tag). Sometimes it loses the tag UID, sometimes gets the UID but cannot read Tag memory.
When the empty space is filled with any Tag, then tag on the border and its memory blocks are read again.
Note. I didn't calibrate the pn5180. Instead, My app embraced the predefined Range.
Thanks in advance,
Hi @oferrer,
This could be a problem with how the program reads the tags in order. Could you test this by removing the third to last tag from the chain to see if the problem persists?
Unfortunately, as this is a third-party MCU, it is out of the support scope of this community. I apologize for any inconveniences this may cause.
Best regards,
Julián.
Thanks for answering me again.
Removing the third Tag from the border doesn't trigger the problem.
I think i AM expecting too wide Range from the pn5180. (1x8 tags array with pn5180 in the middle)
I AM confused because when there are less Tags into the field then there are potentially less collisions to solve by inventory slot16 algorithm, taking shorter time.
Well, alternative solution Will ve arranging the tags on two lines (2x4 tags), with the pn5180 in the center. In this way tags are scanned twice a second successfuly, no matter any movement.
Thanks again for your time.