nrfxlib API 2.8.99
Loading...
Searching...
No Matches

◆ sdc_hci_cmd_le_create_big_test()

uint8_t sdc_hci_cmd_le_create_big_test ( const sdc_hci_cmd_le_create_big_test_t * p_params)

#include <softdevice_controller/include/sdc_hci_cmd_le.h>

LE Create BIG Test.

The description below is extracted from Core_v6.0, Vol 4, Part E, Section 7.8.104

The HCI_LE_Create_BIG_Test command should only be used for testing purposes.

The command is used to create one or more BISes of a BIG (see [Vol 6] Part B, Section 4.4.6). All BISes in the BIG have the same values for all parameters.

The BIG_Handle contains the identifier of the BIG. This parameter is allocated by the Host and used by the Controller and the Host to identify a BIG.

The Advertising_Handle identifies the associated periodic advertising train of the BIG.

The Num_BIS parameter contains the total number of BISes in the BIG.

The SDU_Interval parameter specifies the time interval of the periodic SDUs.

The ISO_Interval parameter contains the time duration between two consecutive BIG anchor points.

The NSE (Number of SubEvents) parameter contains the total number of subevents that are used to transmit BIS Data PDUs for each BIS in a BIG event. The NSE parameter shall be greater than or equal to IRC × BN. The Max_SDU parameter contains the maximum size, in octets, of an SDU. The minimum value of the Max_SDU parameter in the ISO Transmit Test mode when the Payload_Type = 1 or 2 shall be 4.

The Max_PDU parameter contains the maximum size of every BIS Data PDU for every BIS in the BIG.

The PHY parameter is a bit field that indicates the PHY used for transmission of PDUs of BISes in the BIG. The Host shall set only one bit in this parameter and the Controller shall use the PHY set by the Host. If the Host sets, in the PHY parameter, a bit for a PHY that the Controller does not support, including a bit that is reserved for future use, the Controller shall return the error code Unsupported Feature or Parameter Value (0x11).

The Packing parameter indicates the preferred method of arranging subevents of multiple BISes. The subevents can be arranged in Sequential or Interleaved arrangement. This is a recommendation to the Controller which it may ignore. This parameter shall be ignored when there is only one BIS in the BIG.

The Framing parameter indicates the format of the BIS Data PDUs and the mode of framed PDUs (see [Vol 6] Part G, Section 2) that the Controller shall use on the specified BIG.

The BN (Burst Number) parameter contains the number of new payloads for each BIS in a BIS event.

The IRC (Immediate Repetition Count) parameter contains the number of times the scheduled data packet is transmitted (see [Vol 6] Part B, Section 4.4.6). The IRC parameter shall be an integer in the range 1 to (NSE ÷ BN).

The PTO (Pre_Transmission_Offset) parameter contains the offset in number of ISO_Intervals for pre transmissions of data packets (see [Vol 6] Part B, Section 4.4.6).

The Encryption parameter identifies the encryption mode of the BISes in the BIG. If the Encryption parameter is set to 1 (encrypted), the Broadcast_Code is used in the encryption of payloads (see [Vol 6] Part B, Section 4.4.6).

The Broadcast_Code parameter is a 16-octet field that is used to generate the session key to encrypt payloads of all BISes in the BIG. When the Encryption parameter is set to 0 (unencrypted), all 16 octets of the Broadcast_Code parameter shall be set to zero by the Host and ignored by the Controller.

If the Controller cannot create all BISes of the BIG or if Num_BIS exceeds the maximum value supported by the Controller, it shall return the error code Connection Rejected due to Limited Resources (0x0D). If the Advertising_Handle does not identify a periodic advertising train, the periodic advertising train is associated with another BIG, or the periodic advertising train has responses and the Controller does not support that, the Controller shall return the error code Unknown Advertising Identifier (0x42).

If the Host issues this command with a BIG_Handle for a BIG that is already created, the Controller shall return the error code Command Disallowed (0x0C).

If the value of the Max_PDU, NSE, BN, IRC or PTO parameters exceeds the values supported by the Controller, the Controller shall return the error code Unsupported Feature or Parameter Value (0x11).

If the Host specifies an invalid combination of BIG parameters, the Controller shall return an error. If the value of the NSE parameter is not an integer multiple of BN, or NSE is less than (IRC × BN), or the parameters are not in the specified range, these errors shall use the error code Unsupported Feature or Parameter Value (0x11). The errors in all other circumstances should use the error code Invalid HCI Command Parameters (0x12).

If the length of the associated periodic advertising, with the BIGInfo added to the ACAD, is greater than the maximum that the Controller can transmit within the periodic advertising interval, then the Controller shall return an error and should use the error code Packet Too Long (0x45). If advertising on the LE Coded PHY, then the S=8 coding shall be assumed unless the current advertising parameters require the use of S=2 for an advertising physical channel, in which case the S=2 coding shall be assumed for that advertising physical channel.

Event(s) generated (unless masked away): When the Controller receives the HCI_LE_Create_BIG_Test command, the Controller sends the HCI_Command_Status event to the Host. When the HCI_LE_Create_BIG_Test command has completed, the HCI_LE_Create_BIG_Complete event is generated.

Parameters
[in]p_paramsInput parameters.
Return values
0if success.
Returns
Returns value between 0x01-0xFF in case of error. See Vol 2, Part D, Error for a list of error codes and descriptions.