How to increase ATT MTU to more than 65 Bytes in peripheral NUS sample app?

Hi,

I am using the Nordic UART Service (NUS) peripheral and central on two nRF52840 DKs and I am developing with nRF Connect SDK v3.0.0.

I can't manage to increase the ATT MTU size to larger than 65 Bytes. I don't even know where this 65 Bytes value is coming from. I also don't know if I should change something in the central or the peripheral's code base. Anyway, I have an output from Wireshark:

Unfortunately, I have failed to find any useful information/instructions about this. Of course, I have even consulted with an AI chatbot, but none of its suggestions seem to work.

(I am new to Zephyr and nRF Connect SDK. Last time I programmed BLE was years ago, with nRF5 SDK and SES, but I remember increasing the MTU was sooo easy in comparison!)

Thanks for your help in advance!

Parents Reply
  • Hi,

    Thank you for the links, I will go through the course!

    However, I have some follow up comments and questions:

    1) My aim is not to get the maximum throughput. Rather my aim is to send one packet at a time, of at least 128 Bytes, as reliably as possible at certain connection intervals (e.g. at 15ms, 10 ms, 7.5 ms). For this I have modified the NUS sample by setting up a message sending thread and a timer that wakes the thread up at a certain pre-set interval. I also set the conn interval to a lower value than the message sending, thus ensuring that one packet is sent at each conn interval.

    2) In order to achieve my goal, do you suggest that I disable CONFIG_BT_SMP? Or what is the best thing to do?

Children
Related