ARMmbed/mbed-os-example-nfc

Question: How to respond to interrupts in SYNC mode?

amitchone opened this issue · 14 comments

Hi there,

I'm using the NFC_EEPROM example code from the latest commit alongside the latest version of the M24SR NFC EEPROM driver provided here.

I have the program compiling and writing the mbed.com URI to the chip, this is then readable using a variety of NFC applications on an Android phone, I'm using ST25. This is currently using SYNC mode. If I use ASYNC mode the application hangs, presumably waiting for a callback that never triggers (?), after printing Building an ndef message. I did follow the advice in this comment regarding the setup of the device into ASYNC mode to no avail.

With the above as context - I'm having trouble figuring out exactly how to respond to interrupts from the M24SR and trigger actions based on that. For example, is there a callback function that exists when an NDEF record is modifed, added or deleted? If so, how would I go about invoking it? which GPO mode would be best suited? I believe either WIP or SESSION_OPENED?

I mentioned that the application is currently running using SYNC mode - this isn't a hard requirement for me and working in ASYNC mode would have some benefits.

I've been struggling with this for a while now and any insight would be greatly appreciated.

I've even tried setting up an InterruptIn on the GPO pin and manually responding to interrupts that way. I can at least detect interrupts but figuring out which functions to call/how to read data from the EEPROM is beyond me.

All the best,
Adam

@amitchone thank you for raising this issue.Please take a look at the following comments:

Could you add some more detail to the description? A good description should be at least 25 words.
What target(s) are you using?
What toolchain(s) are you using?
What version of Mbed OS are you using (tag or sha)?
It would help if you could also specify the versions of any tools you are using?
How can we reproduce your issue?

NOTE: If there are fields which are not applicable then please just add 'n/a' or 'None'.This indicates to us that at least all the fields have been considered.
Please update the issue header with the missing information, the issue will not be mirroredto our internal defect tracking system or investigated until this has been fully resolved.

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

@amitchone it has been 5 days since the last reminder. Could you please update the issue header as previously requested?

I've added your request to improvements. It's not going to make it into current example update but we'll evaluate it for next batch. Tracked internally https://jira.arm.com/browse/IOTOSM-2957.

I am closing this as the bot will not give up as it expects the new issue form being filled out. You can reopen the issue if need to track it.