<?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>ESB RF transmission is too slow</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/87090/esb-rf-transmission-is-too-slow</link><description>Hello, 
 I&amp;#39;m trying to figure out what I am doing wrong (or what I misunderstood) about the bitrate. 
 According to my benchmark, it takes 1.42ms to send 128 bytes using ESB as following: 
 - protocol: ESB_PROTOCOL_ESB_DPL - bitrate: ESB_BITRATE_2MBPS</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 20 Apr 2022 12:22:08 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/87090/esb-rf-transmission-is-too-slow" /><item><title>RE: ESB RF transmission is too slow</title><link>https://devzone.nordicsemi.com/thread/363914?ContentTypeID=1</link><pubDate>Wed, 20 Apr 2022 12:22:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:29aeabb2-a1fc-4f25-8336-ba881b12623f</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;Great to hear that it all checked out. Always happy to help out!&lt;/p&gt;
&lt;p&gt;Hope you have a wonderful day :)&amp;nbsp;&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><item><title>RE: ESB RF transmission is too slow</title><link>https://devzone.nordicsemi.com/thread/363891?ContentTypeID=1</link><pubDate>Wed, 20 Apr 2022 11:51:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a2747925-b813-403a-96f1-d4775bbe17dd</guid><dc:creator>Vagner Landskron</dc:creator><description>&lt;p&gt;Hi Hakon, thank to your insights, I&amp;#39;ve found what I&amp;#39;ve done wrong.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;My ACK was huge (I was mirroring the ACK).&lt;/p&gt;
&lt;p&gt;After measuring it again with smaller ACK payload (around 14 bytes, including headers) I got&amp;nbsp;the following table:&lt;/p&gt;
&lt;table style="margin-left:auto;margin-right:auto;" height="142"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Bytes [Payload + Header]&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Send in ms&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;252&lt;/td&gt;
&lt;td&gt;1.44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;140&lt;/td&gt;
&lt;td&gt;0.97&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;76&lt;/td&gt;
&lt;td&gt;0.71&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;td&gt;0.57&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Expected: &lt;/strong&gt;2Mpbs == 0.25MB/s == &lt;strong&gt;4us&lt;/strong&gt; to send 1 byte.&lt;/p&gt;
&lt;p&gt;Plotting these values in an excel graph&amp;nbsp;+ trendline, it gave me the following formula:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;y = &lt;strong&gt;0.0042x&lt;/strong&gt; + 0.3888&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt; This means &lt;strong&gt;~4.2us&lt;/strong&gt; to send 1 byte. (&lt;em&gt;0.3888 is some constant offset (probably related to the protocol usage itself))&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;So I see that the bitrate is according to the specs &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Thank you !&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: ESB RF transmission is too slow</title><link>https://devzone.nordicsemi.com/thread/363775?ContentTypeID=1</link><pubDate>Wed, 20 Apr 2022 07:43:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7c7acea0-b504-446a-93e2-d3d1020efdd9</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;&lt;/p&gt;
[quote user=""]&lt;p&gt;I&amp;#39;m trying to figure out what I am doing wrong (or what I misunderstood) about the bitrate.&lt;/p&gt;
&lt;p&gt;According to my benchmark, it takes 1.42ms to send 128 bytes using ESB as following:&lt;/p&gt;
&lt;p&gt;- protocol: ESB_PROTOCOL_ESB_DPL&lt;br /&gt;- bitrate: ESB_BITRATE_2MBPS&lt;br /&gt;- no retransmit&lt;/p&gt;[/quote]
&lt;p&gt;Are you also getting data back from the PRX device, using the ACK payload?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user=""]1.&amp;nbsp;Any obvious reason why my bitrate is too slow? (acks or protocol overhead?)[/quote]
&lt;p&gt;If you are sending 128 bytes, I&amp;#39;m rounding up to 140 bytes incl. overhead, it should take:&lt;/p&gt;
&lt;p&gt;t_ramp_up + 140 bytes * 8 bits /&amp;nbsp;2 Mbit&amp;nbsp;= 130 us + (1120 bits / 2 Mbit) = ~690 us.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Then you also have to account for the ACK from the PRX.&lt;/p&gt;
&lt;p&gt;If this is a zero byte packet, the packet is approx. 10 bytes (approximation, I do not know your address + crc settings):&lt;/p&gt;
&lt;p&gt;130 + 10 * 8 / 2 MBit = 170 us.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Add those together, and you&amp;#39;re just shy of 900 us for one ideal transmission.&lt;/p&gt;
&lt;p&gt;If you also send 128 bytes back from the PRX to the PTX (ie. an ACK payload), you&amp;#39;re at approx. 1.4 ms.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote user=""]&lt;p&gt;2. Using 2 pipes at same time could improve performance or will it lead to some &amp;quot;packet collision&amp;quot; issue?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;If you have a one-to-one transmission, using several pipes does not help wrt. performance.&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>