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

Why does L2CAP exist in BLE stack?

I've found out that softdevice S130 cannot handle the length longer than default MTU(23).

But I know L2CAP is responsible for assembling and disassembling packet.

So why does L2CAP exist in BEL stack, If softdevice cannot handle this?

Is this a problem only for softdevice?

Parents
  • Hi,

    L2CAP role is to provide "logical channels" so you could run multiple protocols on top of BT LE link at the same time. However today you have basically only "ATT" and "Security Manager" messaging defined in the specification (the latter means methods used to establish and manage Secure connection, otherwise all "meaningful" communication should happen on top of "ATT". There are "free" channel IDs (CIDs) which can be dynamically assigned to other protocols but that would mean something proprietary (at least according to BT SIG v4.0/4.1) and I've never seen it. So practically L2CAP is here mainly to be able to manage Security Manager layer (and not mix it with ATTribute and higher layers).

    Cheers Jan

Reply
  • Hi,

    L2CAP role is to provide "logical channels" so you could run multiple protocols on top of BT LE link at the same time. However today you have basically only "ATT" and "Security Manager" messaging defined in the specification (the latter means methods used to establish and manage Secure connection, otherwise all "meaningful" communication should happen on top of "ATT". There are "free" channel IDs (CIDs) which can be dynamically assigned to other protocols but that would mean something proprietary (at least according to BT SIG v4.0/4.1) and I've never seen it. So practically L2CAP is here mainly to be able to manage Security Manager layer (and not mix it with ATTribute and higher layers).

    Cheers Jan

Children
Related