<?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>About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/18976/about-the-demo-running-micro-esb-concurrently-with-ble-in-blogs</link><description>Hi,
I look at this demo,found that the ESB is PRX in most time, it may lead to a high power consumption.I want to achieve auto ack, piggybacking data in ACk from PRX.So the PTX is only work a short time,just when there are data need to be sended.
How</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 18 Jan 2017 14:03:06 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/18976/about-the-demo-running-micro-esb-concurrently-with-ble-in-blogs" /><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73344?ContentTypeID=1</link><pubDate>Wed, 18 Jan 2017 14:03:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:30266e13-0967-476e-824a-644f9f688385</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;The way the esb_timeslot library works now is that same firmware used for both peer. When we have anything in the T payload buffer, at the beginning of a timeslot we will try to send it. So the payload is always sent as a TX packet, not an ACK payload packet. Therefore the TX payload is always empty when the device in PRX mode =&amp;gt; no ACK payload.&lt;/p&gt;
&lt;p&gt;To do what you plan to do, you need to modify the code, on your dedicated PRX device, you should disable the check inside TIMESLOT_BEGIN_IRQHandler()&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;if (m_transmit_fifo.free_items &amp;lt; sizeof(m_transmit_fifo.buf) &amp;amp;&amp;amp; m_ut_state != UT_STATE_TX)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This will disable the nrf_esb_write_payload() at line 328 in that statement.&lt;/p&gt;
&lt;p&gt;And you call nrf_esb_write_payload() when you want to add a ACK payload on the PRX side instead.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73345?ContentTypeID=1</link><pubDate>Wed, 18 Jan 2017 08:51:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d3054b99-1968-4c73-ac80-cf8040afa7d3</guid><dc:creator>OPQ</dc:creator><description>&lt;p&gt;Hi,
Yes,I can enable auto ACK,but in the PRX,I can&amp;#39;t found anywhere to fill my ACK payload.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73343?ContentTypeID=1</link><pubDate>Mon, 16 Jan 2017 12:12:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:13accf99-a8c3-45c0-9ebd-8534e1e76848</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;As I understand you have no problem keeping the PRX in RX mode all the time and power consumption is not the problem here.&lt;/p&gt;
&lt;p&gt;On the PTX side, when you send a packet, with the NRF_ESB_DEFAULT_CONFIG configuration we have, auto ACK is enabled, esb library will switch to PRX mode automatically right after it transmit the TX packet. You don&amp;#39;t have to do anything.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73342?ContentTypeID=1</link><pubDate>Sat, 14 Jan 2017 01:54:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:66f35294-bb39-49a3-809d-865890f28a97</guid><dc:creator>OPQ</dc:creator><description>&lt;p&gt;Because in ESB mode,ack from PRX can carry payload,so I think my PTX maynot need to work in RX mode.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73341?ContentTypeID=1</link><pubDate>Sat, 14 Jan 2017 01:51:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:75f9eff1-6c47-48c1-9db7-0fcd26092e86</guid><dc:creator>OPQ</dc:creator><description>&lt;p&gt;Hi,
Thanks.
Yes,don&amp;#39;t enable RX mode will not leadto a high power consumption,but in my application, I also want to achieve bi-direction data transfer between PTX and PRX,just like AUTO ACK.How to do that?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About the demo running micro-esb concurrently with ble in Blogs</title><link>https://devzone.nordicsemi.com/thread/73340?ContentTypeID=1</link><pubDate>Fri, 13 Jan 2017 12:58:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e2f88956-8474-4729-8f1f-1e76fa8ef289</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;To do that you can simply don&amp;#39;t enable RX mode when the the timeslot starts on the PTX side. It&amp;#39;s nrf_esb_start_rx() call inside TIMESLOT_BEGIN_IRQHandler().&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>