Thanks Dries, I did look at that example and your description clarifies a lot of details.
The message exchange approach works well for Android devices, but as far as I know, the iPhone does not expose NFC write capability at this time. So I believe reading large messages is the only option with the iPhone.
I was thinking of two possible solutions:
- Set BYPASS bit in the CFG register and place larger messages in EEPROM
- Implement low level NFC protocol using NFC communication registers (SR, CMDIN, TARGET, LAST_ACCESS etc.)
I'm guessing option 1 will work, but the NHS3100 user manual says all NFC registers will be disabled in bypass mode, so you probably can't get interrupts. Also, it would be limited to EEPROM size, which is an improvement over shared RAM, but not ideal.
Option 2 sounds ideal, but I don't know how to implement it or if it's even possible. From the description of the NFC registers it appears to be possible, but I really don't know how to do that.
Any recommendation would be greatly appreciated.