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

What's max rate to call nrf_gzll_add_packet_to_tx_fifo ?

Hi,

I use an app_timer to gather ADCs and send with Gazell with period 5ms. What I suffered is the sent packet is different from what I put in buffer.

my pseudo code is:

timer_hander () { // called per 5 ms

update_packet() // save to packet[]

nrf_gzll_add_packet_to_tx_fifo(PIPE, packet, sizeof(packet) )

}

I check dongle side and found sometimes (about per 7 - 10 packets) the packet content is shift with something padded by zero)

(expected 0xAA 0xBB ... but got 0xAA 0x00 0xBB ...)

I worry about race condition but ping pong buffer seems doesn't work.

May I know if there is some limit of call rate of nrf_gzll_add_packet_to_tx_fifo() or can I guarantee the nrf_gzll_add_packet_to_tx_fifo() is blocking until the packet is copied into hardware FIFO or may I disable any possible cache for packet ?

Thanks, Sam

Related