Setting the correct Kconfig macros and their values for desired MTU as per application requirement

Hello,

I am developing FW on NRF52840_DK using nRF SDK Connect v1.9.1 for a BLE Peripheral as a Reader.

The Max Application Data Size  (Tx, Rx) to be supported for Mobile Client and my Reader Peripheral is 247 bytes.

I added these Kconfig settings to set MTU once during build time

CONFIG_BT_USER_DATA_LEN_UPDATE=y
CONFIG_BT_L2CAP_TX_MTU=
CONFIG_BT_BUF_ACL_RX_SIZE=
CONFIG_BT_BUF_ACL_TX_SIZE=
CONFIG_BT_CTLR_DATA_LENGTH_MAX=
Questions: 
1) Are all 5 required ?
2) What shall be the values for each ? I am not confirmed about the data format 
3) Any other Kconfig needed ? Why isn't there a CONFIG_BT_L2CAP_RX_MTU ?
4) Are these Kconfig settings required to be set CONFIG_BT_BUF_CMD_TX_SIZE, CONFIG_BT_BUF_EVT_RX_SIZE ? What value ?
Parents
  • Hi,

    1) Are all 5 required ?

    Yes, it seems like you need to set them all to bring the actual MTU size to your desired level and avoid fragmented reception and transmission of your packet (with given MTU size).

    2) What shall be the values for each ? I am not confirmed about the data format
    3) Any other Kconfig needed ? Why isn't there a CONFIG_BT_L2CAP_RX_MTU ?

    Please take a look at the throughput sample at the SDK in NCS\nrf\samples\bluetooth\throughput\prj.conf for both of your queries. There is also CONFIG_BT_L2CAP_RX_MTU that you can set same value as L2CAP_TX_MTU.

    4) Are these Kconfig settings required to be set

    Yes, else they will take the default value which is most likely lower than what you need.

Reply
  • Hi,

    1) Are all 5 required ?

    Yes, it seems like you need to set them all to bring the actual MTU size to your desired level and avoid fragmented reception and transmission of your packet (with given MTU size).

    2) What shall be the values for each ? I am not confirmed about the data format
    3) Any other Kconfig needed ? Why isn't there a CONFIG_BT_L2CAP_RX_MTU ?

    Please take a look at the throughput sample at the SDK in NCS\nrf\samples\bluetooth\throughput\prj.conf for both of your queries. There is also CONFIG_BT_L2CAP_RX_MTU that you can set same value as L2CAP_TX_MTU.

    4) Are these Kconfig settings required to be set

    Yes, else they will take the default value which is most likely lower than what you need.

Children
No Data
Related