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

Large data transfer over ble.

Hi,

I would like to have a system such as follows:

  • Taking sensor data storing it locally till around 100 samples (Once per second)
  • Log this data to the SD with a time stamp
  • Then storing this data to an external SD card. (Utilising the fatfs example code in the SDK) Around  2 Mbytes
  • I then want a mobile device to request this data.

What therefore, is the best way of transferring the data from the SD card to BLE to be picked up by the mobile application.

Do I need to set up a GATT connection and wait on a notification change that I set in the Nordic board?

If so is there an example of this or a good starting point.

Would this post be a good starting point? : https://devzone.nordicsemi.com/f/nordic-q-a/553/dealing-large-data-packet-s-through-ble

If so what example is good to work from. Thanks

Parents
  • Hi Thomas

    Okay, thank you for explaining what you want to do. I urge you to check out the sd_ble_gap_adv_set_configure function on line 1887 in ble_gap.h at C:\nordicsemi\SDK\nRF5_SDK_16.0.0_98a08e2\components\softdevice\s140\headers\ where configuring an additional advertising set is described. In order to update advertising data while advertising, new advertising buffers must be provided, as you can't change the one you're using while advertising, which is likely what causes the error.

    So you'll have to alternate between what advertising buffer you're updating each time in order to keep up a continuous advertisement.

    Best regards,

    Simon

  • Ok I'll have a look.

    But the old way I did it was start an ad then stop and start another. I presume the : SVCALL(SD_BLE_GAP_ADV_SET_CONFIGURE, uint32_t, sd_ble_gap_adv_set_configure(uint8_t *p_adv_handle, ble_gap_adv_data_t const *p_adv_data, ble_gap_adv_params_t const *p_adv_params));

    Is used to update it rather than stop and start it again.

Reply Children
No Data
Related