Texas Instruments CC2650DK Benutzerhandbuch

Seite von 1570
Bluetooth Low Energy
Table 23-113. PDU Types for Different Advertiser Commands
Command
Type of Advertising Packet
Value of PDU Type Bits in Header
CMD_BLE_ADV
ADV_IND
0000b
CMD_BLE_ADV_DIR
ADV_DIRECT_IND
0001b
CMD_BLE_ADV_NC
ADV_NONCONN_IND
0010b
CMD_BLE_ADV_SCAN
ADV_SCAN_IND
0110b
Except when an advertiser is not connectable, the receiver starts after the ADV*_IND packet has been
transmitted. Depending on the type of advertiser operation, the receiver listens for a SCAN_REQ or a
CONNECT_REQ. If the demodulator obtains sync, the header is checked once it is received, and if it is
not a SCAN_REQ or CONNECT_REQ message, the demodulator is stopped immediately.
A SCAN_REQ or CONNECT_REQ message is received into the RX queue given by pParams ->pRXQ, as
described in , Receive Buffers. The bCrcErr and bIgnore bits are set according to the CRC result and the
received message. For connectable undirected or scannable advertising, the AdvA field in the message,
along with the TXAdd bit of the received header, is compared to the pParams->pDeviceAddress array and
the pParams->advConfig.deviceAddrType bit, respectively, to see if the message was addressed to this
advertiser. Then, depending on the advertising filter policy, given by pParams->advConfig.advFilterPolicy,
the received ScanA or InitA field, along with the RXAdd bit of the received header, is checked against the
white list as described in
White List Processing, except for a directed advertiser, where
the received header is compared against the peer address as described in
Connectable Directed Advertiser Command. Depending on this, the actions taken are as given in
, where the definition of each action, including the value used on bCrcErr and bIgnore, is
given in
If pParams->advConfig.bStrictLenFilter is 1, only length fields that are compliant
with the BLE specification are considered valid. For a SCAN_REQ, that means a length field of 12, and for
a CONNECT_REQ it means a length field of 34. If pParams ->advConfig.bStrictLenFilter is 0, all received
packets with a length field less than or equal to the maximum length of an advertiser packet (37, but can
be overridden) are considered valid. If the length is not valid, the receiver is stopped.
Table 23-114. Actions to Take Based on Received Packets for Advertisers
(1)
AdvA
ScanA or
Advertiser
Action
PDU Type
CRC Result
Valid Length
Matches Own
Filter Policy
InitA Present
Type
Number
Address
in White List
SCAN_REQ
OK
C, S
Yes
No
X
X
1
SCAN_REQ
OK
C, S
Yes
Yes
1 or 3
No
1
SCAN_REQ
OK
C, S
Yes
Yes
1 or 3
Yes
2
SCAN_REQ
OK
C, S
Yes
Yes
0 or 2
X
2
SCAN_REQ
NOK
C, S
Yes
X
X
X
3
SCAN_REQ
X
C, S
No
X
X
X
5
SCAN_REQ
X
D
X
X
X
X
5
CONNECT_REQ
OK
C, D
Yes
No
X
X
1
CONNECT_REQ
OK
C, D
Yes
Yes
2 or 3
No
1
CONNECT_REQ
OK
C, D
Yes
Yes
2 or 3
Yes
4
CONNECT_REQ
OK
C, D
Yes
Yes
0 or 1
X
4
CONNECT_REQ
NOK
C, D
Yes
X
X
X
3
CONNECT_REQ
X
C, D
No
X
X
X
5
CONNECT_REQ
X
S
X
X
X
X
5
Other
X
X
X
N/A
X
N/A
5
No packet received
N/A
X
N/A
N/A
X
N/A
5
(1)
C – connectable undirected; D – connectable directed; S – scannable; X – do not care; N/A – not applicable
1532
Radio
SWCU117A – February 2015 – Revised March 2015
Copyright © 2015, Texas Instruments Incorporated