<?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>fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/22715/fate-of-packets-in-esb-fifo-on-ptx-transmission-failure</link><description>I&amp;#39;m currently working on an esb project using two nrf52832 chips wherein PTX regularly sends packets to PRX as a kind of heartbeat monitor. I can&amp;#39;t seem to find what happens to packets in the PTX esb FIFO when (re)transmission attempts have failed and</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 14 Jun 2017 11:21:11 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/22715/fate-of-packets-in-esb-fifo-on-ptx-transmission-failure" /><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89305?ContentTypeID=1</link><pubDate>Wed, 14 Jun 2017 11:21:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f262682f-d14e-47df-ba2f-d18435548331</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Have you tried stopping and starting the transmission using nrf_esb_stop_tx and nrf_esb_start_tx respectively?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89304?ContentTypeID=1</link><pubDate>Wed, 14 Jun 2017 09:52:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:26c292ba-f728-4e37-b72e-1db068ea54bc</guid><dc:creator>Adrien Rapeaux</dc:creator><description>&lt;p&gt;Contrary to my expectations, it actually worked this time! But upon further exploration, I could reproduce the behaviour if I filled the FIFO multiple times with failed transmissions. However, the transmissions were stopped not because of a full FIFO, but because the timer responsible for regularly sending packets was disabled. I am not sure why or how this happens, but deactivating and reactivating it allowed the program to send packets again. One remaining question is if the packets are kept in the FIFO upon transmission failure, is there any way to get them transmitted again, or out of the FIFO? We don&amp;#39;t have access to FIFO memory.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89306?ContentTypeID=1</link><pubDate>Wed, 14 Jun 2017 09:00:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4a7ec4d1-5d31-4bfb-88d1-aa38d06e2725</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Does nrf_esb_flush_tx() return NRF_SUCCESS?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89309?ContentTypeID=1</link><pubDate>Tue, 13 Jun 2017 13:59:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c8ec42c-8563-457a-a822-2b27b26e489b</guid><dc:creator>Adrien Rapeaux</dc:creator><description>&lt;p&gt;Calling nrf_esb_flush_tx() does not resolve the issue: the error code when attempting to write a new packet to the FIFO is still 4 (no memory)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89308?ContentTypeID=1</link><pubDate>Tue, 13 Jun 2017 13:49:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5d5ff7ce-1b2d-4add-a0e2-208c698c4c50</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;You should only have to call nrf_esb_flush_tx() to empty the FIFO.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89307?ContentTypeID=1</link><pubDate>Tue, 13 Jun 2017 13:32:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7107c783-7b96-4c1b-84a4-e8d4bba38a2b</guid><dc:creator>Adrien Rapeaux</dc:creator><description>&lt;p&gt;Hello Bjorn, and thank you for your comment. What I&amp;#39;m wondering is then how to resume transmission of failed packets when my FIFO is full, assuming it was filled because packets failed to be acked. Is there a special function, or must I uninitialize and then reinitialize esb?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: fate of packets in esb fifo on ptx transmission failure</title><link>https://devzone.nordicsemi.com/thread/89310?ContentTypeID=1</link><pubDate>Tue, 13 Jun 2017 12:25:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:490b193f-11bc-4176-9287-d54870c830ca</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Yes, the payload will stay in the FIFO when you get NRF_ESB_EVENT_TX_FAILED so that you&amp;#39;re able to retransmit the payload in the FIFO. You should get the NRF_ERROR_NO_MEM error code from nrf_esb_write_payload() if you try to write to a full FIFO.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>