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

Is MTU of all BLE devices limitted to 23 bytes when using ATT protocol?

Is MTU of all BLE devices limitted to 23 bytes when using ATT protocol?

I don't know explicitly.

Some say it is possible to use MTU longer than 23 bytes.

Others say it is possible to use MTU longer than 23 bytes in softdevice(except to s132)

Is it impossible to use MTU longer than 23 bytes at Only softdevice?

does other vender implement MTU longer than 23 bytes for ATT protocol?

Parents
  • Hi JoonDong,

    Trying to answer the questions one by one:

    • "Is MTU of all BLE devices limited to 23 bytes when using ATT protocol?" - NO, 23 bytes is just default ATT_MTU size, can be negotiated higher.
    • "Is it impossible to use MTU longer than 23 bytes at Only softdevice?" - Soft Device S130 (for nRF51) and S132 (for nRF52832) support extended ATT_MTU since v2.x, S140 and others as well.
    • "does other vender implement MTU longer than 23 bytes for ATT protocol?" - Yes. Also note that you don't need to use Nordic BLE stack (Soft Device) on nRF5x, there are alternatives in open source projects such as Zephyr or Mynewt.

    Cheers Jan

  • Sure, it's meaningless to support larger MTU only on one side of the link. However majority of mobile phones and also other devices already support it. Note that "support for larger ATT_MTU" is compile time option but if it is used or not depends on Master (ATT Client) during every connection, otherwise it stays on default value (23). Also it is used only to minimum from two "max" values shared by both peers so it can easily happen that even your device support large MTU size of >200 bytes the other side supports only 50/100/150 and so lower value will be used.

Reply
  • Sure, it's meaningless to support larger MTU only on one side of the link. However majority of mobile phones and also other devices already support it. Note that "support for larger ATT_MTU" is compile time option but if it is used or not depends on Master (ATT Client) during every connection, otherwise it stays on default value (23). Also it is used only to minimum from two "max" values shared by both peers so it can easily happen that even your device support large MTU size of >200 bytes the other side supports only 50/100/150 and so lower value will be used.

Children
No Data
Related