Hello Nxp Team, i am using Kw45 as central and peripheral and using example of temperature sensor and collector i,e normal att example. I tried to send data of 10,20,50 bytes from peripheral to central and i am able to receive that data but whenever i try to increase data size like more than that i am facing connection issue. my requirement is to send 196 bytes data.and even i checked MTU size default it is 23 but i am using 247 bytes still i am facing connection issue.
Hello,
The default size of 23 bytes is set to maintain a logical mapping between radio packets and ATT packets. In order to send more than 23 bytes of data, the data must be sent in smaller packets and multiple ATT request or if both devices (Like this scenario both KW45), peripheral and central can support increasing the ATT_MTU; make the change of value for gAttMaxMtu_c in both codes (Peripheral and central).
Also take in consideration that during the MTU exchange, both devices would send their maximum MTU to the other, and the minimum of the two is chosen as the new MTU.
This information is from Chapter 5.1.2 MTU exchange in Bluetooth Low Energy Application Developer’s Guide
Best Regards
Luis
I am using EATT Peripheral example for transmitting data through EATT (BLE) but as soon as I add one more custom service (already 2 are present) and same changes I implemented in central side also for debug, EATT Pheripheral is unable to accept EATT connection request from central. Could you please help me in implementing 3rd custom services in Peripheral side and what changes are required in central part to receive the data I would like to tell I have updated code in store service handle to receive UUID and it is reading 3rd custom service UUID and it is transmitting EATT request too from central, but Peripheral is getting disconnected rather than accepting eatt connection request.
i attached screenshot where its entering to disconnect case than entering to MApp_running_c .
Hello,
If you are trying to implement a custom profile I would recommend consulting the information in this community post KW38 Custom Profile - NXP Community this is destined for the KW38 but the steps to follow apply for the KW45 implementing the data, Please refer to client section to modify the peripheral in your project.
Also, you can consult the detailed information on custom profiles in the Developers Guide Chapter 8 Bluetooth Low Energy Application Developer’s Guide
If you would like to reference an example that implements multiple services, I would recommend checking the Private Profile Server/Client examples from the QN9080 SDK, the application implements a custom GATT based Private Profile for Battery Service, Device Info Service and Private Profile service and can send data from client to server.
Best Regards
Luis
Same configurations used in EATT example also . in that we are able to send 196 bytes data . so what is the reasons or changes we have to do in ATT examples to send 196 bytes data.
Hello
I would recommend checking this community post as I believe it might solve your doubts regarding ATT packet size, this post explains that whenever you want to send more than 23 bytes of data in ATT_MTU you need to set the equal value in both Client and Server or the alternative sending packets in 23 bytes size.
I would recommend complementing this information with the Chapter 5.1.2 MTU exchange in the Developers guide (Link in the past comment).
Best Regards
Luis