The flag psdu_being_received is set to True when the radio driver receives the FC field of the data frame, and the flag will be cleared after the ACK is sent out in PHYEND handler if the ACK is required. Sometimes, the ACK is failed to be sent out, which causes the flag to be set to True forever. Then the radio driver can't send out any frames.
The flag
psdu_being_received
is set to True when the radio driver receives the FC field of the data frame, and the flag will be cleared after the ACK is sent out in PHYEND handler if the ACK is required. Sometimes, the ACK is failed to be sent out, which causes the flag to be set to True forever. Then the radio driver can't send out any frames.The sdk-nrfxlib (https://github.com/nrfconnect/sdk-nrfxlib/blob/main/nrf_802154/driver/src/nrf_802154_trx.c#L2492) clears the flag
psdu_being_received
in the CRCOK handler rather than PHYEND handler. This commit clears the flagpsdu_being_received
in CRCOK handler to avoid thepsdu_being_received
being permanently set to True.Issue link: https://nrfsupport.atlassian.net/browse/NRF11-73