CC26xx Driver Library
rfc_CMD_IEEE_RX_s Struct Reference

IEEE 802.15.4 Receive Command. More...

#include <rf_ieee_cmd.h>

Data Fields

uint16_t commandNo
 The command ID number 0x2801. More...
 
uint16_t status
 An integer telling the status of the command. This value is updated by the radio CPU during operation and may be read by the system CPU at any time. More...
 
rfc_radioOp_tpNextOp
 Pointer to the next operation to run after this operation is done. More...
 
ratmr_t startTime
 Absolute or relative start time (depending on the value of startTrigger) More...
 
struct {
   uint8_t   triggerType:4
 The type of trigger. More...
 
   uint8_t   bEnaCmd:1
 0: No alternative trigger command
1: CMD_TRIGGER can be used as an alternative trigger More...
 
   uint8_t   triggerNo:2
 The trigger number of the CMD_TRIGGER command that triggers this action. More...
 
   uint8_t   pastTrig:1
 0: A trigger in the past is never triggered, or for start of commands, give an error
1: A trigger in the past is triggered as soon as possible More...
 
startTrigger
 Identification of the trigger that starts the operation. More...
 
struct {
   uint8_t   rule:4
 Condition for running next command: Rule for how to proceed. More...
 
   uint8_t   nSkip:4
 Number of skips + 1 if the rule involves skipping. 0: same, 1: next, 2: skip next, ... More...
 
condition
 
uint8_t channel
 Channel to tune to in the start of the operation
0: Use existing channel
11–26: Use as IEEE 802.15.4 channel, i.e. frequency is (2405 + 5 × (channel - 11)) MHz
60–207: Frequency is (2300 + channel) MHz
Others: Reserved More...
 
struct {
   uint8_t   bAutoFlushCrc:1
 If 1, automatically remove packets with CRC error from Rx queue. More...
 
   uint8_t   bAutoFlushIgn:1
 If 1, automatically remove packets that can be ignored according to frame filtering from Rx queue. More...
 
   uint8_t   bIncludePhyHdr:1
 If 1, include the received PHY header field in the stored packet; otherwise discard it. More...
 
   uint8_t   bIncludeCrc:1
 If 1, include the received CRC field in the stored packet; otherwise discard it. More...
 
   uint8_t   bAppendRssi:1
 If 1, append an RSSI byte to the packet in the Rx queue. More...
 
   uint8_t   bAppendCorrCrc:1
 If 1, append a correlation value and CRC result byte to the packet in the Rx queue. More...
 
   uint8_t   bAppendSrcInd:1
 If 1, append an index from the source matching algorithm. More...
 
   uint8_t   bAppendTimestamp:1
 If 1, append a timestamp to the packet in the Rx queue. More...
 
rxConfig
 
dataQueue_tpRxQ
 Pointer to receive queue. More...
 
rfc_ieeeRxOutput_tpOutput
 Pointer to output structure (NULL: Do not store results) More...
 
struct {
   uint16_t   frameFiltEn:1
 0: Disable frame filtering
1: Enable frame filtering More...
 
   uint16_t   frameFiltStop:1
 0: Receive all packets to the end
1: Stop receiving frame once frame filtering has caused the frame to be rejected. More...
 
   uint16_t   autoAckEn:1
 0: Disable auto ACK
1: Enable auto ACK. More...
 
   uint16_t   slottedAckEn:1
 0: Non-slotted ACK
1: Slotted ACK. More...
 
   uint16_t   autoPendEn:1
 0: Auto-pend disabled
1: Auto-pend enabled More...
 
   uint16_t   defaultPend:1
 The value of the pending data bit in auto ACK packets that are not subject to auto-pend. More...
 
   uint16_t   bPendDataReqOnly:1
 0: Use auto-pend for any packet
1: Use auto-pend for data request packets only More...
 
   uint16_t   bPanCoord:1
 0: Device is not PAN coordinator
1: Device is PAN coordinator More...
 
   uint16_t   maxFrameVersion:2
 Reject frames where the frame version field in the FCF is greater than this value. More...
 
   uint16_t   fcfReservedMask:3
 Value to be AND-ed with the reserved part of the FCF; frame rejected if result is non-zero. More...
 
   uint16_t   modifyFtFilter:2
 Treatment of MSB of frame type field before frame-type filtering:
0: No modification
1: Invert MSB
2: Set MSB to 0
3: Set MSB to 1. More...
 
   uint16_t   bStrictLenFilter:1
 0: Accept acknowledgement frames of any length >= 5
1: Accept only acknowledgement frames of length 5 More...
 
frameFiltOpt
 Frame filtering options. More...
 
struct {
   uint8_t   bAcceptFt0Beacon:1
 Treatment of frames with frame type 000 (beacon):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt1Data:1
 Treatment of frames with frame type 001 (data):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt2Ack:1
 Treatment of frames with frame type 010 (ACK):
0: Reject, unless running ACK receive command
1: Always accept. More...
 
   uint8_t   bAcceptFt3MacCmd:1
 Treatment of frames with frame type 011 (MAC command):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt4Reserved:1
 Treatment of frames with frame type 100 (reserved):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt5Reserved:1
 Treatment of frames with frame type 101 (reserved):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt6Reserved:1
 Treatment of frames with frame type 110 (reserved):
0: Reject
1: Accept. More...
 
   uint8_t   bAcceptFt7Reserved:1
 Treatment of frames with frame type 111 (reserved):
0: Reject
1: Accept. More...
 
frameTypes
 Frame types to receive in frame filtering. More...
 
struct {
   uint8_t   ccaEnEnergy:1
 Enable energy scan as CCA source. More...
 
   uint8_t   ccaEnCorr:1
 Enable correlator based carrier sense as CCA source. More...
 
   uint8_t   ccaEnSync:1
 Enable sync found based carrier sense as CCA source. More...
 
   uint8_t   ccaCorrOp:1
 Operator to use between energy based and correlator based CCA
0: Report busy channel if either ccaEnergy or ccaCorr are busy
1: Report busy channel if both ccaEnergy and ccaCorr are busy. More...
 
   uint8_t   ccaSyncOp:1
 Operator to use between sync found based CCA and the others
0: Always report busy channel if ccaSync is busy
1: Always report idle channel if ccaSync is idle. More...
 
   uint8_t   ccaCorrThr:2
 Threshold for number of correlation peaks in correlator based carrier sense. More...
 
ccaOpt
 CCA options. More...
 
int8_t ccaRssiThr
 RSSI threshold for CCA. More...
 
uint8_t __dummy0
 
uint8_t numExtEntries
 Number of extended address entries. More...
 
uint8_t numShortEntries
 Number of short address entries. More...
 
uint32_t * pExtEntryList
 Pointer to list of extended address entries. More...
 
uint32_t * pShortEntryList
 Pointer to list of short address entries. More...
 
uint64_t localExtAddr
 The extended address of the local device. More...
 
uint16_t localShortAddr
 The short address of the local device. More...
 
uint16_t localPanID
 The PAN ID of the local device. More...
 
uint16_t __dummy1
 
uint8_t __dummy2
 
struct {
   uint8_t   triggerType:4
 The type of trigger. More...
 
   uint8_t   bEnaCmd:1
 0: No alternative trigger command
1: CMD_TRIGGER can be used as an alternative trigger More...
 
   uint8_t   triggerNo:2
 The trigger number of the CMD_TRIGGER command that triggers this action. More...
 
   uint8_t   pastTrig:1
 0: A trigger in the past is never triggered, or for start of commands, give an error
1: A trigger in the past is triggered as soon as possible More...
 
endTrigger
 Trigger that causes the device to end the Rx operation. More...
 
ratmr_t endTime
 Time used together with endTrigger that causes the device to end the Rx operation. More...
 

Detailed Description

IEEE 802.15.4 Receive Command.

Field Documentation

uint8_t rfc_CMD_IEEE_RX_s::__dummy0
uint16_t rfc_CMD_IEEE_RX_s::__dummy1
uint8_t rfc_CMD_IEEE_RX_s::__dummy2
uint16_t rfc_CMD_IEEE_RX_s::autoAckEn

0: Disable auto ACK
1: Enable auto ACK.

uint16_t rfc_CMD_IEEE_RX_s::autoPendEn

0: Auto-pend disabled
1: Auto-pend enabled

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt0Beacon

Treatment of frames with frame type 000 (beacon):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt1Data

Treatment of frames with frame type 001 (data):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt2Ack

Treatment of frames with frame type 010 (ACK):
0: Reject, unless running ACK receive command
1: Always accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt3MacCmd

Treatment of frames with frame type 011 (MAC command):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt4Reserved

Treatment of frames with frame type 100 (reserved):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt5Reserved

Treatment of frames with frame type 101 (reserved):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt6Reserved

Treatment of frames with frame type 110 (reserved):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAcceptFt7Reserved

Treatment of frames with frame type 111 (reserved):
0: Reject
1: Accept.

uint8_t rfc_CMD_IEEE_RX_s::bAppendCorrCrc

If 1, append a correlation value and CRC result byte to the packet in the Rx queue.

uint8_t rfc_CMD_IEEE_RX_s::bAppendRssi

If 1, append an RSSI byte to the packet in the Rx queue.

uint8_t rfc_CMD_IEEE_RX_s::bAppendSrcInd

If 1, append an index from the source matching algorithm.

uint8_t rfc_CMD_IEEE_RX_s::bAppendTimestamp

If 1, append a timestamp to the packet in the Rx queue.

uint8_t rfc_CMD_IEEE_RX_s::bAutoFlushCrc

If 1, automatically remove packets with CRC error from Rx queue.

uint8_t rfc_CMD_IEEE_RX_s::bAutoFlushIgn

If 1, automatically remove packets that can be ignored according to frame filtering from Rx queue.

uint8_t rfc_CMD_IEEE_RX_s::bEnaCmd

0: No alternative trigger command
1: CMD_TRIGGER can be used as an alternative trigger

uint8_t rfc_CMD_IEEE_RX_s::bIncludeCrc

If 1, include the received CRC field in the stored packet; otherwise discard it.

uint8_t rfc_CMD_IEEE_RX_s::bIncludePhyHdr

If 1, include the received PHY header field in the stored packet; otherwise discard it.

uint16_t rfc_CMD_IEEE_RX_s::bPanCoord

0: Device is not PAN coordinator
1: Device is PAN coordinator

uint16_t rfc_CMD_IEEE_RX_s::bPendDataReqOnly

0: Use auto-pend for any packet
1: Use auto-pend for data request packets only

uint16_t rfc_CMD_IEEE_RX_s::bStrictLenFilter

0: Accept acknowledgement frames of any length >= 5
1: Accept only acknowledgement frames of length 5

uint8_t rfc_CMD_IEEE_RX_s::ccaCorrOp

Operator to use between energy based and correlator based CCA
0: Report busy channel if either ccaEnergy or ccaCorr are busy
1: Report busy channel if both ccaEnergy and ccaCorr are busy.

uint8_t rfc_CMD_IEEE_RX_s::ccaCorrThr

Threshold for number of correlation peaks in correlator based carrier sense.

uint8_t rfc_CMD_IEEE_RX_s::ccaEnCorr

Enable correlator based carrier sense as CCA source.

uint8_t rfc_CMD_IEEE_RX_s::ccaEnEnergy

Enable energy scan as CCA source.

uint8_t rfc_CMD_IEEE_RX_s::ccaEnSync

Enable sync found based carrier sense as CCA source.

struct { ... } rfc_CMD_IEEE_RX_s::ccaOpt

CCA options.

int8_t rfc_CMD_IEEE_RX_s::ccaRssiThr

RSSI threshold for CCA.

uint8_t rfc_CMD_IEEE_RX_s::ccaSyncOp

Operator to use between sync found based CCA and the others
0: Always report busy channel if ccaSync is busy
1: Always report idle channel if ccaSync is idle.

uint8_t rfc_CMD_IEEE_RX_s::channel

Channel to tune to in the start of the operation
0: Use existing channel
11–26: Use as IEEE 802.15.4 channel, i.e. frequency is (2405 + 5 × (channel - 11)) MHz
60–207: Frequency is (2300 + channel) MHz
Others: Reserved

uint16_t rfc_CMD_IEEE_RX_s::commandNo

The command ID number 0x2801.

struct { ... } rfc_CMD_IEEE_RX_s::condition
uint16_t rfc_CMD_IEEE_RX_s::defaultPend

The value of the pending data bit in auto ACK packets that are not subject to auto-pend.

ratmr_t rfc_CMD_IEEE_RX_s::endTime

Time used together with endTrigger that causes the device to end the Rx operation.

struct { ... } rfc_CMD_IEEE_RX_s::endTrigger

Trigger that causes the device to end the Rx operation.

uint16_t rfc_CMD_IEEE_RX_s::fcfReservedMask

Value to be AND-ed with the reserved part of the FCF; frame rejected if result is non-zero.

uint16_t rfc_CMD_IEEE_RX_s::frameFiltEn

0: Disable frame filtering
1: Enable frame filtering

struct { ... } rfc_CMD_IEEE_RX_s::frameFiltOpt

Frame filtering options.

uint16_t rfc_CMD_IEEE_RX_s::frameFiltStop

0: Receive all packets to the end
1: Stop receiving frame once frame filtering has caused the frame to be rejected.

struct { ... } rfc_CMD_IEEE_RX_s::frameTypes

Frame types to receive in frame filtering.

uint64_t rfc_CMD_IEEE_RX_s::localExtAddr

The extended address of the local device.

uint16_t rfc_CMD_IEEE_RX_s::localPanID

The PAN ID of the local device.

uint16_t rfc_CMD_IEEE_RX_s::localShortAddr

The short address of the local device.

uint16_t rfc_CMD_IEEE_RX_s::maxFrameVersion

Reject frames where the frame version field in the FCF is greater than this value.

uint16_t rfc_CMD_IEEE_RX_s::modifyFtFilter

Treatment of MSB of frame type field before frame-type filtering:
0: No modification
1: Invert MSB
2: Set MSB to 0
3: Set MSB to 1.

uint8_t rfc_CMD_IEEE_RX_s::nSkip

Number of skips + 1 if the rule involves skipping. 0: same, 1: next, 2: skip next, ...

uint8_t rfc_CMD_IEEE_RX_s::numExtEntries

Number of extended address entries.

uint8_t rfc_CMD_IEEE_RX_s::numShortEntries

Number of short address entries.

uint8_t rfc_CMD_IEEE_RX_s::pastTrig

0: A trigger in the past is never triggered, or for start of commands, give an error
1: A trigger in the past is triggered as soon as possible

uint32_t* rfc_CMD_IEEE_RX_s::pExtEntryList

Pointer to list of extended address entries.

rfc_radioOp_t* rfc_CMD_IEEE_RX_s::pNextOp

Pointer to the next operation to run after this operation is done.

rfc_ieeeRxOutput_t* rfc_CMD_IEEE_RX_s::pOutput

Pointer to output structure (NULL: Do not store results)

dataQueue_t* rfc_CMD_IEEE_RX_s::pRxQ

Pointer to receive queue.

uint32_t* rfc_CMD_IEEE_RX_s::pShortEntryList

Pointer to list of short address entries.

uint8_t rfc_CMD_IEEE_RX_s::rule

Condition for running next command: Rule for how to proceed.

struct { ... } rfc_CMD_IEEE_RX_s::rxConfig
uint16_t rfc_CMD_IEEE_RX_s::slottedAckEn

0: Non-slotted ACK
1: Slotted ACK.

ratmr_t rfc_CMD_IEEE_RX_s::startTime

Absolute or relative start time (depending on the value of startTrigger)

struct { ... } rfc_CMD_IEEE_RX_s::startTrigger

Identification of the trigger that starts the operation.

uint16_t rfc_CMD_IEEE_RX_s::status

An integer telling the status of the command. This value is updated by the radio CPU during operation and may be read by the system CPU at any time.

uint8_t rfc_CMD_IEEE_RX_s::triggerNo

The trigger number of the CMD_TRIGGER command that triggers this action.

uint8_t rfc_CMD_IEEE_RX_s::triggerType

The type of trigger.