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

The behavior of the extension of "ATT_MTU" and "Data length extension (DLE)"

Hello,

We need to extend both "ATT_MTU" and "Data length extension (DLE)" of the example programs "app_uart" and app_uart_c" in S132 SDK 14.0.0. So could you please advise on the following two parts?


1) The behavior of the extension of "ATT_MTU" without the extension of the DLE.

[My situation]

I refered the follwoing Web page.

infocenter.nordicsemi.com/index.jsp

And I refered the following descriptions.


  • ATT_MTU size: The default Maximum Transmission Unit (MTU) is 23 bytes. When increasing this value, longer payloads can be achieved by sending several packets for one transaction.
  • Data length extension (DLE): The default data length for a radio packet is 27 bytes. Data length extension allows to use bigger radio packets, so that more data can be sent in one packet.

[Question]

From above description, I understand the following. Could you plesae confirm my understanding is correct?

[MY understanding]

  • If we extend "ATT_MTU", we can extend the length of characteristics.
  • Under the the extended "ATT_MTU"(ex. 128 bytes) and the default data length(27 bytes), we can notify the extended characteristic value by one call of API "sd_ble_gatts_hvx".
  • However, in low link layer, the transmition will be devided as several packets in one connection interval.

2) The behavior of both extension of "ATT_MTU" and DLE.

I understand the following. Could you plesae confirm my understanding is correct?

  • Under the extended "ATT_MTU"(ex. 128 bytes) and the extended data length(ex. 128 bytes), we can notify the extended characteristic value by one call of API "sd_ble_gatts_hvx".

  • And additionally, in low link layer, the transmition will also transmit as one packets in one connection interval.


Regards, Senoo

Parents

    ATT_MTU size: The default Maximum Transmission Unit (MTU) is 23 bytes. When increasing this value, longer payloads can be achieved by sending several packets for one transaction.

    Longer payloads can be achieved at the ATT layer, which means less overhead, but this doesn't help to much on throughput if LL data length is too small.

    Data length extension (DLE): The default data length for a radio packet is 27 bytes. Data length extension allows to use bigger radio packets, so that more data can be sent in one packet.

    Correct. This can have a big impact on throughput, because of the reduction in overhead.

    If we extend "ATT_MTU", we can extend the length of characteristics.

    The length of the characteristic value can be larger than the ATT MTU, but with larger ATT MTU you can send more of the characteristic value in one packet.

    Under the the extended "ATT_MTU"(ex. 128 bytes) and the default data length(27 bytes), we can notify the extended characteristic value by one call of API "sd_ble_gatts_hvx".

    However, in low link layer, the transmition will be devided as several packets in one connection interval.

    Correct.

    Under the extended "ATT_MTU"(ex. 128 bytes) and the extended data length(ex. 128 bytes), we can notify the extended characteristic value by one call of API "sd_ble_gatts_hvx".

    And additionally, in low link layer, the transmition will also transmit as one packets in one connection interval.

    The LL data length has to be 4 bytes longer than ATT MTU, because of the extra L2CAP header that is included, but other than that, correct.

    You should try and ask unrelated questions separately, so I would ask you to ask 3) and 4), and 5) as separate questions. Or else this will get very messy. 3) and 4) is more about implementation. Which 5) seems to be something else entirely.

    Please edit your question, remove 3, 4 and 5. And add them as new questions.

Reply Children
No Data
Related