SWCU185G January 2018 – June 2024 CC1312PSIP , CC1312R , CC1352P , CC1352R , CC2642R , CC2642R-Q1 , CC2652P , CC2652PSIP , CC2652R , CC2652RB , CC2652RSIP , CC2662R-Q1
At the start of an extended or secondary channel advertiser, the radio CPU shall wait for the start trigger. It shall then program the frequency based on the channel parameter of the command structure. The channel parameter must indicate the correct type of advertiser channel, so it must be 37, 38, or 39 for extended advertiser and in the range 0–36 for the secondary channel advertiser. The radio CPU shall also set up the PHY mode given in phyMode.mainMode. Furthermore, it shall set up the advertising channel access address and use the CRC initialization value 0x55 5555. The whitener shall be set up as defined in the whitening parameter. The radio CPU shall then configure the transmitter. For the secondary channel advertiser, the operation will go on with reception after transmission if the transmitted packet is scannable or connectable, and if a request packet is received, transmission of a response packet may follow.
In Bluetooth low energy, advertising is usually done over all three primary advertising channels, followed by advertising on one or more secondary channels. To set this up, four (or more) command structures can be chained using the pNextOp parameter. The parameter structures can be the same for the three extended advertiser commands, and the output structures can be the same for all channels.
The transmitted packets always use the common extended advertising format. Such packets are constructed by the radio CPU based on the information in a descriptor as given in Table 26-105. The details of the packet handling are described in Section 26.8.9.1. The first transmitted packet is given by the descriptor pointed to by pParams->pAdvPkt.
If the transmitted packet contains an AuxPtr field, the Offset Units, and Aux Offset (see the Specification of the Bluetooth System, Version 5.0 listed in Related Documentation) fields shall be modified by the radio CPU so that they point to a packet transmitted at the time given by pParams->auxPtrType and pParams->auxPtrTime. The values allowed for pParams->auxPtrType are the same as the triggers used generally in commands, but only TRIG_ABSTIME, TRIG_NEVER, and the various relative times are allowed; TRIG_NEVER means that no modification of AuxPtr shall be done by the radio CPU. The radio CPU shall calculate the time from the start of the transmitted packet to the given time and find the smallest offset unit that can be used to represent that time. Aux Offset shall then be set to the time difference divided by the unit rounded down.
Section 26.8.9.2 and Section 26.8.9.3 describe the detail of operation of CMD_ADV_EXT and CMD_ADV_AUX.