<?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>nrf52833 ESB ACK bit and retransmit payload delay</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/68837/nrf52833-esb-ack-bit-and-retransmit-payload-delay</link><description>Hi 
 I have some question about ESB 
 
 1. If the noack bit of dynamic payload is set to 0 and transmitted. 
 Ptx doesn&amp;#39;t switch from tx to rx to receive ack? 
 And prx doesn&amp;#39;t switch from rx to tx to send ack? 
 
 
 2. I want to know the minimum value</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 30 Nov 2020 00:33:11 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/68837/nrf52833-esb-ack-bit-and-retransmit-payload-delay" /><item><title>RE: nrf52833 ESB ACK bit and retransmit payload delay</title><link>https://devzone.nordicsemi.com/thread/282364?ContentTypeID=1</link><pubDate>Mon, 30 Nov 2020 00:33:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b30c14dd-bd51-4906-9872-70be7432ff62</guid><dc:creator>yimo</dc:creator><description>&lt;p&gt;Thanks&amp;nbsp;&lt;span&gt;H&amp;aring;kon!&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf52833 ESB ACK bit and retransmit payload delay</title><link>https://devzone.nordicsemi.com/thread/282210?ContentTypeID=1</link><pubDate>Fri, 27 Nov 2020 08:44:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c713a01b-aa74-4e2a-bb9c-34fba3894b92</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user=""]&lt;p&gt;1. If the noack bit of dynamic payload is set to 0 and transmitted.&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; Ptx doesn&amp;#39;t switch from tx to rx to receive ack?&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; And prx doesn&amp;#39;t switch from rx to tx to send ack?&lt;/p&gt;[/quote]
&lt;p&gt;If &amp;quot;noack&amp;quot; is active, meaning the PTX expects the PRX not to ACK; and both sides has the &amp;quot;noack&amp;quot; functionality enabled;&lt;/p&gt;
&lt;p&gt;Yes, the PTX sends and doesn&amp;#39;t switch RX for ACK reception.&lt;/p&gt;
&lt;p&gt;While the PRX receives, and doesn&amp;#39;t switch to TX.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote user=""]&lt;p&gt;2.&amp;nbsp;&amp;nbsp;&lt;span&gt;I want to know the minimum value of retransmit_delay.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;I saw the information &amp;quot;Each byte in 2 Mbit mode takes 4 us to transfer, &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;so you need to add (4 x payload_size) [us] to accommodate for the size&amp;quot;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;If I send 20 bytes of payload in 2Mbps mode, is 80us needed?&lt;/span&gt;&lt;/p&gt;[/quote]
&lt;p&gt;If the user payload is 20 bytes, you have to take radio overhead into consideration (preamble, address, crc) as well.&lt;/p&gt;
&lt;p&gt;But, yes; In 2MBit it uses 0.5 us per bit, meaning 4 us per byte.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Remember that the radio needs to start up as well, 40 us min. 130 us for nRF51/nRF24L-series backwards compatibility&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user=""]&lt;p&gt;&lt;span&gt;3.&amp;nbsp; I know that the switch time of esb is 130us and it is 40us only when using nrf52 product.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;If so, should switch time be considered when setting retrasmit delay?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Looking at the code in nrf_esb.c&amp;nbsp; -&amp;nbsp; &amp;quot;NRF_ESB_SYS_TIMER-&amp;gt;CC[1] = m_config_local.retransmit_delay - 130;&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;If I use the nrf52 product, can I change it to &amp;quot;m_config_local.retransmit_delay - 40&amp;quot;?&lt;/span&gt;&lt;/p&gt;[/quote]
&lt;p&gt;No, I would not recommend that you do that. The whole protocol is setup related to a slow ramp up, wrt. timing. Changing that specific parameter will not make it fast-ramp up optimized.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>