Features

Overview of support for various features across hardware platforms.

Macros

#define RAIL_FEAT_DUAL_BAND_RADIO
 Boolean to indicate whether the selected chip supports both SubGHz and 2.4 GHz bands.
 
#define RAIL_FEAT_SUBGIG_RADIO
 Boolean to indicate whether the selected chip supports SubGHz bands.
 
#define RAIL_FEAT_2G4_RADIO
 Boolean to indicate whether the selected chip supports the 2.4 GHz band.
 
#define RAIL_FEAT_ANTENNA_DIVERSITY   ((_SILICON_LABS_32B_SERIES_1_CONFIG >= 2) || (_SILICON_LABS_32B_SERIES == 2))
 Boolean to indicate whether the selected chip supports antenna diversity.
 
#define RAIL_FEAT_ZWAVE_SUPPORTED   ((_SILICON_LABS_32B_SERIES_1_CONFIG >= 3) && (RAIL_FEAT_SUBGIG_RADIO))
 Boolean to indicate whether the selected chip supports Z-Wave.
 
#define RAIL_FEAT_CHANNEL_HOPPING   ((_SILICON_LABS_32B_SERIES_1_CONFIG >= 2) || (_SILICON_LABS_32B_SERIES_2_CONFIG >= 1))
 Boolean to indicate whether the selected chip supports channel hopping.
 
#define RAIL_FEAT_BLE_CODED
 Boolean to indicate whether the selected chip supports the BLE coded PHY.
 
#define RAIL_FEAT_BLE_PHY_SWITCH_TO_RX   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)
 Boolean to indicate whether the selected chip supports BLE PHY switch to RX functionality, which is used to switch BLE PHYs at a specific time to receive auxiliary packets.
 
#define RAIL_FEAT_802154_COEX_PHY   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)
 Boolean to indicate whether the selected chip supports the 802.15.4 Wi-Fi Coexistence PHY.
 
#define RAIL_FEAT_BLE_AOX_SUPPORTED
 Boolean to indicate whether the selected chip supports BLE Angle-of-Arrival/Departure features.
 
#define RAIL_FEAT_IEEE802154_E_GB868_SUPPORTED   1
 Boolean to indicate whether the selected chip supports IEEE 802.15.4E-2012 feature subset needed for Zigbee R22 GB868.
 
#define RAIL_FEAT_IEEE802154_E_ENH_ACK_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)
 Boolean to indicate whether the selected chip supports IEEE 802.15.4E-2012 Enhanced ACKing.
 
#define RAIL_FEAT_IEEE802154_G_GB868_SUPPORTED   (RAIL_FEAT_SUBGIG_RADIO)
 Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 feature subset needed for Zigbee R22 GB868.
 
#define RAIL_FEAT_IEEE802154_G_UNWHITENED_RX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)
 Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 reception of unwhitened frames.
 
#define RAIL_FEAT_IEEE802154_G_UNWHITENED_TX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)
 Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 transmission of unwhitened frames.
 
#define RAIL_FEAT_IEEE802154_G_4BYTE_CRC_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)
 Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 reception and transmission of frames with 4-byte CRC.
 
#define RAIL_FEAT_IEEE802154_CANCEL_FP_LOOKUP_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)
 Boolean to indicate whether the selected chip supports canceling the frame-pending lookup event RAIL_EVENT_IEEE802154_DATA_REQUEST_COMMAND when the radio transitions to a state that renders the the reporting of this event moot (i.e.
 
#define RAIL_FEAT_IEEE802154_EARLY_FP_LOOKUP_SUPPORTED   1
 Boolean to indicate whether the selected chip supports early triggering of the frame-pending lookup event RAIL_EVENT_IEEE802154_DATA_REQUEST_COMMAND just after MAC address fields have been received.
 
#define RAIL_FEAT_IEEE802154_MULTIPURPOSE_FRAME_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)
 Boolean to indicate whether the selected chip supports receiving IEEE 802.15.4E-2012 MultiPurpose frames.
 
#define RAIL_FEAT_ALTERNATE_POWER_TX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)
 Boolean to indicate whether the selected chip supports alternate power settings for the Power Amplifier.
 
#define RAIL_FEAT_RFSENSE_SELECTIVE_OOK_MODE_SUPPORTED   (_SILICON_LABS_32B_SERIES_2_CONFIG == 2)
 Boolean to indicate whether the selected chip supports RFSENSE Selective(OOK) Mode.
 
#define RAIL_FEAT_ZWAVE_REGION_PTI   1
 Boolean to indicate whether the code supports Z-Wave region information in PTI and newer RAIL_ZWAVE_RegionConfig_t structure.

Detailed Description

Overview of support for various features across hardware platforms.

These defines can be used at compile time to determine which features are available on your platform. However, keep in mind that these defines hold true for chip families. Your specific part may have further restrictions (band limitations, power amplifier restrictions, and so on) on top of those listed below. In general, an attempt to call an API that is not supported on your chip family as listed below will result in a RAIL_STATUS_INVALID_CALL.

Macro Definition Documentation

◆ RAIL_FEAT_2G4_RADIO

#define RAIL_FEAT_2G4_RADIO
Value:
(((_SILICON_LABS_EFR32_RADIO_TYPE == _SILICON_LABS_EFR32_RADIO_DUALBAND) \
|| (_SILICON_LABS_EFR32_RADIO_TYPE == _SILICON_LABS_EFR32_RADIO_2G4HZ)) \
|| (FEAT_RF_2G4 == 1))

Boolean to indicate whether the selected chip supports the 2.4 GHz band.

Definition at line 74 of file rail_features.h.

◆ RAIL_FEAT_802154_COEX_PHY

#define RAIL_FEAT_802154_COEX_PHY   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)

Boolean to indicate whether the selected chip supports the 802.15.4 Wi-Fi Coexistence PHY.

Definition at line 103 of file rail_features.h.

◆ RAIL_FEAT_ALTERNATE_POWER_TX_SUPPORTED

#define RAIL_FEAT_ALTERNATE_POWER_TX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)

Boolean to indicate whether the selected chip supports alternate power settings for the Power Amplifier.

Definition at line 168 of file rail_features.h.

◆ RAIL_FEAT_BLE_AOX_SUPPORTED

#define RAIL_FEAT_BLE_AOX_SUPPORTED
Value:
((_SILICON_LABS_32B_SERIES_1_CONFIG == 3 || _SILICON_LABS_32B_SERIES_2_CONFIG == 2) \
#define RAIL_FEAT_2G4_RADIO
Boolean to indicate whether the selected chip supports the 2.4 GHz band.
Definition: rail_features.h:74

Boolean to indicate whether the selected chip supports BLE Angle-of-Arrival/Departure features.

Definition at line 108 of file rail_features.h.

◆ RAIL_FEAT_BLE_CODED

#define RAIL_FEAT_BLE_CODED
Value:
((_SILICON_LABS_32B_SERIES_1_CONFIG == 3) \
|| (_SILICON_LABS_32B_SERIES_2_CONFIG == 1))

Boolean to indicate whether the selected chip supports the BLE coded PHY.

Definition at line 92 of file rail_features.h.

◆ RAIL_FEAT_BLE_PHY_SWITCH_TO_RX

#define RAIL_FEAT_BLE_PHY_SWITCH_TO_RX   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)

Boolean to indicate whether the selected chip supports BLE PHY switch to RX functionality, which is used to switch BLE PHYs at a specific time to receive auxiliary packets.

Definition at line 99 of file rail_features.h.

◆ RAIL_FEAT_DUAL_BAND_RADIO

#define RAIL_FEAT_DUAL_BAND_RADIO
Value:
((_SILICON_LABS_EFR32_RADIO_TYPE == _SILICON_LABS_EFR32_RADIO_DUALBAND) \
|| ((FEAT_RF_2G4 == 1) && (FEAT_RF_SUBG == 1)))

Boolean to indicate whether the selected chip supports both SubGHz and 2.4 GHz bands.

Definition at line 63 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_CANCEL_FP_LOOKUP_SUPPORTED

#define RAIL_FEAT_IEEE802154_CANCEL_FP_LOOKUP_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)

Boolean to indicate whether the selected chip supports canceling the frame-pending lookup event RAIL_EVENT_IEEE802154_DATA_REQUEST_COMMAND when the radio transitions to a state that renders the the reporting of this event moot (i.e.

too late for the stack to influence the outgoing ACK).

Definition at line 152 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_E_ENH_ACK_SUPPORTED

#define RAIL_FEAT_IEEE802154_E_ENH_ACK_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)

Boolean to indicate whether the selected chip supports IEEE 802.15.4E-2012 Enhanced ACKing.

Definition at line 122 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_E_GB868_SUPPORTED

#define RAIL_FEAT_IEEE802154_E_GB868_SUPPORTED   1

Boolean to indicate whether the selected chip supports IEEE 802.15.4E-2012 feature subset needed for Zigbee R22 GB868.

Definition at line 118 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_EARLY_FP_LOOKUP_SUPPORTED

#define RAIL_FEAT_IEEE802154_EARLY_FP_LOOKUP_SUPPORTED   1

Boolean to indicate whether the selected chip supports early triggering of the frame-pending lookup event RAIL_EVENT_IEEE802154_DATA_REQUEST_COMMAND just after MAC address fields have been received.

Definition at line 159 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_G_4BYTE_CRC_SUPPORTED

#define RAIL_FEAT_IEEE802154_G_4BYTE_CRC_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)

Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 reception and transmission of frames with 4-byte CRC.

Definition at line 143 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_G_GB868_SUPPORTED

#define RAIL_FEAT_IEEE802154_G_GB868_SUPPORTED   (RAIL_FEAT_SUBGIG_RADIO)

Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 feature subset needed for Zigbee R22 GB868.

Definition at line 127 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_G_UNWHITENED_RX_SUPPORTED

#define RAIL_FEAT_IEEE802154_G_UNWHITENED_RX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)

Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 reception of unwhitened frames.

Definition at line 132 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_G_UNWHITENED_TX_SUPPORTED

#define RAIL_FEAT_IEEE802154_G_UNWHITENED_TX_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG > 1)

Boolean to indicate whether the selected chip supports IEEE 802.15.4G-2012 transmission of unwhitened frames.

Definition at line 137 of file rail_features.h.

◆ RAIL_FEAT_IEEE802154_MULTIPURPOSE_FRAME_SUPPORTED

#define RAIL_FEAT_IEEE802154_MULTIPURPOSE_FRAME_SUPPORTED   (_SILICON_LABS_32B_SERIES_1_CONFIG != 1)

Boolean to indicate whether the selected chip supports receiving IEEE 802.15.4E-2012 MultiPurpose frames.

Definition at line 163 of file rail_features.h.

◆ RAIL_FEAT_RFSENSE_SELECTIVE_OOK_MODE_SUPPORTED

#define RAIL_FEAT_RFSENSE_SELECTIVE_OOK_MODE_SUPPORTED   (_SILICON_LABS_32B_SERIES_2_CONFIG == 2)

Boolean to indicate whether the selected chip supports RFSENSE Selective(OOK) Mode.

Definition at line 173 of file rail_features.h.

◆ RAIL_FEAT_SUBGIG_RADIO

#define RAIL_FEAT_SUBGIG_RADIO
Value:
(((_SILICON_LABS_EFR32_RADIO_TYPE == _SILICON_LABS_EFR32_RADIO_DUALBAND) \
|| (_SILICON_LABS_EFR32_RADIO_TYPE == _SILICON_LABS_EFR32_RADIO_SUBGHZ)) \
|| (FEAT_RF_SUBG == 1))

Boolean to indicate whether the selected chip supports SubGHz bands.

Definition at line 68 of file rail_features.h.