This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Mesh assert in core_tx.c

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> <t:     205648>, app_error_weak.c,   95, Mesh assert at 0x0002EFAA (:0)

With addr2line I found this line to trigger the assert:

core_tx.c line 105 (discriminator 1).

Line 105 is the red line in core_tx_complete_cb_set:

void core_tx_complete_cb_set(core_tx_complete_cb_t tx_complete_callback)
{
m_tx_complete_callback = tx_complete_callback;
}

core_tx_bearer_bitmap_t core_tx_packet_alloc(const core_tx_alloc_params_t * p_params, uint8_t ** pp_packet)
{
NRF_MESH_ASSERT(p_params != NULL);
NRF_MESH_ASSERT(pp_packet != NULL);
NRF_MESH_ASSERT(p_params->role < CORE_TX_ROLE_COUNT);
NRF_MESH_ASSERT(m_packet.bearer_bitmap == 0);
NRF_MESH_ASSERT(p_params->net_packet_len <= sizeof(m_packet.buffer));

I use the SDK 2.0.1 at the moment.

How can this be avoided?

Regards Gerry

Parents Reply Children
  • Hi,

    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.)

    How are you handling the NO_MEMORY cases, are you retrying the operation (with or without delay, if delay how?)

    Regards,
    Terje

  • Hi, 

    The calls are made from the mainloop. The function read_uart() reads commands and then sends them to the mesh network.

    while (true)
    {
      read_uart();
      (void)sd_app_evt_wait();

    }

    I'm ignoring the NO_MEMORY cases at the moment so I don'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 NO_MEMORY status and the assert occurs regulary and I can only transmit 5-10 messages per second to a server.

    Regards

    Gerry

Related