API Changes#

RAIL Library 2.16.0#

Added#

New API Name

Return Value

Comment

RAILCb_IEEE802154_IsModeSwitchNewChannelValid(uint32_t currentBaseFreq, uint8_t newPhyModeId, const RAIL_ChannelConfigEntry_t *configEntryNewPhyModeId, uint16_t *pChannel)

RAIL_Status_t

A new API to check if the mode switch channel is valid

RAIL_SupportsCollisionDetection(RAIL_Handle_t railHandle)

bool

A new API to indicate if the chip supports Collision detection feature

RAIL Library 2.15.2#

Added#

New API Name

Return Value

Comment

RAIL_SupportsTxRepeatStartToStart(RAIL_Handle_t railHandle)

bool

See RAIL Changelist 1131398

RAIL Library 2.15.1#

Added#

New API Name

Return Value

Comment

RAIL_GetAutoAckFifo(RAIL_Handle_t railHandle, uint8_t **ackBuffer, uint16_t *ackBufferBytes)

RAIL_Status_t

See RAIL Changelist 748817

RAIL_Sidewalk_ConfigPhy2GFSK50kbps(RAIL_Handle_t railHandle)

RAIL_Status_t

Function to load the Sidewalk 2GFSK 50kbps PHY

RAIL_SupportsProtocolSidewalk(RAIL_Handle_t railHandle)

bool

API to determine at runtime when Sidewalk PHYs are supported

Modified#

Old API Name

Return Value

New API Name

Return Value

Comment

RAIL_ConfigVerification(RAIL_Handle_t railHandle, RAIL_VerifyConfig_t *configVerify, const uint32_t *radioConfig, RAIL_VerifyCallbackPtr_t cb)

RAIL_Status_t

RAIL_ConfigVerification(RAIL_Handle_t railHandle, RAIL_VerifyConfig_t *configVerify, RAIL_RadioConfig_t radioConfig, RAIL_VerifyCallbackPtr_t cb)

RAIL_Status_t

RAIL Library 2.15.0#

Added#

New API Name

Return Value

Comment

RAIL_EnableCacheSynthCal(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

See RAIL Changelist item 1061665.

RAIL_GetSetEffClpcFemdata(RAIL_Handle_t railHandle, uint8_t *newMode, bool changeMode)

RAIL_Status_t

New alpha API.

RAIL_IEEE802154_SetRxToEnhAckTx(RAIL_Handle_t railHandle, RAIL_TransitionTime_t *pRxToEnhAckTx)

RAIL_Status_t

See RAIL Changelist item 1117127.

RAIL_SetTxFifoAlt(RAIL_Handle_t railHandle, uint8_t *addr, uint16_t startOffset, uint16_t initLength, uint16_t size)

uint16_t

See RAIL Changelist item 1103587.

RAIL_SupportsFastRx2Rx(RAIL_Handle_t railHandle)

bool

Added to help determine Fast RX2RX support at runtime.

RAIL_SupportsProtocolWiSUN(RAIL_Handle_t railHandle)

bool

Added to help determine WiSUN support at runtime.

RAIL_WMBUS_Config(RAIL_Handle_t railHandle, bool enableSimultaneousTCRx)

RAIL_Status_t

See RAIL Changelist item 1099829.

RAIL_WMBUS_SupportsSimultaneousTCRx(RAIL_Handle_t railHandle)

bool

See RAIL Changelist item 1099829.

Removed#

Old API Name

Return Value

Comment

RAIL_GetSetEffMode(RAIL_Handle_t railHandle, uint8_t *newMode, bool changeMode)

RAIL_Status_t

Removed alpha API.

Modified#

Old API Name

Return Value

New API Name

Return Value

Comment

RAIL_GetSetClpcEnable(RAIL_Handle_t railHandle, uint8_t *newClpcEnable, bool changeClpcEnable)

RAIL_Status_t

RAIL_GetSetEffClpcEnable(RAIL_Handle_t railHandle, uint8_t *newClpcEnable, bool changeClpcEnable)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetClpcFastLoop(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, uint16_t *newTargetMv, uint16_t *newSlopeMvPerPaLevel, bool changeValues)

RAIL_Status_t

RAIL_GetSetEffClpcFastLoop(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, uint16_t *newTargetMv, uint16_t *newSlopeMvPerPaLevel, bool changeValues)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetClpcFastLoopCal(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, RAIL_EffCalConfig_t *calibrationEntry, bool changeValues)

RAIL_Status_t

RAIL_GetSetEffClpcFastLoopCal(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, RAIL_EffCalConfig_t *calibrationEntry, bool changeValues)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetClpcFastLoopCalSlp(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, int16_t *newSlope1e1MvPerDdbm, int16_t *newoffset290Ddbm, bool changeValues)

RAIL_Status_t

RAIL_GetSetEffClpcFastLoopCalSlp(RAIL_Handle_t railHandle, RAIL_EffModeSensor_t modeSensorIndex, int16_t *newSlope1e1MvPerDdbm, int16_t *newoffset290Ddbm, bool changeValues)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetEffBypassDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

RAIL_GetSetEffLnaBypassDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetEffControl(RAIL_Handle_t railHandle, uint16_t tempBuffer[(52U)/sizeof(uint16_t)], bool reset)

RAIL_Status_t

RAIL_GetSetEffClpcControl(RAIL_Handle_t railHandle, uint16_t tempBuffer[(52U)/sizeof(uint16_t)], bool reset)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetEffRuralUrbanMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

RAIL_GetSetEffLnaRuralUrbanMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetEffUrbanBypassMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

RAIL_GetSetEffLnaUrbanBypassMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

Renamed alpha API.

RAIL_GetSetEffUrbanDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

RAIL_GetSetEffLnaUrbanDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

Renamed alpha API.

RAIL Library 2.14.3#

No changes

RAIL Library 2.14.2#

Added#

New API Name

Return Value

Comment

RAIL_GetPowerSettingTable(RAIL_Handle_t railHandle, RAIL_TxPowerMode_t mode, RAIL_TxPower_t *minPower, RAIL_TxPower_t *maxPower, RAIL_TxPowerLevel_t *step)

const RAIL_PaPowerSetting_t

RAIL_ZWAVE_GetBeamHomeIdHash(RAIL_Handle_t railHandle, RAIL_ZWAVE_HomeIdHash_t *pBeamHomeIdHash)

RAIL_Status_t

Removed#

Old API Name

Return Value

Comment

RAIL_GetFemProtectionConfig(RAIL_Handle_t railHandle, RAIL_FemProtectionConfig_t *femConfig)

RAIL_Status_t

Removed alpha API for EFR32xG25+EFF01 support

RAIL_SetFemProtectionConfig(RAIL_Handle_t railHandle, const RAIL_FemProtectionConfig_t *newFemConfig)

RAIL_Status_t

Removed alpha API for EFR32xG25+EFF01 support

RAIL Library 2.14.1#

No changes

RAIL Library 2.14.0#

Added#

New API Name

Return Value

Comment

RAIL_CalibrateHFXO(RAIL_Handle_t railHandle, int8_t *crystalPPMError)

RAIL_Status_t

See RAIL Changelist item 751910

RAIL_CompensateHFXO(RAIL_Handle_t railHandle, int8_t crystalPPMError)

RAIL_Status_t

See RAIL Changelist item 751910

RAIL_ConfigHFXOCompensation(RAIL_Handle_t railHandle, const RAIL_HFXOCompensationConfig_t *pHfxoCompensationConfig)

RAIL_Status_t

See RAIL Changelist item 751910

RAIL_ConfigThermalProtection(RAIL_Handle_t genericRailHandle, const RAIL_ChipTempConfig_t *chipTempConfig)

RAIL_Status_t

See RAIL Changelist item 1022182

RAIL_GetHFXOCompensationConfig(RAIL_Handle_t railHandle, RAIL_HFXOCompensationConfig_t *pHfxoCompensationConfig)

RAIL_Status_t

See RAIL Changelist item 751910

RAIL_GetPaPowerSetting(RAIL_Handle_t railHandle)

RAIL_PaPowerSetting_t

RAIL_GetSetClpcFastLoopCal(RAIL_Handle_t railHandle, RAIL_EffCalConfigEnum_t calibrationIndex, RAIL_EffCalConfig_t *calibrationEntry, bool changeValues)

RAIL_Status_t

RAIL_GetSetClpcFastLoopCalSlp(RAIL_Handle_t railHandle, RAIL_EffCalConfigEnum_t calibrationIndex, int16_t *newSlope1e1, int16_t *newoffset290Ddbm, bool changeValues)

RAIL_Status_t

RAIL_GetThermalProtection(RAIL_Handle_t genericRailHandle, RAIL_ChipTempConfig_t *chipTempConfig)

RAIL_Status_t

See RAIL Changelist item 1022182

RAIL_IEEE802154_ConfigRxChannelSwitching(RAIL_Handle_t railHandle, const RAIL_IEEE802154_RxChannelSwitchingCfg_t *pConfig)

RAIL_Status_t

See RAIL Changelist item 858567

RAIL_IEEE802154_SupportsRxChannelSwitching(RAIL_Handle_t railHandle)

bool

See RAIL Changelist item 858567

RAIL_SetPaPowerSetting(RAIL_Handle_t railHandle, RAIL_PaPowerSetting_t paPowerSetting, RAIL_TxPower_t minPowerDbm, RAIL_TxPower_t maxPowerDbm, RAIL_TxPower_t currentPowerDbm)

RAIL_Status_t

RAIL_SupportsHFXOCompensation(RAIL_Handle_t railHandle)

bool

See RAIL Changelist item 751910

RAIL_SupportsIEEE802154Band2P4(RAIL_Handle_t railHandle)

bool

RAIL_SupportsThermalProtection(RAIL_Handle_t railHandle)

bool

See RAIL Changelist item 1022182

RAIL_ZWAVE_PerformIrcal(RAIL_Handle_t railHandle, RAIL_ZWAVE_IrcalVal_t *pIrCalVals, bool forceIrcal)

RAIL_Status_t

See RAIL Changelist item 846240

Removed#

Old API Name

Return Value

Comment

RAIL_GetSetClpcSlowLoop(RAIL_Handle_t railHandle, uint16_t *newTarget, uint16_t *newSlope, bool changeValues)

RAIL_Status_t

Removed alpha API for EFR32xG25+EFF01 support

RAIL_GetSetInternalTempThreshold(RAIL_Handle_t railHandle, uint16_t *newThreshold, bool changeThreshold)

RAIL_Status_t

Removed alpha API for EFR32xG25 support

Modified#

Old API Name

Return Value

New API Name

Return Value

Comment

RAIL_GetSetClpcFastLoop(RAIL_Handle_t railHandle, uint16_t *newTarget, uint16_t *newSlope, bool changeValues)

RAIL_Status_t

RAIL_GetSetClpcFastLoop(RAIL_Handle_t railHandle, uint16_t *newTargetFsk, uint16_t *newSlopeFsk, uint16_t *newTargetOfdm, uint16_t *newSlopeOfdm, bool changeValues)

RAIL_Status_t

Modified alpha API

RAIL Library 2.13.3#

No changes

RAIL Library 2.13.2#

No changes

RAIL Library 2.13.1#

No changes

RAIL Library 2.13.0#

Added#

New API Name

Return Value

Comment

RAIL_ChangedDcdc(void)

RAIL_Status_t

RAIL_ComputeHFXOPPMError(RAIL_Handle_t railHandle, int16_t crystalTemperatureC, int8_t *crystalPPMError)

RAIL_Status_t

RAIL_ConfigEff(RAIL_Handle_t railHandle, const RAIL_EffConfig_t *config)

RAIL_Status_t

RAIL_ConfigHFXOThermistor(RAIL_Handle_t railHandle, const RAIL_HFXOThermistorConfig_t *hfxoThermistorConfig)

RAIL_Status_t

RAIL_ConfigPaAutoEntry(RAIL_Handle_t railHandle, const RAIL_PaAutoModeConfigEntry_t *paAutoModeEntry)

RAIL_Status_t

RAIL_ConvertThermistorImpedance(RAIL_Handle_t railHandle, uint32_t thermistorImpedance, int16_t *thermistorTemperatureC)

RAIL_Status_t

RAIL_GetChannelAlt(RAIL_Handle_t railHandle, uint16_t *channel)

RAIL_Status_t

RAIL_GetFemProtectionConfig(RAIL_Handle_t railHandle, RAIL_FemProtectionConfig_t *femConfig)

RAIL_Status_t

RAIL_GetRssiDetectThreshold(RAIL_Handle_t railHandle)

int8_t

RAIL_GetSetClpcEnable(RAIL_Handle_t railHandle, uint8_t *newClpcEnable, bool changeClpcEnable)

RAIL_Status_t

RAIL_GetSetClpcFastLoop(RAIL_Handle_t railHandle, uint16_t *newTarget, uint16_t *newSlope, bool changeValues)

RAIL_Status_t

RAIL_GetSetClpcSlowLoop(RAIL_Handle_t railHandle, uint16_t *newTarget, uint16_t *newSlope, bool changeValues)

RAIL_Status_t

RAIL_GetSetEffBypassDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

RAIL_GetSetEffControl(RAIL_Handle_t railHandle, uint16_t tempBuffer[(52U)/sizeof(uint16_t)], bool reset)

RAIL_Status_t

RAIL_GetSetEffMode(RAIL_Handle_t railHandle, uint8_t *newMode, bool changeMode)

RAIL_Status_t

RAIL_GetSetEffRuralUrbanMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

RAIL_GetSetEffTempThreshold(RAIL_Handle_t railHandle, uint16_t *newThreshold, bool changeThreshold)

RAIL_Status_t

RAIL_GetSetEffUrbanBypassMv(RAIL_Handle_t railHandle, uint16_t *newTrip, bool changeTrip)

RAIL_Status_t

RAIL_GetSetEffUrbanDwellTimeMs(RAIL_Handle_t railHandle, uint32_t *newDwellTime, bool changeDwellTime)

RAIL_Status_t

RAIL_GetSetInternalTempThreshold(RAIL_Handle_t railHandle, uint16_t *newThreshold, bool changeThreshold)

RAIL_Status_t

RAIL_GetTemperature(RAIL_Handle_t railHandle, int16_t tempBuffer[(13U)], bool reset)

RAIL_Status_t

RAIL_SetFemProtectionConfig(RAIL_Handle_t railHandle, const RAIL_FemProtectionConfig_t *newFemConfig)

RAIL_Status_t

RAIL_SetRssiDetectThreshold(RAIL_Handle_t railHandle, int8_t rssiThresholdDbm)

RAIL_Status_t

RAIL_SupportsAuxAdc(RAIL_Handle_t railHandle)

bool

RAIL_SupportsEff(RAIL_Handle_t railHandle)

bool

RAIL_SupportsRssiDetectThreshold(RAIL_Handle_t railHandle)

bool

Removed#

Old API Name

Return Value

Comment

RAIL_IEEE802154_Config863MHzSUNOFDMOptRadio(RAIL_Handle_t railHandle, RAIL_IEEE802154_OFDMOption_t ofdmOption)

RAIL_Status_t

Removed unnecessary alpha API.

RAIL_IEEE802154_Config902MHzSUNOFDMOptRadio(RAIL_Handle_t railHandle, RAIL_IEEE802154_OFDMOption_t ofdmOption)

RAIL_Status_t

Removed unnecessary alpha API.

Modified#

Old API Name

Return Value

New API Name

Return Value

Comment

RAIL_BLE_ConfigSignalIdentifier(RAIL_Handle_t railHandle, const RAIL_BLE_SignalIdentifierMode_t signalIdentifierMode)

RAIL_Status_t

RAIL_BLE_ConfigSignalIdentifier(RAIL_Handle_t railHandle, RAIL_BLE_SignalIdentifierMode_t signalIdentifierMode)

RAIL_Status_t

Removed unnecessary const usage.

RAIL_BLE_EnableSignalIdentifier(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_BLE_EnableSignalDetection(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

The old API is available through a define for compatibility.

RAIL_IEEE802154_ConfigCcaMode(RAIL_Handle_t railHandle, const RAIL_IEEE802154_CcaMode_t ccaMode)

RAIL_Status_t

RAIL_IEEE802154_ConfigCcaMode(RAIL_Handle_t railHandle, RAIL_IEEE802154_CcaMode_t ccaMode)

RAIL_Status_t

Removed unnecessary const usage.

RAIL_IEEE802154_ConfigSignalIdentifier(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_ConfigSignalIdentifier(RAIL_Handle_t railHandle, RAIL_IEEE802154_SignalIdentifierMode_t signalIdentifierMode)

RAIL_Status_t

Added an additional parameter to allow disabling the signal identifier. This breaks backwards compatibility but was important due to underlying changes to the signal identifier implementation.

RAIL_IEEE802154_EnableSignalIdentifier(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_IEEE802154_EnableSignalDetection(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

The old API is available through a define for compatibility.

RAIL Library 2.12.2#

No changes

RAIL Library 2.12.1#

No changes

RAIL Library 2.12.0#

Added#

New API Name

Return Value

Comment

RAIL_AddStateBuffer3(RAIL_Handle_t genericRailHandle)

RAIL_Status_t

See RAIL Changelist item 721163

RAIL_AddStateBuffer4(RAIL_Handle_t genericRailHandle)

RAIL_Status_t

See RAIL Changelist item 721163

RAIL_BLE_ConfigSignalIdentifier(RAIL_Handle_t railHandle, const RAIL_BLE_SignalIdentifierMode_t signalIdentifierMode)

RAIL_Status_t

RAIL_BLE_EnableSignalIdentifier(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_BLE_GetCteSampleOffset(RAIL_Handle_t railHandle)

uint8_t

RAIL_BLE_SupportsSignalIdentifier(RAIL_Handle_t railHandle)

bool

RAIL_GetSchedulerStatusAlt(RAIL_Handle_t railHandle, RAIL_SchedulerStatus_t *pSchedulerStatus, RAIL_Status_t *pRailStatus)

RAIL_Status_t

See RAIL Changelist item 726491

RAIL_GetTxPacketsRemaining(RAIL_Handle_t railHandle)

uint16_t

See RAIL Changelist item 708206

RAIL_IEEE802154_ComputeChannelFromPhyModeId(RAIL_Handle_t railHandle, uint8_t newPhyModeId, uint16_t *pChannel)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioCustom1(RAIL_Handle_t railHandle)

RAIL_Status_t

See RAIL Changelist item 727728

RAIL_IEEE802154_Config863MHzSUNOFDMOptRadio(RAIL_Handle_t railHandle, RAIL_IEEE802154_OFDMOption_t ofdmOption)

RAIL_Status_t

RAIL_IEEE802154_Config902MHzSUNOFDMOptRadio(RAIL_Handle_t railHandle, RAIL_IEEE802154_OFDMOption_t ofdmOption)

RAIL_Status_t

RAIL_IEEE802154_ConfigCcaMode(RAIL_Handle_t railHandle, const RAIL_IEEE802154_CcaMode_t ccaMode)

RAIL_Status_t

RAIL_IEEE802154_ConfigSignalIdentifier(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_EnableSignalIdentifier(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_IEEE802154_SupportsCustom1Phy(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsDualPaConfig(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsGDynFec(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsGModeSwitch(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsSignalIdentifier(RAIL_Handle_t railHandle)

bool

RAIL_SupportsOFDMPA(RAIL_Handle_t railHandle)

bool

RAIL Library 2.11.3#

No changes

RAIL Library 2.11.2#

Added#

New API Name

Return Value

Comment

RAIL_ConfigDirectMode(RAIL_Handle_t railHandle, const RAIL_DirectModeConfig_t *directModeConfig)

RAIL_Status_t

RAIL_EnableDirectModeAlt(RAIL_Handle_t railHandle, bool enableDirectTx, bool enableDirectRx)

RAIL_Status_t

RAIL_GetDefaultRxDutyCycleConfig(RAIL_Handle_t railHandle, RAIL_RxDutyCycleConfig_t *config)

RAIL_Status_t

RAIL_SetMfmPingPongFifo(RAIL_Handle_t railHandle, const RAIL_MFM_PingPongBufferConfig_t *config)

RAIL_Status_t

RAIL_SupportsMfm(RAIL_Handle_t railHandle)

bool

RAIL_SupportsRxDirectModeDataToFifo(RAIL_Handle_t railHandle)

bool

RAIL Library 2.11.1#

Added#

New API Name

Return Value

Comment

RAIL_GetPtiProtocol(RAIL_Handle_t railHandle)

RAIL_PtiProtocol_t

RAIL_GetRadioClockFreqHz(RAIL_Handle_t railHandle)

uint32_t

RAIL Library 2.11.0#

Added#

New API Name

Return Value

Comment

RAIL_BLE_SetNextTxRepeat(RAIL_Handle_t railHandle, const RAIL_BLE_TxRepeatConfig_t *repeatConfig)

RAIL_Status_t

RAIL_SetNextTxRepeat(RAIL_Handle_t railHandle, const RAIL_TxRepeatConfig_t *repeatConfig)

RAIL_Status_t

RAIL_StartScheduledCcaCsmaTx(RAIL_Handle_t railHandle, uint16_t channel, RAIL_TxOptions_t options, const RAIL_ScheduleTxConfig_t *scheduleTxConfig, const RAIL_CsmaConfig_t *csmaConfig, const RAIL_SchedulerInfo_t *schedulerInfo)

RAIL_Status_t

RAIL_StartScheduledCcaLbtTx(RAIL_Handle_t railHandle, uint16_t channel, RAIL_TxOptions_t options, const RAIL_ScheduleTxConfig_t *scheduleTxConfig, const RAIL_LbtConfig_t *lbtConfig, const RAIL_SchedulerInfo_t *schedulerInfo)

RAIL_Status_t

RAIL_SupportsTxToTx(RAIL_Handle_t railHandle)

bool

RAIL_ZWAVE_GetBeamRssi(RAIL_Handle_t railHandle, int8_t *pBeamRssi)

RAIL_Status_t

RAIL_ZWAVE_GetRxBeamConfig(RAIL_ZWAVE_BeamRxConfig_t *pConfig)

RAIL_Status_t

RAIL_ZWAVE_SetDefaultRxBeamConfig(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_ZWAVE_SetLrAckData(RAIL_Handle_t railHandle, const RAIL_ZWAVE_LrAckData_t *pLrAckData)

RAIL_Status_t

RAIL Library 2.10.2#

Added#

New API Name

Return Value

Comment

RAIL_IEEE802154_GetPtiRadioConfig(RAIL_Handle_t railHandle)

RAIL_IEEE802154_PtiRadioConfig_t

RAIL Library 2.10.1#

No changes

RAIL Library 2.10.0#

Added#

New API Name

Return Value

Comment

RAIL_ApplyIrCalibrationAlt(RAIL_Handle_t railHandle, RAIL_IrCalValues_t *imageRejection, RAIL_AntennaSel_t rfPath)

RAIL_Status_t

RAIL_BLE_ConfigPhySimulscan(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_BLE_SupportsSimulscanPhy(RAIL_Handle_t railHandle)

bool

RAIL_CalibrateIrAlt(RAIL_Handle_t railHandle, RAIL_IrCalValues_t *imageRejection, RAIL_AntennaSel_t rfPath)

RAIL_Status_t

RAIL_ConfigRetimeOptions(RAIL_Handle_t railHandle, RAIL_RetimeOptions_t mask, RAIL_RetimeOptions_t options)

RAIL_Status_t

RAIL_ConfigSleepAlt(RAIL_Handle_t railHandle, RAIL_TimerSyncConfig_t *syncConfig)

RAIL_Status_t

RAIL_GetRadioStateDetail(RAIL_Handle_t railHandle)

RAIL_RadioStateDetail_t

RAIL_GetRetimeOptions(RAIL_Handle_t railHandle, RAIL_RetimeOptions_t *pOptions)

RAIL_Status_t

RAIL_GetRfPath(RAIL_Handle_t railHandle, RAIL_AntennaSel_t *rfPath)

RAIL_Status_t

RAIL_GetRssiAlt(RAIL_Handle_t railHandle, RAIL_Time_t waitTimeout)

int16_t

RAIL_GetTuneDelta(RAIL_Handle_t railHandle)

int32_t

RAIL_IEEE802154_Config2p4GHzRadioAntDivCoexFem(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioAntDivFem(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioCoexFem(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioFem(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_SupportsFemPhy(RAIL_Handle_t railHandle)

bool

RAIL_SetAddressFilterAddressMask(RAIL_Handle_t railHandle, uint8_t field, const uint8_t *bitMask)

RAIL_Status_t

RAIL_SetTuneDelta(RAIL_Handle_t railHandle, int32_t delta)

RAIL_Status_t

RAIL_SupportsAddrFilterAddressBitMask(RAIL_Handle_t railHandle)

bool

RAIL_SupportsAddrFilterMask(RAIL_Handle_t railHandle)

bool

RAIL_SupportsDirectMode(RAIL_Handle_t railHandle)

bool

RAIL_SupportsRfSenseEnergyDetection(RAIL_Handle_t railHandle)

bool

RAIL_SupportsSQPhy(RAIL_Handle_t railHandle)

bool

RAIL_SupportsTxPowerModeAlt(RAIL_Handle_t railHandle, RAIL_TxPowerMode_t *powerMode, RAIL_TxPowerLevel_t *maxPowerLevel, RAIL_TxPowerLevel_t *minPowerLevel)

bool

RAIL_ZWAVE_ConfigRxChannelHopping(RAIL_Handle_t railHandle, RAIL_RxChannelHoppingConfig_t *config)

RAIL_Status_t

RAIL_ZWAVE_GetLrBeamTxPower(RAIL_Handle_t railHandle, uint8_t *pLrBeamTxPower)

RAIL_Status_t

RAIL_ZWAVE_GetRegion(RAIL_Handle_t railHandle)

RAIL_ZWAVE_RegionId_t

RAIL_ZWAVE_SupportsConcPhy(RAIL_Handle_t railHandle)

bool

RAIL_ZWAVE_SupportsEnergyDetectPhy(RAIL_Handle_t railHandle)

bool

RAIL Library 2.9.2#

No changes

RAIL Library 2.9.1#

No changes

RAIL Library 2.9.0#

Added#

New API Name

Return Value

Comment

RAILCb_ConfigSleepTimerSync(RAIL_TimerSyncConfig_t *timerSyncConfig)

void

RAIL_BLE_ConfigPhyQuuppa(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_BLE_SupportsQuuppa(RAIL_Handle_t railHandle)

bool

RAIL_DeinitPowerManager(void)

RAIL_Status_t

RAIL_GetTxPacketDetailsAlt2(RAIL_Handle_t railHandle, RAIL_TxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetTxTimeFrameEndAlt(RAIL_Handle_t railHandle, RAIL_TxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetTxTimePreambleStartAlt(RAIL_Handle_t railHandle, RAIL_TxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetTxTimeSyncWordEndAlt(RAIL_Handle_t railHandle, RAIL_TxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_InitPowerManager(void)

RAIL_Status_t

RAIL Library 2.8.10#

No changes

RAIL Library 2.8.9#

No changes

RAIL Library 2.8.8#

No changes

RAIL Library 2.8.7#

No changes

RAIL Library 2.8.6#

No changes

RAIL Library 2.8.4#

Added#

New API Name

Return Value

Comment

RAIL_BLE_ConfigAoxAntenna(RAIL_Handle_t railHandle, RAIL_BLE_AoxAntennaConfig_t *antennaConfig)

RAIL_Status_t

RAIL_BLE_InitCte(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL Library 2.8.3#

Added#

New API Name

Return Value

Comment

RAIL_BLE_Supports1Mbps(RAIL_Handle_t railHandle)

bool

RAIL_BLE_Supports1MbpsNonViterbi(RAIL_Handle_t railHandle)

bool

RAIL_BLE_Supports1MbpsViterbi(RAIL_Handle_t railHandle)

bool

RAIL_BLE_Supports2Mbps(RAIL_Handle_t railHandle)

bool

RAIL_BLE_Supports2MbpsNonViterbi(RAIL_Handle_t railHandle)

bool

RAIL_BLE_Supports2MbpsViterbi(RAIL_Handle_t railHandle)

bool

RAIL_BLE_SupportsAntennaSwitching(RAIL_Handle_t railHandle)

bool

RAIL_BLE_SupportsCodedPhy(RAIL_Handle_t railHandle)

bool

RAIL_BLE_SupportsCte(RAIL_Handle_t railHandle)

bool

RAIL_BLE_SupportsIQSampling(RAIL_Handle_t railHandle)

bool

RAIL_BLE_SupportsPhySwitchToRx(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsCancelFramePendingLookup(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsCoexPhy(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsEEnhancedAck(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsEMultipurposeFrames(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsESubsetGB868(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsEarlyFramePendingLookup(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsG4ByteCrc(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsGSubsetGB868(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsGUnwhitenedRx(RAIL_Handle_t railHandle)

bool

RAIL_IEEE802154_SupportsGUnwhitenedTx(RAIL_Handle_t railHandle)

bool

RAIL_Supports2p4GHzBand(RAIL_Handle_t railHandle)

bool

RAIL_SupportsAlternateTxPower(RAIL_Handle_t railHandle)

bool

RAIL_SupportsAntennaDiversity(RAIL_Handle_t railHandle)

bool

RAIL_SupportsChannelHopping(RAIL_Handle_t railHandle)

bool

RAIL_SupportsDualBand(RAIL_Handle_t railHandle)

bool

RAIL_SupportsDualSyncWords(RAIL_Handle_t railHandle)

bool

RAIL_SupportsExternalThermistor(RAIL_Handle_t railHandle)

bool

RAIL_SupportsPrecisionLFRCO(RAIL_Handle_t railHandle)

bool

RAIL_SupportsProtocolBLE(RAIL_Handle_t railHandle)

bool

RAIL_SupportsProtocolIEEE802154(RAIL_Handle_t railHandle)

bool

RAIL_SupportsProtocolZWave(RAIL_Handle_t railHandle)

bool

RAIL_SupportsRadioEntropy(RAIL_Handle_t railHandle)

bool

RAIL_SupportsRfSenseSelectiveOok(RAIL_Handle_t railHandle)

bool

RAIL_SupportsSubGHzBand(RAIL_Handle_t railHandle)

bool

RAIL_SupportsTxPowerMode(RAIL_Handle_t railHandle, RAIL_TxPowerMode_t powerMode, RAIL_TxPowerLevel_t *pMaxPowerLevel)

bool

RAIL_ZWAVE_SupportsRegionPti(RAIL_Handle_t railHandle)

bool

RAIL Library 2.8.2#

No changes

RAIL Library 2.8.1#

Added#

New API Name

Return Value

Comment

RAILCb_PaAutoModeDecision(RAIL_Handle_t railHandle, RAIL_TxPower_t *power, RAIL_TxPowerMode_t *mode, const RAIL_ChannelConfigEntry_t *chCfgEntry)

RAIL_Status_t

RAIL_GetThermistorImpedance(RAIL_Handle_t railHandle, uint32_t *thermistorImpedance)

RAIL_Status_t

RAIL_IEEE802154_ConvertRssiToEd(int8_t rssiDbm)

uint8_t

RAIL_IEEE802154_ConvertRssiToLqi(uint8_t origLqi, int8_t rssiDbm)

uint8_t

RAIL_StartThermistorMeasurement(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_StartTxStreamAlt(RAIL_Handle_t railHandle, uint16_t channel, RAIL_StreamMode_t mode, RAIL_TxOptions_t options)

RAIL_Status_t

RAIL Library 2.8.0#

Added#

New API Name

Return Value

Comment

RAIL_BLE_GetCteSampleRate(RAIL_Handle_t railHandle)

uint32_t

RAIL_ConfigRfSenseSelectiveOokWakeupPhy(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_ConfigSyncWords(RAIL_Handle_t railHandle, const RAIL_SyncWordConfig_t *syncWordConfig)

RAIL_Status_t

RAIL_EnablePaAutoMode(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_GetChannelMetadata(RAIL_Handle_t railHandle, RAIL_ChannelMetadata_t *channelMetadata, uint16_t *length, uint16_t minChannel, uint16_t maxChannel)

RAIL_Status_t

RAIL_GetRxTransitions(RAIL_Handle_t railHandle, RAIL_StateTransitions_t *transitions)

RAIL_Status_t

RAIL_GetSyncWords(RAIL_Handle_t railHandle, RAIL_SyncWordConfig_t *syncWordConfig)

RAIL_Status_t

RAIL_GetTxTransitions(RAIL_Handle_t railHandle, RAIL_StateTransitions_t *transitions)

RAIL_Status_t

RAIL_IsPaAutoModeEnabled(RAIL_Handle_t railHandle)

bool

RAIL_SetRfSenseSelectiveOokWakeupPayload(RAIL_Handle_t railHandle, uint8_t preamble, uint8_t numSyncwordBytes, uint32_t syncword)

RAIL_Status_t

RAIL_StartSelectiveOokRfSense(RAIL_Handle_t railHandle, RAIL_RfSenseSelectiveOokConfig_t *config)

RAIL_Status_t

RAIL_StopInfinitePreambleTx(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_ZWAVE_ConfigBeamRx(RAIL_Handle_t railHandle, RAIL_ZWAVE_BeamRxConfig_t *config)

RAIL_Status_t

RAIL_ZWAVE_ReceiveBeam(RAIL_Handle_t railHandle, uint8_t *beamDetectIndex, const RAIL_SchedulerInfo_t *schedulerInfo)

RAIL_Status_t

Modified#

Old API Name

Return Value

New API Name

Return Value

Comment

RAIL_ZWAVE_ConfigRegion(RAIL_Handle_t railHandle, const RAIL_ZWAVE_RegionConfig_t regionCfg)

RAIL_Status_t

RAIL_ZWAVE_ConfigRegion(RAIL_Handle_t railHandle, const RAIL_ZWAVE_RegionConfig_t *regionCfg)

RAIL_Status_t

RAIL Library 2.7.4#

No changes

RAIL Library 2.7.3#

No changes

RAIL Library 2.7.2#

No changes

RAIL Library 2.7.1#

No changes

RAIL Library 2.7.0#

Added#

New API Name

Return Value

Comment

RAIL_GetRxIncomingPacketInfo(RAIL_Handle_t railHandle, RAIL_RxPacketInfo_t *pPacketInfo)

void

RAIL_IEEE802154_ConfigEOptions(RAIL_Handle_t railHandle, RAIL_IEEE802154_EOptions_t mask, RAIL_IEEE802154_EOptions_t options)

RAIL_Status_t

RAIL_IEEE802154_ConfigGOptions(RAIL_Handle_t railHandle, RAIL_IEEE802154_GOptions_t mask, RAIL_IEEE802154_GOptions_t options)

RAIL_Status_t

RAIL_IEEE802154_EnableDataFramePending(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_IEEE802154_EnableEarlyFramePending(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_IEEE802154_WriteEnhAck(RAIL_Handle_t railHandle, const uint8_t *ackData, uint8_t ackDataLen)

RAIL_Status_t

RAIL_UseDma(uint8_t channel)

RAIL_Status_t

RAIL_ZWAVE_GetTxLowPower(RAIL_Handle_t railHandle)

RAIL_TxPowerLevel_t

RAIL_ZWAVE_GetTxLowPowerDbm(RAIL_Handle_t railHandle)

RAIL_TxPower_t

RAIL_ZWAVE_SetTxLowPower(RAIL_Handle_t railHandle, uint8_t powerLevel)

RAIL_Status_t

RAIL_ZWAVE_SetTxLowPowerDbm(RAIL_Handle_t railHandle, RAIL_TxPower_t powerLevel)

RAIL_Status_t

RAIL Library 2.6.5#

No changes

RAIL Library 2.6.4#

No changes

RAIL Library 2.6.3#

No changes

RAIL Library 2.6.2#

No changes

RAIL Library 2.6.1#

Added#

New API Name

Return Value

Comment

RAIL_GetChannelHoppingRssi(RAIL_Handle_t railHandle, uint8_t channelIndex)

int16_t

RAIL Library 2.6.0#

Added#

New API Name

Return Value

Comment

RAILCb_ConfigFrameTypeLength(RAIL_Handle_t railHandle, const RAIL_FrameType_t *frameType)

void

RAIL_BLE_ConfigAox(RAIL_Handle_t railHandle, const RAIL_BLE_AoxConfig_t *aoxConfig)

RAIL_Status_t

RAIL_BLE_CteBufferIsLocked(RAIL_Handle_t railHandle)

bool

RAIL_BLE_LockCteBuffer(RAIL_Handle_t railHandle, bool lock)

bool

RAIL_BLE_PhySwitchToRx(RAIL_Handle_t railHandle, RAIL_BLE_Phy_t phy, uint16_t railChannel, uint32_t startRxTime, uint32_t crcInit, uint32_t accessAddress, uint16_t logicalChannel, bool disableWhitening)

RAIL_Status_t

RAIL_ConfigRxDutyCycle(RAIL_Handle_t railHandle, const RAIL_RxDutyCycleConfig_t *config)

RAIL_Status_t

RAIL_DelayUs(RAIL_Time_t microseconds)

RAIL_Status_t

RAIL_EnableRxDutyCycle(RAIL_Handle_t railHandle, bool enable)

RAIL_Status_t

RAIL_GetRxTimeFrameEndAlt(RAIL_Handle_t railHandle, RAIL_RxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetRxTimePreambleStartAlt(RAIL_Handle_t railHandle, RAIL_RxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetRxTimeSyncWordEndAlt(RAIL_Handle_t railHandle, RAIL_RxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetTransitionTime(void)

RAIL_Time_t

RAIL_IEEE802154_Config2p4GHzRadioAntDivCoex(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioCoex(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IncludeFrameTypeLength(RAIL_Handle_t railHandle)

void

RAIL_IsInitialized(void)

bool

RAIL_SetTransitionTime(RAIL_Time_t transitionTime)

void

RAIL_ZWAVE_GetBeamChannelIndex(RAIL_Handle_t railHandle, uint8_t *pChannelIndex)

RAIL_Status_t

RAIL Library 2.5.1#

No changes

RAIL Library 2.5.0#

Added#

New API Name

Return Value

Comment

RAIL_ConfigRxChannelHopping(RAIL_Handle_t railHandle, RAIL_RxChannelHoppingConfig_t *config)

RAIL_Status_t

RAIL_ConvertLqi(RAIL_Handle_t railHandle, RAIL_ConvertLqiCallback_t cb)

RAIL_Status_t

RAIL_EnableRxChannelHopping(RAIL_Handle_t railHandle, bool enable, bool reset)

RAIL_Status_t

RAIL_IEEE802154_Config2p4GHzRadioAntDiv(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_SetTxAltPreambleLength(RAIL_Handle_t railHandle, uint16_t length)

RAIL_Status_t

RAIL_VerifyTxPowerCurves(const struct RAIL_TxPowerCurvesConfigAlt *config)

void

RAIL_ZWAVE_ConfigOptions(RAIL_Handle_t railHandle, RAIL_ZWAVE_Options_t mask, RAIL_ZWAVE_Options_t options)

RAIL_Status_t

RAIL_ZWAVE_ConfigRegion(RAIL_Handle_t railHandle, const RAIL_ZWAVE_RegionConfig_t regionCfg)

RAIL_Status_t

RAIL_ZWAVE_Deinit(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_ZWAVE_GetBeamNodeId(RAIL_Handle_t railHandle, RAIL_ZWAVE_NodeId_t *pNodeId)

RAIL_Status_t

RAIL_ZWAVE_Init(RAIL_Handle_t railHandle, const RAIL_ZWAVE_Config_t *config)

RAIL_Status_t

RAIL_ZWAVE_IsEnabled(RAIL_Handle_t railHandle)

bool

RAIL_ZWAVE_SetHomeId(RAIL_Handle_t railHandle, RAIL_ZWAVE_HomeId_t homeId, RAIL_ZWAVE_HomeIdHash_t homeIdHash)

RAIL_Status_t

RAIL_ZWAVE_SetNodeId(RAIL_Handle_t railHandle, RAIL_ZWAVE_NodeId_t nodeId)

RAIL_Status_t

RAIL Library 2.4.1#

No changes

RAIL Library 2.4.0#

Added#

New API Name

Return Value

Comment

PRORTC_IRQHandler(void)

void

RAILCb_SetupRxFifo(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_BLE_CalibrateIr(RAIL_Handle_t railHandle, uint32_t *imageRejection)

RAIL_Status_t

RAIL_GetChannel(RAIL_Handle_t railHandle, uint16_t *channel)

RAIL_Status_t

RAIL_GetRssiOffset(RAIL_Handle_t railHandle)

int8_t

RAIL_GetRxPacketDetailsAlt(RAIL_Handle_t railHandle, RAIL_RxPacketHandle_t packetHandle, RAIL_RxPacketDetails_t *pPacketDetails)

RAIL_Status_t

RAIL_GetRxTimeFrameEnd(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetRxTimePreambleStart(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetRxTimeSyncWordEnd(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetTxPacketDetailsAlt(RAIL_Handle_t railHandle, bool isAck, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetTxTimeFrameEnd(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetTxTimePreambleStart(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_GetTxTimeSyncWordEnd(RAIL_Handle_t railHandle, uint16_t totalPacketBytes, RAIL_Time_t *pPacketTime)

RAIL_Status_t

RAIL_IEEE802154_CalibrateIr2p4Ghz(RAIL_Handle_t railHandle, uint32_t *imageRejection)

RAIL_Status_t

RAIL_IEEE802154_CalibrateIrSubGhz(RAIL_Handle_t railHandle, uint32_t *imageRejection)

RAIL_Status_t

RAIL_IEEE802154_ConfigGB863MHzRadio(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_IEEE802154_ConfigGB915MHzRadio(RAIL_Handle_t railHandle)

RAIL_Status_t

RAIL_PrepareChannel(RAIL_Handle_t railHandle, uint16_t channel)

RAIL_Status_t

RAIL_SetRssiOffset(RAIL_Handle_t railHandle, int8_t rssiOffset)

RAIL_Status_t

RAIL_SetRxFifo(RAIL_Handle_t railHandle, uint8_t *addr, uint16_t *size)

RAIL_Status_t

RAIL_SetTaskPriority(RAIL_Handle_t railHandle, uint8_t priority, RAIL_TaskType_t taskType)

RAIL_Status_t

RAIL_StopTx(RAIL_Handle_t railHandle, RAIL_StopMode_t mode)

RAIL_Status_t