<?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>Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/36071/mesh-assert-in-core_tx-c</link><description>Hi, 
 After sending a few textmessages from the client to a server (8 bytes long approx. 10 messages/sec) i get a mesh assert on the client sometimes: 
 0&amp;gt; &amp;lt;t: 205648&amp;gt;, app_error_weak.c, 95, Mesh assert at 0x0002EFAA (:0) 
 With addr2line I found this</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 20 Sep 2019 10:34:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/36071/mesh-assert-in-core_tx-c" /><item><title>RE: Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/thread/210896?ContentTypeID=1</link><pubDate>Fri, 20 Sep 2019 10:34:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:956b9bf4-ffc8-49d3-ba91-a449cf430d8f</guid><dc:creator>bivay</dc:creator><description>&lt;p&gt;I have same issue How you solved this&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/thread/139005?ContentTypeID=1</link><pubDate>Wed, 04 Jul 2018 14:52:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95eff53e-9b38-49e9-8191-229a02eb532f</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The calls are made from the mainloop. The function read_uart() reads commands and then sends them to the mesh network.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;while (true)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt; {&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&amp;nbsp; read_uart();&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&amp;nbsp; (void)sd_app_evt_wait();&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m ignoring the&amp;nbsp;&lt;span&gt;NO_MEMORY cases at the moment so I don&amp;#39;t retry at all. It seems to me, that in SDK 2.0.1 things are slower than before. With the same code in SDK 1.0.0 I was able to transmit 20-30 messages per second without an assert. With SDK 2.0.1 this&amp;nbsp;NO_MEMORY status and the assert&amp;nbsp;occurs regulary and I can only transmit 5-10 messages per second to a server.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Regards &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Gerry&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/thread/138990?ContentTypeID=1</link><pubDate>Wed, 04 Jul 2018 13:38:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:22cb1ae6-b5e0-4156-8519-1d52de06a090</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;It would still be interesting to know what context those calls are made from. (For instance, are you using the app scheduler, does it come from an event handler, is it directly from the main loop, etc.)&lt;/p&gt;
&lt;p&gt;How are you handling the NO_MEMORY cases, are you retrying the operation (with or without delay, if delay how?)&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: Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/thread/138948?ContentTypeID=1</link><pubDate>Wed, 04 Jul 2018 11:55:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0fdbeba5-82a2-4456-a78c-8e9fa2f7844a</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t use interrupts to send messages. The messages are sent by calling:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;status = access_model_publish(m_clients[0].model_handle, &amp;amp;msg);&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;the function sometimes returns a status of 4 (NO_MEMORY). Is that maybe related to the problem?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;Gery&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh assert in core_tx.c</title><link>https://devzone.nordicsemi.com/thread/138938?ContentTypeID=1</link><pubDate>Wed, 04 Jul 2018 11:33:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9f4cc73e-a6e5-477d-a54c-11b1267f62a4</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This may happen if you call the mesh API from different interrupt contexts, so that one call may preempt another. Please make sure that you follow the directions in &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v2.0.1%2Fmd_doc_getting_started_mesh_interrupt_priorities.html"&gt;Interrupt priority levels&lt;/a&gt;.&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>