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

gazell internal assert

Hello,

i'm using nrf51422 with gazell protocol. Here is my interrupt on success code

void  nrf_gzll_device_tx_success(uint32_t pipe, nrf_gzll_device_tx_info_t tx_info)
{
	uint32_t uiTmp;
	//reload gazell watchdog timer
	NRF_WDT->RR[WDT_GZLL_RELOAD] = WDT_RR_RR_Reload;
	//pop packet from host if needed
	if (tx_info.payload_received_in_ack)
	{
		uint32_t uiAckPayloadLlength = GZLL_RX_PAYLOAD_LENGHT;
		if (!nrf_gzll_fetch_packet_from_rx_fifo(pipe, aui8GzllAckPayload, &uiAckPayloadLlength))
		{
			nrf_gzll_error_code_t Error;
			Error = nrf_gzll_get_error_code();
			ASSERT(false);
		}
		uiTmp = (aui8GzllAckPayload[0] << 24) + (aui8GzllAckPayload[1] << 16) + (aui8GzllAckPayload[2] << 8) + (aui8GzllAckPayload[3]);
	}

This callback interrupt is called every second. The problem is, for some reason i ignore, the assertion is called every 5 minutes or so and Error is "NRF_GZLL_ERROR_CODE_INTERNAL_ASSERT_OCCURRED". How can i deal with this error ? What sort of code can workaround this error ?

thank you

Benjamin

Related