This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

ble data transfer

hi.......

i am facing the issue while i am transferring the data via ble to ble_app_uart ...

i am using nrf52382 and segger 15.2v

Here if send the one data  over ble , its not receiving .. if i send the three  or more data  i am receiving data in ble_uart app  and data is getting exist before i am  connecting to the ble_uart app .. i have checked ,if i am sending the 10 data over ble , i am getting 5 data only in ble _uart app .. but i could see  the all 10  data in debug terminal ..

i am thinking that timing problem .. 

suggest me an idea

thankyou in advance

static void read_sensor_data()
{
   
      m_xfer_done = false;
    uint16_t length;
          
      char str[80];
      
    length = sprintf(str,"%d", m_sample);
      NRF_LOG_INFO("tempstr = %s  \r\n",str);
  nrf_drv_twi_rx(&m_twi, LM75B_ADDR, &m_sample, sizeof(m_sample));
  nrf_delay_ms(1000);
   ble_nus_data_send(&m_nus,str, sizeof(m_sample), m_conn_handle);
     NRF_LOG_INFO("temp = %5d  \r\n", m_sample);
     NRF_LOG_INFO("Data send...");
        NRF_LOG_FLUSH();
        }

  • Hi saral,

    if possible try this

    static void read_sensor_data()
    {
       
          m_xfer_done = false;
        uint16_t length;
              
          char str[80];
          
        
      nrf_drv_twi_rx(&m_twi, LM75B_ADDR, &m_sample, sizeof(m_sample));
      nrf_delay_ms(1000);
      length = sprintf(str,"%d", m_sample);
          NRF_LOG_INFO("tempstr = %s  \r\n",str);
          
       ble_nus_data_send(&m_nus,str, &length, m_conn_handle);
       
         NRF_LOG_INFO("temp = %5d  \r\n", m_sample);
         NRF_LOG_INFO("Data send...");
            NRF_LOG_FLUSH();
            }

Related