<?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>PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/114610/ptx-sends-packet-gets-ack-as-txfifo-becomes-empty-but-no-rxpacket-irq-at-prx-side</link><description>I had received a lot of support in: Replacing RS485 link with NRF24L01+ . 
 
 At the moment I have 95% proyect working OK but in one operation mode of my program, after some packet sent and received ack payload, there is one packet working ok some times</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 06 Jan 2025 19:35:08 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/114610/ptx-sends-packet-gets-ack-as-txfifo-becomes-empty-but-no-rxpacket-irq-at-prx-side" /><item><title>RE: PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/thread/517088?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2025 19:35:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7a84ce7c-1df6-47c5-8995-058d0c5e6cec</guid><dc:creator>o.hojvat</dc:creator><description>&lt;div class="author" data-authorprofileurl="/members/o.hojvat"&gt;
&lt;div class="avatar"&gt;&lt;a class="internal-link view-user-profile" href="https://devzone.nordicsemi.com/members/o.hojvat"&gt;&lt;img alt="o.hojvat" border="0px" src="https://devzone.nordicsemi.com/cfs-filesystemfile/__key/communityserver-components-imagefileviewer/system-images/anonymous.gif_2D00_44x44x2.png?_=637911546239869228" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="meta"&gt;&lt;span class="qa-votes"&gt;&lt;/span&gt;&lt;span class="user-name"&gt;&lt;span class="ui-userpresence ui-tip present" data-userid="44151" data-contentid="b6c1055d-ef3f-4aaf-b16a-04d1fb715f32" data-contenttypeid="e9ed4118-60ed-4f2b-a026-5705b8793d05" data-present="true" data-presentlabel="Online" data-notpresentlabel="Offline" data-tip="Online"&gt;Online&lt;/span&gt; &lt;a class="internal-link view-user-profile" href="https://devzone.nordicsemi.com/members/o.hojvat"&gt;o.hojvat &lt;/a&gt;&lt;/span&gt;&lt;a class="internal-link view-post navigable reply-permalink" href="https://devzone.nordicsemi.com/f/nordic-q-a/114610/ptx-sends-packet-gets-ack-as-txfifo-becomes-empty-but-no-rxpacket-irq-at-prx-side/502536"&gt;&lt;span class="ui-agodate ui-tip " data-tip="14 Sep 2024 20:29" data-dateutc="2024-09-14T20:29:32.943Z"&gt;&lt;time datetime="2024-09-14T20:29:32.943Z"&gt;4 months ago&lt;/time&gt;&lt;/span&gt; &lt;/a&gt;&lt;span class="parent"&gt;in reply to &lt;a class="internal-link view-post navigable ui-tip" href="https://devzone.nordicsemi.com/f/nordic-q-a/114610/ptx-sends-packet-gets-ack-as-txfifo-becomes-empty-but-no-rxpacket-irq-at-prx-side/502531" data-tip="View Parent Reply"&gt;Kenneth&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="meta"&gt;&lt;/div&gt;
&lt;div class="meta"&gt;Hello Kenneth&lt;/div&gt;
&lt;div class="meta"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="content full threaded-reply-content user-defined-markup" data-replyid="502536" data-userid="44151" data-permalink="~/f/nordic-q-a/114610/ptx-sends-packet-gets-ack-as-txfifo-becomes-empty-but-no-rxpacket-irq-at-prx-side/502536"&gt;
&lt;div class="content"&gt;
&lt;p&gt;I still don&amp;acute;t know why there are some packets not received at PRX&amp;nbsp;&lt;/p&gt;
I have completed an old&amp;nbsp;test&amp;nbsp;board with a simple program that allows to monitor RF packets sent to 3 posibles PIPES, that my system are using.&lt;/div&gt;
&lt;div class="content"&gt;I only need modify to disable the&amp;nbsp;auto ack option in Reg 01 and gess I get not tx any ack from this monitor board&amp;nbsp;&lt;/div&gt;
&lt;div class="content"&gt;In this monitor I have seen the packets well received at PRX an also when one packet &amp;nbsp;fails&amp;nbsp;to be received at the usual PRX&lt;/div&gt;
&lt;div class="content"&gt;So I am sure that all the packets are sent ok from PTX and my problem is at PRX side.&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;I expected that the monitor can capture all the packets sent from PTX&lt;/div&gt;
&lt;div class="content"&gt;but in some cases there are ack-payload captured in the monitor also.&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;Please tell me if it is posible or if it is not normal&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;I &amp;nbsp;find the original PTX packet or the regarding ack-payload but not both in the same capture.&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;When sending packets with no_ack , there are all captured ok&lt;/div&gt;
&lt;div class="content"&gt;&lt;/div&gt;
&lt;div class="content"&gt;Best Regards, Osvaldo&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/thread/502536?ContentTypeID=1</link><pubDate>Sat, 14 Sep 2024 20:29:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:74204ba0-5255-455a-96c9-f8910f5265a8</guid><dc:creator>o.hojvat</dc:creator><description>&lt;p&gt;Hello Kenneth&lt;/p&gt;
&lt;p&gt;The elements of the system are&lt;/p&gt;
&lt;p&gt;Hand controls, of which there can be several with addresses from 1 to 31&lt;br /&gt;Usually there are 1 to 4 connected to a Central unit by cable, RS485&lt;br /&gt;Now some controls can be connected by RF, for which there is an interface with NRF24L01+ to pass from RF to 485 cable, which is responsible for managing up to 6 controls.&lt;br /&gt;The Central unit sends a coded signal to the tracks, where there are locomotives with the necessary decoder to move the motor, activate lights and sounds.&lt;br /&gt;In normal use each RF control sends orders to a locomotive passing through the interface, RS485 cable and the central&lt;/p&gt;
&lt;p&gt;The central has no modifications to use controls with RF - it sequentially sends a Call Byte with each address from 31 to 1 and waits about 120us for a response from the addressed control. The interface handles these times appropriately.&lt;br /&gt;In the current version, the controls are PRX with different addresses and if any of them has an order for the central, it loads it as an ack-payload.&lt;br /&gt;The central can send individual messages as a response to a request for information from a control, or Broadcast messages, for all the controls, informing them of a new state of the system. For this, the PRX have the same address in PIPE 0&lt;br /&gt;Example: Emergency Stop and Service Mode&lt;/p&gt;
&lt;p&gt;This entire introduction is to explain the messages for the case of a failure.&lt;br /&gt;A control can request to enter service mode in order to read and modify the internal settings in the decoder of a locomotive. Then it requests the reading of the value of the parameter of interest in the decoder.&lt;br /&gt;The central now only attends to the control that started the process and is responsible for reading it. In the meantime, it suspends communication via 485 until the reading is finished. This takes 1 second&lt;br /&gt;At that moment it sends a call to the corresponding command, the RF interface receives it via 485, loads it into its NRF24L01+ and sends it expecting a message as ack payload.&lt;br /&gt;The command previously loaded the message in the NRF24L01+ which is a request for information about the reading result.&lt;br /&gt;The interface (PTX) passes the message to the central and this returns the read value via 485.&lt;br /&gt;It is loaded into the NRF of the interface and is sent to the control, expecting an ack without payload to end the packet (it deletes the txFIFO).&lt;/p&gt;
&lt;p&gt;Up to this point everything works surprisingly well.&lt;/p&gt;
&lt;p&gt;The only thing that fails is that the control (PRX) sometimes does not receive the packet with the information, but the PTX always deletes its TxFIFO.&lt;br /&gt;I do not find any difference in the SPI signals in the PTX&lt;br /&gt;when it fails or when it works well. Neither in the previous SPI signals in the PRX&lt;br /&gt;Flush of TXFIFO and RXFIFO are done quite a while before this packet&lt;/p&gt;
&lt;p&gt;I&amp;#39;m going to try to add a payload in the PRX to see if the PTX is really receiving the ack.&lt;br /&gt;If I find the cause of the problem I&amp;#39;ll put it in a post&lt;/p&gt;
&lt;p&gt;Regards, Osvaldo&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/thread/502531?ContentTypeID=1</link><pubDate>Sat, 14 Sep 2024 11:53:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b45e3f54-9dd2-4602-9a52-19b02af6b6ad</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Sounds strange indeed. Maybe you should look at what is occuring on the PTX shortly before transmitting this specific packet, in case the PTX is not really in standby-I mode as you expect. Alternatively look at what is happening on the PRX around the same time, is it possible that the PRX is not actively receiving, or maybe it is flushing the RX FIFO at the exact time.&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/thread/502527?ContentTypeID=1</link><pubDate>Sat, 14 Sep 2024 02:10:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:779d0a8a-ccd5-41b6-a0f6-e66847b102cc</guid><dc:creator>o.hojvat</dc:creator><description>&lt;p&gt;Thank you for the reply.&lt;/p&gt;
&lt;p&gt;PTX is not waiting for ack payload for this packet&lt;/p&gt;
&lt;p&gt;Please confirm if this is correct&lt;br /&gt;In this packet PTX expects ack without payload, then if PRX receives an ok packet, the TXFIFO is cleared at&amp;nbsp;PTX.&lt;/p&gt;
&lt;p&gt;The strange thing is that repeating the sequence that ends with this packet, sometimes PRX receives the packet correctly and other times not, but always at&amp;nbsp;PTX TXFIFO is cleared after about 400us of the transmission from PTX.&lt;br /&gt;All other packets of different types work fine, including those that receive ack payloads and others that are for no ack.&lt;br /&gt;I will try to find out how the failure occurs by doing some tests.&lt;br /&gt;For example adding a payload for the ack.&lt;br /&gt;If I can&amp;#39;t solve it, I will repeat 8 times the sequence with this packet to reduce the probability of failure to less than 1%.&lt;br /&gt;Fortunately in the other modes of operation I have no problems.&lt;br /&gt;Regards, Osvaldo&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: PTX sends packet, gets ACK as TxFIFO becomes empty but no RXpacket IRQ at PRX side</title><link>https://devzone.nordicsemi.com/thread/501999?ContentTypeID=1</link><pubDate>Tue, 10 Sep 2024 18:55:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d31af76-4695-4ab0-b5ba-83f1282037ca</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;We are not really providing technical support for the nRF24L serier anymore.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;But if you say that you experience packet is sent successfully on the PTX, but no packet received on the PRX. Then I suspect the packet may be identical, and maybe the PRX consider it a duplicate.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you are trying to send ack payload, and the ack payload is lost, then try to adjust the timing of when you write the ack payload. The ack payload should for instance not be written while an ack is being sent.&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>