<?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>Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/105503/some-issues-arising-from-the-introduction-of-esb-timeslot-in-sdk-17-1</link><description>SDK:17.1 
 application: ble_app_uart(+ble_app_buttonless dfu service) bootloader:secure bootloader pca10040e_s112_ble 
 Question: After introducing esb functionality to my ble product, I sometimes experienced sudden shutdown, automatic disconnection from</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 20 Nov 2023 12:22:31 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/105503/some-issues-arising-from-the-introduction-of-esb-timeslot-in-sdk-17-1" /><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/456387?ContentTypeID=1</link><pubDate>Mon, 20 Nov 2023 12:22:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:189f74ab-141f-47de-ac65-3b23efdccb8a</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hi again,&lt;/p&gt;
[quote user="kenyon"]As for kenneth, you said 2ms. Should it be added to TIMESLOT_BEGIN_IRQHandler? Because I don&amp;#39;t see anything in here to disable or stop reception.[/quote]
&lt;p&gt;My comment of minimum ~2ms was just to ensure that you don&amp;#39;t stop reception when you receive a packet, it&amp;#39;s a common mistake that I have seen in the past many times explains why the prx receive packets, but the ptx don&amp;#39;t get an ack. It may be that this is not the problem here.&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/456384?ContentTypeID=1</link><pubDate>Mon, 20 Nov 2023 12:09:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6e2c272f-ff2f-4c4f-98fd-c92bcb46db41</guid><dc:creator>kenyon</dc:creator><description>&lt;p&gt;&lt;span&gt;hi Kenneth&lt;br /&gt;two nRF52-devices.&lt;br /&gt;I added the esb_timeslot file to the ble_app_uart routine of SDK17.1 and added it.&lt;br /&gt;And I also tested that it couldn&amp;#39;t answer ack. I guess this code will help us solve the problem better. As for kenneth, you said 2ms. Should it be added to TIMESLOT_BEGIN_IRQHandler? Because I don&amp;#39;t see anything in here to disable or stop reception.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/08166.main.c"&gt;devzone.nordicsemi.com/.../08166.main.c&lt;/a&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/0181.esb_5F00_timeslot.c"&gt;devzone.nordicsemi.com/.../0181.esb_5F00_timeslot.c&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/456292?ContentTypeID=1</link><pubDate>Sun, 19 Nov 2023 18:30:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:015fd8de-96b0-49e4-ae1b-c4dd5ee1cc3e</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Are you communicating between two nRF52-devices or are you using a different peer device?&lt;/p&gt;
&lt;p&gt;On the PRX, make sure you don&amp;#39;t disable or stop reception when you receive a packet, since this will prevent the ack to be sent. On the PRX you should wait for instance 2ms after receiving a packet before stopping reception, do you do this?&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/456063?ContentTypeID=1</link><pubDate>Fri, 17 Nov 2023 02:56:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1425f9a8-7661-4b5c-8b8b-4f0ad77a455b</guid><dc:creator>kenyon</dc:creator><description>&lt;p&gt;Hi kenneth&lt;br /&gt;I can&amp;#39;t guarantee that because my code comes with softdevice, it would be a lot of work to port my code to a routine with no softdevice.But I&amp;#39;m sure that both the esb_PTX and esb_PRX routines my device uses to run SDK17.1 are working fine.&lt;br /&gt;In my code (with softdevice), I can set only PRX mode or only PTX mode. If PRX is set, messages are received correctly, but ack cannot be sent. Setting PTX will result in an error.&lt;br /&gt;&lt;br /&gt;Kenyon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/456050?ContentTypeID=1</link><pubDate>Thu, 16 Nov 2023 21:11:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:33c51700-49f6-4068-b947-b0e43ec1254a</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Does running ESB directly (without softdevice) work as intended?&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/455953?ContentTypeID=1</link><pubDate>Thu, 16 Nov 2023 12:06:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3249659f-8dba-4e2b-bd34-06480cbc2733</guid><dc:creator>kenyon</dc:creator><description>&lt;p&gt;hi kenneth！&lt;br /&gt;&lt;br /&gt;You&amp;#39;re talking about the software SES, right? I use Keil5, I don&amp;#39;t know if I can get useful information in Keil5 debug. I can now only catch messages that my device cannot send (write txpayload error), but it can successfully receive messages from other devices. Therefore, whether the conversion of PTX and PRX is caused by the error of esb_timeslot file itself, I am a little powerless now and do not know where to check.T T&lt;br /&gt;&lt;br /&gt;Best regard&lt;br /&gt;kenyon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/455502?ContentTypeID=1</link><pubDate>Tue, 14 Nov 2023 11:49:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6903df16-71f1-42bd-bb1d-08ae7a139779</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;If you build using Debug instead of Release, then the window should contain more information about the error (e.g file name, line number and actual error code) and also the call stack. Also check out:&amp;nbsp;&lt;br /&gt;&lt;a href="https://www.youtube.com/watch?v=uP8RYgYGRvI&amp;amp;list=PLx_tBuQ_KSqGHmzdEL2GWEOeix-S5rgTV&amp;amp;index=7"&gt;https://www.youtube.com/watch?v=uP8RYgYGRvI&amp;amp;list=PLx_tBuQ_KSqGHmzdEL2GWEOeix-S5rgTV&amp;amp;index=7&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can find from nrf_error.h that 4 means:&amp;nbsp;NRF_ERROR_NO_MEM (so likely means that packets have not been sent successfully (no receiver was able to receive them)).&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/455444?ContentTypeID=1</link><pubDate>Tue, 14 Nov 2023 03:52:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9ff3621-9b8d-4cdc-a291-14825598f5aa</guid><dc:creator>kenyon</dc:creator><description>&lt;p&gt;I also tried to set the mode of ESB to PTX to actively send messages. It will eventually go into the bootloader after sending it a few times, and I&amp;#39;m guessing it failed in some APP_CHECK_ERROR. It looks like the ESB&amp;#39;s state machine PTX and PRX transitions are not well coordinated, but I wonder where the logic is at fault&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/455441?ContentTypeID=1</link><pubDate>Tue, 14 Nov 2023 03:11:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3651fa44-ac9e-4ad1-8c28-3544ff95213b</guid><dc:creator>kenyon</dc:creator><description>&lt;p&gt;hi kenneth&lt;/p&gt;
&lt;p&gt;I tried to fix my own esb using the esb_timeslot section in the link.&lt;/p&gt;
&lt;p&gt;But it&amp;#39;s weird when&amp;nbsp;it call&amp;nbsp;&amp;nbsp;&lt;br /&gt;TIMESLOT_BEGIN_IRQHandler()&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;After receiving an ack message, the device changes the status to PTX and sends the message. err_code = nrf_esb_write_payload(&amp;amp;tx_payload); &amp;quot;, &amp;quot;return 04, causing the verification failure and entering the bootloader.&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1699931437048v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Why is that?&lt;br /&gt;Looking forward to hearing from you! Thank you very much&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Some issues arising from the introduction of esb timeslot in SDK:17.1</title><link>https://devzone.nordicsemi.com/thread/454657?ContentTypeID=1</link><pubDate>Wed, 08 Nov 2023 12:20:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c3ddbdc-8fd5-4389-a4ec-572dec435a7d</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;There is no official example in the nRF5 SDK showing this, but you can find an example here:&lt;br /&gt;&lt;a href="https://github.com/NordicPlayground/nrf51-ble-micro-esb-uart"&gt;https://github.com/NordicPlayground/nrf51-ble-micro-esb-uart&lt;/a&gt;&amp;nbsp;(it does nRF51 in the title, but it is updated to nRF52 and nRF5 SDK v17).&lt;/p&gt;
&lt;p&gt;I suggest to study it for guideance.&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>