This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/TRF7970A: neard[531]: Error while reading NFC bytes

Part Number: TRF7970A

Tool/software: Linux

Hi All,

i have been using neard and neardal to read NFC tags. Most of the time its unreliable, like 50/50 chance of reading the tag. Is there any official stack/sdk for trf7970A or any recommended method to use it  ? I used the demo code in neardal to test the reading.

  • Hello Anjo,

    Are you using the TI example from: www.ti.com/.../LINUX-NFC-TRF7970A

    It's not clear from the question.

    That is our official NFC software offering for the TRF7970A with neard and the only offering we have customized to Linux.

    Any other software example is designed to run on host MCU's and not on operating systems, and the closest 'interface' to an OS would be USB communication.
  • Hi Ralph,
    Thank you for the quick response.
    i am using the same examples from TI, and had tested with neard python scripts "test/test-adapter" . It also shows the same error.
    i am using linux-fslc-4.1.2 version. its not a linux version issue as i have tested with 3.14, 4.1, 4.9 kernel version and all have the same behaviour. It would really help if you could tell me under what condition "Error while reading NFC bytes" can come. Any hardware issue related to antenna strength ?
  • Hello Anjo,

    I am going to contact our neard expert who can speak better to this topic.
  • Hi Ralph,
    is it possible to leave the transmitter powered on rather than making the "test/test-adapter poll nfc0 on Initiator" every time before reading a card ?
  • Hi Anjo.

    If you're getting "Error while reading NFC bytes" a lot -- and its only working 50% of the time -- then the tag is likely on the fringe of the RF coverage. Have you made any measurements and do you have any experience with the particular board/antenna setup you're using (i.e., is it new and you're still working out antenna issues)? Also, what type of tag are you using?

    BTW, I'm travelling for the next week so I'll be in and out but will check in here as often as I can.

    Mark
    --
  • Hello Anjo,

    Other questions which would be helpful is what tag technology is being used, what the size of the tag is compared to the reader antenna, and if it's a custom board, what are the antenna tuning specifications such as bandwidth/Q factor.
  • Hi Ralph,

    Sorry for the delay. 

    here is the configurations

    1. Matched Q Factor - 7
    2. Bandwidth - 2.3 MHz
    3. Antenna Size - 26.5 30 0.6 mm
    4. Tag Size - 76 * 45 mm
    5. Tag Standard - ISO / IEC 14443 - 3A
    6. Tag IC - NTAG 213

  • Hello Anjo,

    Thank you for those details.

    Let me ensure I am understanding fully.

    The reader antenna is 26.5mm by 30mm in size?

    And the tag antenna is 76 mm by 45 mm in size?

    If so, that is a large mismatch in sizes, and not in a good way. The reader is responsible for energizing the tag with the RF field, but if reading a tag that much larger than the reader, it will be very hard for the reader to energize the tag. The energy transfer is based on inductive coupling of the two coils. In a case where one coil is 4x larger than the other, that can be quite a challenge. If the reader is that large, the problem is usually that read holes exist where the tag can't be seen, but when the tag is that large, you may run into issues where the tag just can't be powered period, and would have very limited read range compared to a system where both reader and tag antennas are similar in size.

    If that truly is the parameters for your hardware, then I think you need to look into a smaller tag size to work with your reader antenna.

    The other tuning specifications are fine at least, that bandwidth and Q factor is fine for ISO14443A.
  • Hi Ralph,

    Thank you for the response. i have conveyed the same to our Hardware engineers and they will run the test with smaller tags. one query i still have is , is it possible to leave the transmitter powered on rather than making the "test/test-adapter poll nfc0 on Initiator" every time before reading a card ?

  • Hi Anjo,

    I will have to defer to Mark's knowledge on that aspect.

    Mark, can you please offer your comments? Thanks!

  • Hi Anjo.

    I don't think there is an easy way to do that. The NFC subsystem in the kernel powers off the RF each time it tries a new "technology". With enough hacking, you can probably make that happen but it'll be hacks only.
  • Hi Mark,

    Thank you for the reply. I will try this.