<?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>FDS garbage collection preventing app timer from feeding watchdog</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/60179/fds-garbage-collection-preventing-app-timer-from-feeding-watchdog</link><description>When my program starts, I set up a watchdog timer for 100 milliseconds and I start a repeated app timer that runs every 90 milliseconds to feed the watchdog. I use the app scheduler for other interrupt handling so that normal operation does not interfere</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Sat, 18 Apr 2020 08:36:20 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/60179/fds-garbage-collection-preventing-app-timer-from-feeding-watchdog" /><item><title>RE: FDS garbage collection preventing app timer from feeding watchdog</title><link>https://devzone.nordicsemi.com/thread/245336?ContentTypeID=1</link><pubDate>Sat, 18 Apr 2020 08:36:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:29fb3502-d484-43f0-81f2-bf4297ea533a</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;I think that this confirms your assumption in that it&amp;#39;s the garbage collection that prevents the app timer to reset the WD timer. You could try to queue the garbage collection right after the timer is reset in the app timer handler. This along with a no too strict timer requirement should give FDS enough time to complete the garbage collection before you have to feed the watchdog timer again. This will of course queue a lot of gc operations if you schedule them &lt;strong&gt;every time&lt;/strong&gt; you reset the WD timer. Instead, you should figure out how often your application is in need of garbage collection based on your FDS operations.&amp;nbsp;For example scheduling a garbage collection every 100th time you call the WD timer... Not sure if this is the best solution but might be a good start :)&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: FDS garbage collection preventing app timer from feeding watchdog</title><link>https://devzone.nordicsemi.com/thread/245087?ContentTypeID=1</link><pubDate>Thu, 16 Apr 2020 17:42:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d06c14c0-9c2a-4617-b9db-cdecd3d26a6c</guid><dc:creator>jzplusplus</dc:creator><description>&lt;p&gt;Increasing the watchdog timer seems to&amp;nbsp;lessen how often the problem occurs but&amp;nbsp;does not solve it entirely. I modified the code above to loop after garbage collection succeeds. With the watchdog timer set at 500 milliseconds, it successfully loops anywhere between 100 and 200 times, but still trips the watchdog at some point.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: FDS garbage collection preventing app timer from feeding watchdog</title><link>https://devzone.nordicsemi.com/thread/245007?ContentTypeID=1</link><pubDate>Thu, 16 Apr 2020 13:15:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:03c7effe-2991-4efa-aeaa-703e80fad800</guid><dc:creator>Jared</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Could you try to&amp;nbsp;increase&amp;nbsp;the Watchdog timer a bit and see if it helps? It might be to strict as the typical time it takes to erase one page is 85 ms.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>