Hello,
The documentation states, that "maximum consecutive TX time is limited"
17.1.9 Maximum consecutive transmission time Maximum consecutive transmission time is defined as the longest time the RADIO can be active transmitting before it has to be disabled, i.e. the longest possible time between READY event and DISABLE task. Maximum consecutive transmission time for the RADIO is 1 ms running of a 60 ppm crystal and 16 ms running of a 30 ppm crystal.
Does it mean, that omitting disabling of RADIO between actual transmissions triggered by TASKS_START can damage the module? May be its a matter of legal regulations?
Anyway, does the following terrible flooding code hide any pitfalls for hardware?
void init_radio(void)
{
// ... not meaningful radio init routines...
// then:
NRF_RADIO->SHORTS = ( RADIO_SHORTS_READY_START_Msk);
NRF_RADIO->INTENSET = ( RADIO_INTENSET_END_Msk);
NRF_RADIO->TASKS_TXEN = 1;
}
void RADIO_IRQHandler(void)
{
if(NRF_RADIO->EVENTS_END)
{
NRF_RADIO->EVENTS_END = 0;
NRF_RADIO->PACKETPTR = &packet_bytes;
NRF_RADIO->TASKS_START = 1;
}
}