<?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>Softdevice assert with TWI</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/67588/softdevice-assert-with-twi</link><description>On SDK16.0.0 + Mesh SDK 4.1.0 
 I am getting random softdevice asserts when running our application with TWI accessing a temperature/humidity sensor (HTU21D/HPP845). Sometimes within a few minutes and sometimes it takes hours. 
 &amp;lt;t: 16498108&amp;gt;, app_error_weak</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 30 Oct 2020 16:29:36 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/67588/softdevice-assert-with-twi" /><item><title>RE: Softdevice assert with TWI</title><link>https://devzone.nordicsemi.com/thread/277880?ContentTypeID=1</link><pubDate>Fri, 30 Oct 2020 16:29:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2eb1b70c-c5fc-4bd4-b6f6-7dd2ea0bb996</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;From &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v4.2.0%2Fmd_doc_user_guide_mesh_interrupt_priorities.html"&gt;Setting interrupt priority levels&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;&amp;quot;However, if you use the nRF5 SDK&amp;#39;s app_scheduler module to run the application from the main loop, the low priority parts of the mesh stack should also run from the main loop.&amp;quot;&lt;/p&gt;
&lt;p&gt;In other words, when using the app scheduler the &lt;code&gt;irq_priority&lt;/code&gt; field must be &lt;code&gt;NRF_MESH_IRQ_PRIORITY_THREAD&lt;/code&gt; (also stated in the same section of the setting interrupt priority levels documentation page.)&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert with TWI</title><link>https://devzone.nordicsemi.com/thread/277693?ContentTypeID=1</link><pubDate>Fri, 30 Oct 2020 00:01:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5a2e3185-69fb-4c9a-9356-5f77d3dc0eb4</guid><dc:creator>ftjandra</dc:creator><description>&lt;p&gt;I changed the interrupt priority of the TWI to lowest and that seemed to help a little, but not completely.&lt;/p&gt;
&lt;p&gt;So now I am trying to implement the scheduler. I followed the tutorial here:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/nordic/short-range-guides/b/software-development-kit/posts/scheduler-tutorial"&gt;https://devzone.nordicsemi.com/nordic/short-range-guides/b/software-development-kit/posts/scheduler-tutorial&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;But now I get &amp;#39;app_error_weak.c,&amp;nbsp; 115, Mesh error 9 at 0x00000000 (:0)&amp;#39; on power up.&lt;/p&gt;
&lt;p&gt;Does running mesh require additional changes?&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert with TWI</title><link>https://devzone.nordicsemi.com/thread/277151?ContentTypeID=1</link><pubDate>Tue, 27 Oct 2020 13:23:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dd93e586-53dc-47a4-98f0-06366b684c19</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Since it is a SoftDevice assert it sounds like wrong &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v4.1.0%2Fmd_doc_user_guide_mesh_interrupt_priorities.html"&gt;settings for interrupt priorities&lt;/a&gt;, or otherwise too much time used in high priority interrupt context blocking the mesh stack from releasing resources back to the SoftDevice.&lt;/p&gt;
&lt;p&gt;Please double check &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v4.1.0%2Fmd_doc_user_guide_mesh_interrupt_priorities.html"&gt;Setting interrupt priority levels&lt;/a&gt;, and be careful with running interrupts at a higher priority than that of the mesh stack. The &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v16.0.0%2Flib_scheduler.html"&gt;schedule handling library&lt;/a&gt; is an option for moving interrupt triggered code to main context.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>