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

How to correctly receive a value sent by notification, on my nRF51 DK

Hi all, i am experiencing a problem, that i exposed maybe not so clearly on other topics; i have a a smart beacon kit that is sending temperature values by notification (as done in the tutorial devzone.nordicsemi.com/.../ and it works, i see the values connecting to my android phone with MCP on it), and i want them to be received by my nrf51 DK and then be sent to the PC. My problem now is that the DK doesn't seem to receive the values! What i have done on the DK is simply discover the wanted name of the device (my beacon's name) and then connect to it (and this happens, i see it with a LED turning on); then just by connecting the two devices i should find the values on my DK in:

p_ble_evt->evt.gattc_evt.params.hvx.data;

Is this correct? Or, more specifically, there is something precise i have to write (an instruction or something) that need to be added in order to receive the values on the DK or it is enough to connect the two devices? Please do not link any tutorial or examples because i have widely read all of them trying to figure out by myself the problem ^^'

projects.rar

Parents
  • I suspect you think this is much less complex than it is. It is not one line of code you can put in to get this to work. You need to do service discovery, you need to enable notifications on the peripheral by writing to the CCCD of the characteristic. That is why I recommended you to have a look at the BLE central tutorial. I would also recommend you to start of with a peripheral and central example that actually works, play with them, and modify them to learn how thing works. For example ble_app_uart and ble_app_uart_c. Or ble_app_hrs and ble_app_hrs_c.

Reply
  • I suspect you think this is much less complex than it is. It is not one line of code you can put in to get this to work. You need to do service discovery, you need to enable notifications on the peripheral by writing to the CCCD of the characteristic. That is why I recommended you to have a look at the BLE central tutorial. I would also recommend you to start of with a peripheral and central example that actually works, play with them, and modify them to learn how thing works. For example ble_app_uart and ble_app_uart_c. Or ble_app_hrs and ble_app_hrs_c.

Children
No Data
Related