I have developped an application using bluetooth mesh with NFC to read a text record. I am currently using the nRF52840 DK Rev 2.0.1 2020.11.
Regarding my software setup I am using the nrf mesh sdk v4.2.0 and nrf sdk v.17.0.0.
My application use the s140_nrf52_7.0.1_softdevice along with the mesh_bootloader_gccarmemb_nrf52840_xxAA to perform OTA DFU. Along with the BL, SD and APP i am flashing a corresponding device page (with a public key) that seems to work without a problem to accept DFU packets.
My issue is with NFC tag reader. If I only flash the application with the softdevice, I can read the NFC tag with my phone. However when flashing the APP + SD + BL + devicepage, I cannot read the NFC tag. That is very strange and nothing happened when i try to read the NFC.
Here is my NFC function that init the module.
void nfc_init(nfc_t2t_callback_t callback)
{
ret_code_t err_code;
/* Set up NFC */
err_code = nfc_t2t_setup(callback, NULL);
APP_ERROR_CHECK(err_code);
/* Encode NFC message */
err_code = nfc_msg_encode(m_ndef_msg_buf, &m_ndef_msg_len);
APP_ERROR_CHECK(err_code);
/* Set created message as the NFC payload */
err_code = nfc_t2t_payload_set(m_ndef_msg_buf, m_ndef_msg_len);
APP_ERROR_CHECK(err_code);
__LOG(LOG_SRC_APP, LOG_LEVEL_INFO, "NFC init\n");
/* Start sensing NFC field */
err_code = nfc_t2t_emulation_start();
APP_ERROR_CHECK(err_code);
}
and this is the NFC config
#define NFC_NDEF_MSG_TAG_TYPE 2 #define NRFX_NFCT_ENABLED 1 #define NRF_CLOCK_ENABLED 1 #define TIMER_ENABLED 1 #define TIMER4_ENABLED 1 #define NFC_NDEF_MSG_ENABLED 1 #define NFC_NDEF_RECORD_ENABLED 1 #define NFC_NDEF_TEXT_RECORD_ENABLED 1 #define NFC_PLATFORM_ENABLED 1
The mesh OTA DFU works without a problem... I just got issues when trying to scan the NFC tag... nothing happened!
Any comment on this issue is appreciated!