diff --git a/examples/platforms/efr32/radio.c b/examples/platforms/efr32/radio.c index e7573f5fb..8eddbe2d7 100644 --- a/examples/platforms/efr32/radio.c +++ b/examples/platforms/efr32/radio.c @@ -346,7 +346,14 @@ otError otPlatRadioTransmit(otInstance *aInstance, otRadioFrame *aFrame) txOptions |= RAIL_TX_OPTION_WAIT_FOR_ACK; } - status = RAIL_StartCcaCsmaTx(sRailHandle, aFrame->mChannel, txOptions, &csmaConfig, NULL); + if (aFrame->mInfo.mTxInfo.mCsmaCaEnabled) + { + status = RAIL_StartCcaCsmaTx(sRailHandle, aFrame->mChannel, txOptions, &csmaConfig, NULL); + } + else + { + status = RAIL_StartTx(sRailHandle, aFrame->mChannel, txOptions, NULL); + } assert(status == RAIL_STATUS_NO_ERROR); otPlatRadioTxStarted(aInstance, aFrame);