User manual

Bluetooth Low Energy
www.ti.com
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 Section 23.6.4.9, White List Processing, except for a directed advertiser, where
the received header is compared against the peer address as described in Section 23.6.4.4.2,
Connectable Directed Advertiser Command. Depending on this, the actions taken are as given in
Table 23-114, where the definition of each action, including the value used on bCrcErr and bIgnore, is
given in Table 23-115. 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 SWCU117AFebruary 2015Revised March 2015
Submit Documentation Feedback
Copyright © 2015, Texas Instruments Incorporated