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

How to configure nRF82540 for using multiple BLE packages in one connection interval?

Hi,

I try to achieve high throughput via BLE connection between two nRF82540dk boards. I would like to maximize duty cycle of transmission in the connection interval.
Unfortunately I observe only one or two BLE packets in each interval.
How can I configure SoftDevice to transmit more packets in one interval?

I use slighly modified ble_app_uart_c_pca10056_s140 and ble_app_uart_pca10056_s140 as starting point examples for the serial connection.
A stream of 244 bytes packets is sent from peripheral to the central device. 

Other options:
1) BLE PHY 2Mbps,
2) Connection interval = 7.5ms
3) NRF_SDH_BLE_GAP_EVENT_LENGTH = 6

Kind regards,

Piotr Romaniuk

  • Hi again,

    I built Nordic example with out my modifications: 
              ble_peripheral/ble_app_uart/pca10056/s140 with DEBUG macro defined.

    This example has the same memory error:

    <info> app_timer: RTC: initialized.
    <warning> nrf_sdh_ble: Insufficient RAM allocated for the SoftDevice.
    <warning> nrf_sdh_ble: Change the RAM start location from 0x20002AE8 to 0x20002BF0.
    <warning> nrf_sdh_ble: Maximum RAM size for application is 0x3D410.
    <error> nrf_sdh_ble: sd_ble_enable() returned NRF_ERROR_NO_MEM.
    <error> app: ERROR 4 [NRF_ERROR_NO_MEM] at C:\_Projekty\wiatr-tak\downloads\nordic\DeviceDownload\nRF5SDK1702d674dde\nRF5_SDK_17C at: 0x0002B1A3
    

    There are:
    1) Connection Interval 20-75ms,
    2) event length = 10

    Is this right that your example (means from Nordic - manufacturer of the chip) is not working? !!!

    Can you provide a full and working project that demonstrates high throughput?

    Kind regards,
    Piotr Romaniuk

  • Piotr Romaniuk said:
    How can I change RAM start location?

    The RAM start location macro can be found in the project options.
    Right click on your project in the project explorer of SES, select Options->common configuration->Linker->Section Placement Macros.

    Piotr Romaniuk said:
    Is this right that your example (means from Nordic - manufacturer of the chip) is not working? !!!

    Please tell me which SoftDevice version, SoC variant and SDK Version you are working with.
    I suspect that you have a missmatch between the SoftDevice and SDK version, please see the compatibility matrix.

    Best regards,
    Karl

  • Please tell me which SoftDevice version, SoC variant and SDK Version you are working with.
    I suspect that you have a missmatch between the SoftDevice and SDK version

    Please scroll up to the first message!

    Kind regards,
    Piotr Romaniuk

  • Hello Piotr,

    Piotr Romaniuk said:
    Please scroll up to the first message!

    You only ever mention which SDK version and SoftDevice you are working with - SDK v17.0.2 and S140. SoC variant and SoftDevice version is still not known to me. I know that you are working with the S140 - but which version of the S140 are you working with? Which nRF52840 revision is it??
    I assume it is either nRF52840 revision 1 or 2, but I would like to be certain. You can find the build code on the nRF52840 chip.

    Please let me know which S140 version and nRF52840 SoC version you are working with, so I may rule out compatibility being the issue here.

    Best regards,
    Karl

  • Hi Karl,

    board 1:

      label on 1st chip:
          PCA10056
          2.0.1
          2020.43
          followed by the serrial number.

     nordic chip:
         N52840
         QIAAD0
         2007FV 

         

    and board 2:
         PCA10056
         2.0.1
         2020.37

    nordic chip
        N52840
        QIAAD0
        2020J8

    Are the numbers that you asked for?

    According to Softdevice version I only know that I use S140 from SDK 17.0.2. I don't know how to check more. Maybe I missunderstood version numbering [?]

    I thought that Softdevice is programmed together with my program as precompiled binary module. Is it true?
    I assumed that by selecting folder pca10056 and its subfolder S140 for Segger Embedded Studio project I have selected what chip version and Softdevice version I use. I also assumed that S140 will support all the chips.
    I am I wrong?

    Kind regards,

    Piotr Romaniuk

Related