API Changes

RAIL Library 2.8.3

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