This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/LAUNCHXL-CC2640R2: MTU size out of range

Part Number: LAUNCHXL-CC2640R2
Other Parts Discussed in Thread: CC2640R2F

Tool/software: Linux

Hi

Our target to increase the MTU size.

I am using CC2640R2F with Host test project , Stack Version - 1_30_00_25.

We are interfacing this chip with processor over UART.  

Now, we have written our stack code, which will run in processor side and that will access the BLE chip over UART.

Currently we are using only peripheral mode. We can able to connect with 4 (Central) IOS device and we can able to transfer the 20 Bytes chunk data. Right now we need to go for 80 Bytes or  40 Bytes.

As per host test stack, Predefined values for MAX_PDU_SIZE = 150.   As per the TI forms and docs ATT_MAX_MTU_SIZE = (MAX_PDU_SIZE - 4).

When we are sending 20 Bytes data to Central node using GATT_Notification every thing is fine, Working good.  But when i am testing for 40 Bytes, We are getting the status response : 0x1B (MTU Size out of Range).

While receiving Central connection request, Our CC2640R2 will receive for ATT_MTU_Exchange_Req for that We are sending response with 43 Bytes. Then We can receive 40 Bytes.

Did i am missing any configuration means, guide me in right direction to send and receive of 80 Bytes.

Thanks in advance.

  • Can you please refer "Configuring for Larger MTU Values"  in the .

    http://www.ti.com/lit/ug/swru393d/swru393d.pdf.

    The section 5.5.2.1 mentions that. Also for quick reference please go thru the code at below link.

  • Thank you so much for your reply,

    As per the doc i have done the same.

    While connection establishing between Client and Master. Client request for MTU Exchange for (>150 Bytes) for that Master also sending the response with (43 Bytes).

    Actually i need to know only one thing,

    Client need to send data to Masters Char UUID using GATT_WRITECHARVALUE. I can able to write more that 20 Bytes.
    But,
    Master need to send data to Client using GATT_NOTIFICATION. I am getting MTU out of range in this part only.
    I have configured MAX_PDU_SIZE = 150.

    This GATT_NOTIFICATION is possible to notify data more than 20 Bytes is possible ?

    Else, i need to follow some other way to send data from Master to Client ?

    If i am wrong track means kindly, bring me in right way.

    Thanks,