<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>sdk11 NUS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/103729/sdk11-nus</link><description>Hi, 
 I got a product in the market based on NRF52 with SDK11 working in CENTRAL mode. 
 My customer want to connect it&amp;#39;s unit (it&amp;#39;s a pheripheral also based on Nordic part but with higher SDK) to our unit via NUS protocol. 
 When the customer units sends</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 20 Sep 2023 10:07:08 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/103729/sdk11-nus" /><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/446821?ContentTypeID=1</link><pubDate>Wed, 20 Sep 2023 10:07:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dce47717-1b40-428e-9e4a-6c3e1ba8d5c4</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;You are working on the central side that is based on SDK 11, right?&amp;nbsp;And the code in the other thread is relevant for the peripheral side as that has a newer SDK (which version?). The other thread was not fully concluded, and the suggesting there does not fully. make sense (as&amp;nbsp;&lt;code&gt;client_mtu = MIN(client_mtu, BLE_GATT_ATT_MTU_DEFAULT);&lt;/code&gt; would always be 23, which is&amp;nbsp;BLE_GATT_ATT_MTU_DEFAULT, as that is the lowest possible.&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t have a full oveview of what is happening though, so I think a sniffer trace is needed. If you could elaborate on what you see that could be relevant as well, with reference to the sniffer trace.&amp;nbsp;Particularily: &amp;quot;&lt;em&gt;When the customer units sends data to our unit over the NUS protocol all data after 20 bytes is missing&lt;/em&gt;&amp;quot; &amp;lt;- Is this data sent by the central, or is it not? Where/how is it lost? We need to understand this before we can consider how to fix or workaround the issue.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/446426?ContentTypeID=1</link><pubDate>Mon, 18 Sep 2023 08:21:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a89f111d-f867-427e-ad11-160de7dbb9b2</guid><dc:creator>yuval</dc:creator><description>&lt;p&gt;It will take time until i get a sniffer&lt;/p&gt;
&lt;p&gt;however, i find other ticket:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/68320/ble-notifications-and-mtu-negotiation-on-bluetooth-4-0"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/68320/ble-notifications-and-mtu-negotiation-on-bluetooth-4-0&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;which describes more or less the problem as mine.....&lt;/p&gt;
&lt;p&gt;i will tell the other guys to change it to &amp;quot;MIN&amp;quot;:&lt;/p&gt;
&lt;p&gt;found in &amp;quot;on_exchange_mtu_request_evt&amp;quot; in &amp;quot;nrf_ble_gatt.c&amp;quot;:&lt;/p&gt;
&lt;p&gt;client_mtu = MAX(client_mtu, BLE_GATT_ATT_MTU_DEFAULT);&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/446063?ContentTypeID=1</link><pubDate>Thu, 14 Sep 2023 12:55:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d3b95fa3-da33-4796-9fed-5883c0b576c1</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;The MTU negotiation is encrypted, but&amp;nbsp;as you have LESC set to 0 here that indicates you are&amp;nbsp;using legacy pairing. And int&amp;nbsp;that case&amp;nbsp; the sniffer can&amp;nbsp;decrypt everything as long as it listens in on the pairing procedure. See &lt;a href="https://infocenter.nordicsemi.com/topic/ug_sniffer_ble/UG/sniffer_ble/action_paired.html"&gt;Sniffing the pairing procedure of a connection&lt;/a&gt;&amp;nbsp;for more details.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/446024?ContentTypeID=1</link><pubDate>Thu, 14 Sep 2023 10:16:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c55d9281-6087-41bc-b684-fa58fdf40c79</guid><dc:creator>yuval</dc:creator><description>&lt;p&gt;The data&amp;nbsp;which&amp;nbsp; transfered netween the units is encrypted (BONDING and etc&amp;#39;) from the very begining. do you know if the MTU negotiation is inside this encrypten or outside it?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This is the encryption we use:&lt;/p&gt;
&lt;p&gt;#define SEC_PARAM_BOND 1 /**&amp;lt; Perform bonding. */&lt;br /&gt;#define SEC_PARAM_MITM 0 /**&amp;lt; Man In The Middle protection not required. */&lt;br /&gt;#define SEC_PARAM_LESC 0 /**&amp;lt; LE Secure Connections not enabled. */&lt;br /&gt;#define SEC_PARAM_KEYPRESS 0 /**&amp;lt; Keypress notifications not enabled. */&lt;br /&gt;#define SEC_PARAM_IO_CAPABILITIES BLE_GAP_IO_CAPS_NONE /**&amp;lt; No I/O capabilities. */&lt;br /&gt;#define SEC_PARAM_OOB 0 /**&amp;lt; Out Of Band data not available. */&lt;br /&gt;#define SEC_PARAM_MIN_KEY_SIZE 7 /**&amp;lt; Minimum encryption key size. */&lt;br /&gt;#define SEC_PARAM_MAX_KEY_SIZE 16 /**&amp;lt; Maximum encryption&amp;nbsp;key&amp;nbsp;size.&amp;nbsp;*/&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/446003?ContentTypeID=1</link><pubDate>Thu, 14 Sep 2023 09:08:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9313d577-9020-4f34-8c4c-89dd15173817</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am not able to explain why without knowing more. Can you start with a sniffer trace of the connection showing everything from advertising and later? You can use &lt;a href="https://www.nordicsemi.com/Products/Development-tools/nrf-sniffer-for-bluetooth-le"&gt;nRF Sniffer for Bluetooth LE&lt;/a&gt;&amp;nbsp;for that if you have an extra DK or dongle.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/445999?ContentTypeID=1</link><pubDate>Thu, 14 Sep 2023 08:47:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0cf0fa5c-e63d-422c-b3b8-633e4084fb7a</guid><dc:creator>yuval</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m working with NRF52832 with S132 2.0.0 which came with SDK11 (CENTRAL)&lt;/p&gt;
&lt;p&gt;The other party is working on NRF52833 (PHERIPHERAL)&amp;nbsp;s140_nrf52_7.2.0_softdevice.hex&lt;/p&gt;
&lt;p&gt;For an unknown reason the MTU is set to larger&amp;nbsp;from 23 !&lt;/p&gt;
&lt;p&gt;Can you explain why?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: sdk11 NUS</title><link>https://devzone.nordicsemi.com/thread/445850?ContentTypeID=1</link><pubDate>Wed, 13 Sep 2023 13:08:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:15ad88ec-aef5-4e73-b011-bbd73ace8ab5</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Yuval,&lt;/p&gt;
&lt;p&gt;Based on the description there&amp;nbsp;seems to be a bug in your central implementation, as it accepts increasing the MTU without properly&amp;nbsp;handling it.&lt;/p&gt;
&lt;p&gt;Which SoftDevice version are you using? S132 2.0.0 that was part of SDK 11, or another version? I ask because configurable ATT MTU was first introduced in version 3.0.0 of the SoftDevice, so it should not be possible for the peripheral to perform a successful MTU exchange procedure, and the MTU should remain at the default (23). So it is possible that the issue here is in a misbehaving peripheral as well.&lt;/p&gt;
&lt;p&gt;Do you have a sniffer trace of the communication so that we can get the full picture of what is going on on air (so that we can start by figuring out if the problem is within the central or the peripherals)?&lt;/p&gt;
[quote user=""]1) Can i force him (I&amp;#39;m the central) to stay in&amp;nbsp;MTU size 23 when connected to me?[/quote]
&lt;p&gt;Yes. The at the start of the connection, the MTU is always 23 by default, and it is only increased after a negotiation.&lt;/p&gt;
[quote user=""]2) if change the L2CAP size will it make any different?[/quote]
&lt;p&gt;It should not matter, but we need to first understand what the problem really is.&lt;/p&gt;
[quote user=""]3) Is there another way (supported by both SDK) to split the data up to 20 bytes?[/quote]
&lt;p&gt;This should be working out of the box. Any increase in MTU size or use of other new features compared to Bluetooth 4.0 should only be used after a negotiation, ensuring backwards compatibility. So there is an issue in one of the devices that prevents this that we need to find.&lt;/p&gt;
&lt;p&gt;Br,&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>