<?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>How slave knows when master received the notification response message?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/68929/how-slave-knows-when-master-received-the-notification-response-message</link><description>I have 2 devices connected, working in notification mode. Using the nRF Sniffer for Bluetooth LE I was able to check all the messages that are exchanged. When in close proximity and good signal strength the messages looks like as follows: 
 
 However</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 30 Nov 2020 16:28:49 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/68929/how-slave-knows-when-master-received-the-notification-response-message" /><item><title>RE: How slave knows when master received the notification response message?</title><link>https://devzone.nordicsemi.com/thread/282516?ContentTypeID=1</link><pubDate>Mon, 30 Nov 2020 16:28:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7704aa67-b3aa-4371-b1bc-924a5a4a25b5</guid><dc:creator>vasilje</dc:creator><description>&lt;p&gt;I found an answer in this article:&lt;/p&gt;
&lt;p&gt;&lt;a title="Understanding SN and NESN in a BLE Link Layer packet " href="https://www.novelbits.io/understanding-sn-nesn-ble-link-layer-packet/"&gt;Understanding SN and NESN in a BLE Link Layer packet &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Basically: The Empty PDU&amp;#39;s on the pictures are ACKs. How they work is that once the package is sent there should be two conditions satisfied in the response:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;It must be on the same channel&lt;/li&gt;
&lt;li&gt;Original message (from Master) contained NESN (next expected sequence number) and SN (sequence number of the current message). So Slave answer&amp;#39;s SN needs to match the NESN of message from Master. The NESN in this Slave answer should say what is the SN of the following message from the Master.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If these two conditions are not satisfied, then the Master (or Slave) will know that the message has not been delivered, and it will retransmit.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How slave knows when master received the notification response message?</title><link>https://devzone.nordicsemi.com/thread/282494?ContentTypeID=1</link><pubDate>Mon, 30 Nov 2020 14:52:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:49b09617-55d1-4541-ac5a-0447400359df</guid><dc:creator>vasilje</dc:creator><description>&lt;p&gt;Thanks for the answer. Can you be more specific, keeping in mind the picture that is attached? This is the Sniffer output, I believe it shows Link Layer messages. How ACK&amp;#39;s are represented there? &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How slave knows when master received the notification response message?</title><link>https://devzone.nordicsemi.com/thread/282484?ContentTypeID=1</link><pubDate>Mon, 30 Nov 2020 14:37:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3c8b3b47-1e49-45bd-91e9-7b9104daaae4</guid><dc:creator>Ivan Herrera</dc:creator><description>&lt;p&gt;All BLE notifications, writes (even without response afaik), are still ACK&amp;#39;ed on the link layer. So if there is no ACK from a notification or write, it will retry.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>