RAIL_RxPacketDetails_t Struct Reference

Received packet details obtained via RAIL_GetRxPacketDetails() or RAIL_GetRxPacketDetailsAlt().

#include <rail_types.h>

Data Fields

RAIL_PacketTimeStamp_t timeReceived
 The timestamp of the received packet in the RAIL timebase.
 
bool crcPassed
 Indicates whether the CRC passed or failed for the received packet.
 
bool isAck
 Indicates whether the received packet is an ACK.
 
int8_t rssi
 RSSI of the received packet in integer dBm.
 
uint8_t lqi
 The link quality indicator of the received packet.
 
uint8_t syncWordId
 For radios and PHY configurations that support multiple sync words, this number is the ID of the sync word that was used for this packet.
 
uint8_t subPhyId
 In configurations where the radio has the option of receiving a given packet in multiple ways, indicates which of the sub-PHY options was used to receive the packet.
 
uint8_t antennaId
 For Antenna Control configurations where the device has multiple antennas, this indicates which antenna received the packet.
 
uint8_t channelHoppingChannelIndex
 When channel hopping is enabled, this field will contain the index of the channel in RAIL_RxChannelHoppingConfig_t::entries on which this packet was received, or a sentinel value.

Received packet details obtained via RAIL_GetRxPacketDetails() or RAIL_GetRxPacketDetailsAlt().

Note
Certain details are always available, while others are only available if the RAIL_RxOptions_t RAIL_RX_OPTION_REMOVE_APPENDED_INFO option is not in effect and the received packet's RAIL_RxPacketStatus_t is among the RAIL_RX_PACKET_READY_ set. Each detail's description indicates its availability.

Definition at line 2274 of file rail_types.h.

Field Documentation

uint8_t RAIL_RxPacketDetails_t::antennaId

For Antenna Control configurations where the device has multiple antennas, this indicates which antenna received the packet.

When there is only one antenna, this will be set to the default of 0. It is always available.

Definition at line 2327 of file rail_types.h.

uint8_t RAIL_RxPacketDetails_t::channelHoppingChannelIndex

When channel hopping is enabled, this field will contain the index of the channel in RAIL_RxChannelHoppingConfig_t::entries on which this packet was received, or a sentinel value.

On EFR32XG1 parts, on which channel hopping is not supported, this value is still part of the structure, but will be a meaningless value.

Definition at line 2335 of file rail_types.h.

bool RAIL_RxPacketDetails_t::crcPassed

Indicates whether the CRC passed or failed for the received packet.

It is true for RAIL_RX_PACKET_READY_SUCCESS packets and false for all others. It is always available.

Definition at line 2286 of file rail_types.h.

bool RAIL_RxPacketDetails_t::isAck

Indicates whether the received packet is an ACK.

An 'ACK' is defined as a packet received during the RX ACK window when auto ACK is enabled. Set to 0 if not an ACK, and 1 for an ACK. It is always 0 if auto ACK is not enabled. It is always available.

Definition at line 2294 of file rail_types.h.

uint8_t RAIL_RxPacketDetails_t::lqi

The link quality indicator of the received packet.

It is calculated as the average correlation for the first 8 symbols in a frame. When not available it will be 0.

Definition at line 2306 of file rail_types.h.

int8_t RAIL_RxPacketDetails_t::rssi

RSSI of the received packet in integer dBm.

It is latched when the sync word is detected for the packet. When not available it will be RAIL_RSSI_INVALID_DBM.

Definition at line 2300 of file rail_types.h.

uint8_t RAIL_RxPacketDetails_t::subPhyId

In configurations where the radio has the option of receiving a given packet in multiple ways, indicates which of the sub-PHY options was used to receive the packet.

Most radio configurations do not have this ability and the subPhy is set to 0. It is always available.

Definition at line 2320 of file rail_types.h.

uint8_t RAIL_RxPacketDetails_t::syncWordId

For radios and PHY configurations that support multiple sync words, this number is the ID of the sync word that was used for this packet.

It is always available.

Definition at line 2312 of file rail_types.h.

RAIL_PacketTimeStamp_t RAIL_RxPacketDetails_t::timeReceived

The timestamp of the received packet in the RAIL timebase.

When not available it will be RAIL_PACKET_TIME_INVALID.

Definition at line 2279 of file rail_types.h.


The documentation for this struct was generated from the following file:
  • common/rail_types.h