<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/45783/nr52832-nfc-read-and-write-not-working-properly-with-i2c</link><description>Hi, I am using nRF52832 with sensor, nfc and Softdevice S132 v3.0.0 to advertising packets .The sensor is interfaced with nrf52832 using twi interface. I have referred examples\nfc\writable_ndef_msg to read and write data from nfc. I am writing url to</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 11 Apr 2019 10:51:23 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/45783/nr52832-nfc-read-and-write-not-working-properly-with-i2c" /><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/181540?ContentTypeID=1</link><pubDate>Thu, 11 Apr 2019 10:51:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e36a44c-eaef-4d6b-8220-ee7a72775b09</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Could you please share your project with me? And describe in details how I can reproduce the issue?&lt;/p&gt;
&lt;p&gt;So that I can debug it?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/181218?ContentTypeID=1</link><pubDate>Wed, 10 Apr 2019 06:46:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5f452789-0a2e-4847-97dd-6800f45ac8c9</guid><dc:creator>pd@learner</dc:creator><description>&lt;p&gt;err_code = nrf_drv_twi_init(&amp;amp;m_twi, &amp;amp;twi_lm75b_config,twi_handler , NULL); //&lt;br /&gt; APP_ERROR_CHECK(err_code);&lt;/p&gt;
&lt;p&gt;I have Tested my code whenever&amp;nbsp; I comment above nfc works properly but when I used above then its behavior not properly.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180960?ContentTypeID=1</link><pubDate>Tue, 09 Apr 2019 08:49:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:59359e76-11b1-46fb-917e-0283dfb7ef51</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Could you share the project with me? I&amp;#39;m not able to compile and debug your code snippet.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180849?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 17:11:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4b7d698e-607a-43e4-9511-d40892daa198</guid><dc:creator>pd@learner</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static const uint8_t m_url[] =
    {&amp;#39;n&amp;#39;, &amp;#39;o&amp;#39;, &amp;#39;r&amp;#39;, &amp;#39;d&amp;#39;, &amp;#39;i&amp;#39;, &amp;#39;c&amp;#39;, &amp;#39;s&amp;#39;, &amp;#39;e&amp;#39;, &amp;#39;m&amp;#39;, &amp;#39;i&amp;#39;, &amp;#39;.&amp;#39;, &amp;#39;c&amp;#39;, &amp;#39;o&amp;#39;, &amp;#39;m&amp;#39;}; // URL &amp;quot;nordicsemi.com&amp;quot;

uint8_t       m_ndef_msg_buf[NDEF_FILE_SIZE];                               // Buffer for NDEF file
volatile bool m_update_state;                                               // Flag indicating that Type 4 Tag performs NDEF message update procedure.
#define MAX_REC_COUNT      10   //&amp;lt; Maximum records count.


#define TWI_INSTANCE_ID     1								/* TWI instance ID. */
static volatile bool twi_xfer_done = false; /* Indicates if operation on TWI has ended. */
static const nrf_drv_twi_t m_twi = NRF_DRV_TWI_INSTANCE(TWI_INSTANCE_ID); /* TWI instance. */

void twi_handler(nrf_drv_twi_evt_t const * p_event, void * p_context)
{
	  switch (p_event-&amp;gt;type)
    {
        case NRF_DRV_TWI_EVT_DONE:
            twi_xfer_done = true;
            break;
        default:
            break;
    }
}



void twi_init (void)
{
		ret_code_t err_code;
		
    const nrf_drv_twi_config_t twi_lm75b_config = {
       .scl                = 13,
       .sda                = 12,
       .frequency          = NRF_TWI_FREQ_400K,
       .interrupt_priority = APP_IRQ_PRIORITY_HIGHEST,
       .clear_bus_init     = false
    };

    err_code = nrf_drv_twi_init(&amp;amp;m_twi, &amp;amp;twi_lm75b_config,twi_handler , NULL); //
    APP_ERROR_CHECK(err_code);
		
    nrf_drv_twi_enable(&amp;amp;m_twi);
		
}

static void advertising_update(void)
{
    uint32_t      err_code;
    ble_advdata_t advdata;
    uint8_t       flags = BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED;
	ble_advdata_manuf_data_t manuf_specific_data;

    manuf_specific_data.company_identifier = APP_COMPANY_IDENTIFIER;
		
	twi_init();
	set_sensorconfigeration();
	updateSensorData();
	nrf_drv_twi_disable(&amp;amp;m_twi);
	//nrf_drv_twi_uninit(&amp;amp;m_twi);
				
		
    manuf_specific_data.data.p_data = (uint8_t *) mf_Data;
    manuf_specific_data.data.size   = mf_Data_LEN;
		    
    memset(&amp;amp;advdata, 0, sizeof(advdata));

    advdata.name_type             = BLE_ADVDATA_FULL_NAME;
	advdata.include_appearance   = false;
    advdata.flags                 = flags;
				
    advdata.p_manuf_specific_data = &amp;amp;manuf_specific_data;

    err_code = ble_advdata_set(&amp;amp;advdata, NULL);
    APP_ERROR_CHECK(err_code);
	
}


/**
 * @brief Callback function for handling NFC events.
 */
static void nfc_callback(void          * context,
                         nfc_t4t_event_t event,
                         const uint8_t * data,
                         size_t          dataLength,
                         uint32_t        flags)
{
    (void)context;

    switch (event)
    {
        case NFC_T4T_EVENT_FIELD_ON:
						
						
            break;

        case NFC_T4T_EVENT_FIELD_OFF:
						
          
            m_update_state = false;
            break;

        case NFC_T4T_EVENT_NDEF_READ:
            
            break;

        case NFC_T4T_EVENT_NDEF_UPDATED:
            if (dataLength == 0)
            {
                m_update_state = true;
            }
            else if (m_update_state == true)
            {
                m_update_state = false;
              
            }
            break;

        default:
            break;
    }
}


/**
 * @brief Function for creating a record in English.
 */
static void en_record_add(nfc_ndef_msg_desc_t * p_ndef_msg_desc)
{
    /** @snippet [NFC text usage_1] */
    uint32_t             err_code;
    static const uint8_t en_payload[] =
                  {&amp;#39;H&amp;#39;, &amp;#39;e&amp;#39;, &amp;#39;l&amp;#39;, &amp;#39;l&amp;#39;, &amp;#39;o&amp;#39;, &amp;#39; &amp;#39;, &amp;#39;W&amp;#39;, &amp;#39;o&amp;#39;, &amp;#39;r&amp;#39;, &amp;#39;l&amp;#39;, &amp;#39;d&amp;#39;, &amp;#39;!&amp;#39;};
									
	
    static const uint8_t en_code[] = {&amp;#39;e&amp;#39;, &amp;#39;n&amp;#39;};

    	
	
    NFC_NDEF_TEXT_RECORD_DESC_DEF(en_text_rec,
                                  UTF_8,
                                  en_code,
                                  sizeof(en_code),
                                  en_payload,
                                  sizeof(en_payload));
   /** @snippet [NFC text usage_1] */

    err_code = nfc_ndef_msg_record_add(p_ndef_msg_desc,
                                       &amp;amp;NFC_NDEF_TEXT_RECORD_DESC(en_text_rec));
    APP_ERROR_CHECK(err_code);

		bsp_board_led_on(BSP_BOARD_LED_2);
}

/**
 * @brief Function for encoding the welcome message.
 */
static void welcome_msg_encode(uint8_t * p_buffer, uint32_t * p_len)
{
    NFC_NDEF_MSG_DEF(welcome_msg, MAX_REC_COUNT);

    en_record_add(&amp;amp;NFC_NDEF_MSG(welcome_msg));

    /** @snippet [NFC text usage_2] */
    uint32_t err_code = nfc_ndef_msg_encode(&amp;amp;NFC_NDEF_MSG(welcome_msg),
                                            p_buffer,
                                            p_len);
    APP_ERROR_CHECK(err_code);
	
		
    /** @snippet [NFC text usage_2] */
}

void nfc_init()
{
		uint32_t err_code;
	  /* Set up NFC */
    err_code = nfc_t4t_setup(nfc_callback, NULL);
    APP_ERROR_CHECK(err_code);

    /* Provide information about available buffer size to encoding function */
    uint32_t len = sizeof(m_ndef_msg_buf);


	 /* Encode welcome message */
    welcome_msg_encode(m_ndef_msg_buf, &amp;amp;len);
	APP_ERROR_CHECK(err_code);

    /* Run Read-Write mode for Type 4 Tag platform */
    err_code = nfc_t4t_ndef_rwpayload_set(m_ndef_msg_buf, sizeof(m_ndef_msg_buf));
    APP_ERROR_CHECK(err_code);

    /* Start sensing NFC field */
    err_code = nfc_t4t_emulation_start();
    APP_ERROR_CHECK(err_code);

}


int main(void)
{
	uint32_t err_code;
	ble_stack_init();
	gap_params_init(); 
	timers_init();
	advertising_update();
	timers_start();
    advertising_start();
	nfc_init();
	APP_ERROR_CHECK(err_code);
		
		
    for (;; )
    {
        power_manage();
		
    }
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;snippet of code&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180764?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 12:48:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:38042c35-c78e-4c94-9cff-82e14dee9192</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Could you share the project with me?&lt;/p&gt;
&lt;p&gt;TWI should not affect nfc operations.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180729?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 11:48:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bf069c6f-31af-4a60-9ab3-192d8e206729</guid><dc:creator>pd@learner</dc:creator><description>&lt;p&gt;Thanks for your suggestion.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;No ,&amp;nbsp; I don&amp;#39;t have opportunity to upgrade SDK.&lt;/p&gt;
&lt;p&gt;But&amp;nbsp; I can&amp;#39;t understand how did twi affect nfc operation ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180675?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 08:59:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:06d6b0e6-e4ce-4f19-8a4c-83a929a36184</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Do you have the opportunity to upgrade to SDK 15.3?&lt;/p&gt;
&lt;p&gt;There has been many workarounds and bug fixes from SDK 12 to SDK 15.3.&lt;/p&gt;
&lt;p&gt;This could fix your problem perhaps.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180643?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 06:56:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:878c4206-c92f-4387-9a8d-5474607639cc</guid><dc:creator>pd@learner</dc:creator><description>&lt;p&gt;is there any relation between nfc and twi?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180513?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 13:15:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d0c784f-8d55-4fe5-b335-b9d14f1e67bf</guid><dc:creator>pd@learner</dc:creator><description>&lt;p&gt;if I used init_twi()&amp;nbsp; and comment remaining sensor code then also read operation shows old data after writing new data.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nr52832 nfc read and write  not working properly with i2c</title><link>https://devzone.nordicsemi.com/thread/180480?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 11:38:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e2f8fa2d-b8a5-4a48-9046-1abe1094f8cc</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;Which sensor are you using?&lt;/p&gt;
&lt;p&gt;Have you tried debugging the project and looked where you end up in the code?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>