Testing Commands#

Testing Commands.

Modules

sl_bt_evt_test_dtm_completed

Indicates that the radio has processed a test start or end command.

Enumerations

enum  

sl_bt_test_packet_type_t {

  sl_bt_test_pkt_prbs9 = 0x0,

sl_bt_test_pkt_11110000 = 0x1,

sl_bt_test_pkt_10101010 = 0x2,

sl_bt_test_pkt_11111111 = 0x4,

  sl_bt_test_pkt_00000000 = 0x5, sl_bt_test_pkt_00001111 = 0x6, sl_bt_test_pkt_01010101 = 0x7, sl_bt_test_pkt_pn9 = 0xfd,

  sl_bt_test_pkt_carrier = 0xfe

} | | | Test packet types supported by the stack. | | | | enum   | sl_bt_test_phy_t { sl_bt_test_phy_1m = 0x1, sl_bt_test_phy_2m = 0x2, sl_bt_test_phy_125k = 0x3, sl_bt_test_phy_500k = 0x4 } | | | Test PHY types. | | |

Functions

sl_status_t 

sl_bt_test_dtm_tx_v4 (uint8_t packet_type, uint8_t length, uint8_t channel, uint8_t phy, int8_t power_level)

sl_status_t 

sl_bt_test_dtm_tx_cw (uint8_t packet_type, uint8_t channel, uint8_t phy, int16_t power_level)

sl_status_t 

sl_bt_test_dtm_rx (uint8_t channel, uint8_t phy)

sl_status_t 

sl_bt_test_dtm_end ()

Detailed Description#

Testing Commands.

Enumeration Type Documentation#

sl_bt_test_packet_type_t#

enum sl_bt_test_packet_type_t

Test packet types supported by the stack.

Enumerator

sl_bt_test_pkt_prbs9 

(0x0) PRBS9 packet payload

sl_bt_test_pkt_11110000 

(0x1) 11110000 packet payload

sl_bt_test_pkt_10101010 

(0x2) 10101010 packet payload

sl_bt_test_pkt_11111111 

(0x4) 11111111 packet payload

sl_bt_test_pkt_00000000 

(0x5) 00000000 packet payload

sl_bt_test_pkt_00001111 

(0x6) 00001111 packet payload

sl_bt_test_pkt_01010101 

(0x7) 01010101 packet payload

sl_bt_test_pkt_pn9 

(0xfd) PN9 continuously modulated output

sl_bt_test_pkt_carrier 

(0xfe) Unmodulated carrier

sl_bt_test_phy_t#

enum sl_bt_test_phy_t

Test PHY types.

Enumerator

sl_bt_test_phy_1m 

(0x1) 1M PHY

sl_bt_test_phy_2m 

(0x2) 2M PHY

sl_bt_test_phy_125k 

(0x3) 125k Coded PHY

sl_bt_test_phy_500k 

(0x4) 500k Coded PHY

Function Documentation#

sl_bt_test_dtm_tx_v4()#

sl_status_t sl_bt_test_dtm_tx_v4

(

uint8_t 

packet_type,

uint8_t 

length,

uint8_t 

channel,

uint8_t 

phy,

int8_t 

power_level

)

Start a transmitter test against a separate Bluetooth tester device. When the command is processed by the radio, a sl_bt_evt_test_dtm_completed event is triggered. This event indicates whether the test started successfully.

In the transmitter test, the device sends packets continuously with a fixed interval. The type and length of each packet is set by packet_type and length parameters. The parameter phy specifies which PHY is used to transmit the packets. All devices support at least 1M PHY. A special packet type, test_pkt_carrier , can be used to transmit continuous unmodulated carrier. The length field is ignored in this mode. As this command has the limitation within the value of power_level, use of sl_bt_test_dtm_tx_cw for custom waves is recommended.

Stop the test using the sl_bt_test_dtm_end command.

Parameters

[in]

packet_type

Enum sl_bt_test_packet_type_t. Packet type to transmit. Values:* sl_bt_test_pkt_prbs9 (0x0): PRBS9 packet payload

  • sl_bt_test_pkt_11110000 (0x1): 11110000 packet payload

  • sl_bt_test_pkt_10101010 (0x2): 10101010 packet payload

  • sl_bt_test_pkt_11111111 (0x4): 11111111 packet payload

  • sl_bt_test_pkt_00000000 (0x5): 00000000 packet payload

  • sl_bt_test_pkt_00001111 (0x6): 00001111 packet payload

  • sl_bt_test_pkt_01010101 (0x7): 01010101 packet payload

  • sl_bt_test_pkt_pn9 (0xfd): PN9 continuously modulated output

  • sl_bt_test_pkt_carrier (0xfe): Unmodulated carrier | | [in] | length | Packet length in bytes Range: 0-255 | | [in] | channel | Bluetooth channel Range: 0-39 Channel is (F - 2402) / 2, where F is frequency in MHz | | [in] | phy | Enum sl_bt_test_phy_t. PHY to use. Values:* sl_bt_test_phy_1m (0x1): 1M PHY

  • sl_bt_test_phy_2m (0x2): 2M PHY

  • sl_bt_test_phy_125k (0x3): 125k Coded PHY

  • sl_bt_test_phy_500k (0x4): 500k Coded PHY | | [in] | power_level | TX power level in unit dBm. Values:* -127 to +20: Use specified or the nearest TX power level. The minimum -127 dBm is specified in the Bluetooth specification. However, a device may not support this low TX power. In addition, only some devices support 20 dBm TX power.

  • 0x7E: Use minimum TX power level the device supports.

  • 0x7F: Use the smallest of the maximum TX power level the device supports and the global maximum TX power setting in stack.

For continuous unmodulated carrier mode, the values are set in 0.1 dBm unit. If the value exceeds the range of power level value allowed by the device, the command will adjust the power level to the closest minimum or maximum value. |

ReturnsCommand result Events

sl_bt_test_dtm_tx_cw()#

sl_status_t sl_bt_test_dtm_tx_cw

(

uint8_t 

packet_type,

uint8_t 

channel,

uint8_t 

phy,

int16_t 

power_level

)

Start a transmitter test for a custom wave. When the command is processed by the radio, a sl_bt_evt_test_dtm_completed event is triggered. This event indicates whether the test started successfully.

In the custom wave transmitter test, the device continuously transmits the career. The parameter packet_type specifies the packet type. The parameter phy specifies which PHY is used to transmit the packets. All devices support at least 1M PHY.

Stop the test using the sl_bt_test_dtm_end command.

Parameters

[in]

packet_type

Enum sl_bt_test_packet_type_t. Packet type to transmit. Values:* sl_bt_test_pkt_pn9 (0xfd): PN9 continuously modulated output

  • sl_bt_test_pkt_carrier (0xfe): Unmodulated carrier | | [in] | channel | Bluetooth channel Range: 0-39 Channel is (F - 2402) / 2, where F is frequency in MHz | | [in] | phy | Enum sl_bt_test_phy_t. PHY to use. Values:* sl_bt_test_phy_1m (0x1): 1M PHY

  • sl_bt_test_phy_2m (0x2): 2M PHY

  • sl_bt_test_phy_125k (0x3): 125k Coded PHY

  • sl_bt_test_phy_500k (0x4): 500k Coded PHY | | [in] | power_level | TX power level. Unit: 0.1 dBm. If the value exceeds the range of power level value, allowed by the device, the command will adjust the power level to the closest minimum or maximum value. |

ReturnsCommand result Events

sl_bt_test_dtm_rx()#

sl_status_t sl_bt_test_dtm_rx

(

uint8_t 

channel,

uint8_t 

phy

)

Start a receiver test against a separate Bluetooth tester device. When the command is processed by the radio, a sl_bt_evt_test_dtm_completed event is triggered. This event indicates whether the test started successfully.

Parameter phy specifies which PHY is used to receive the packets. All devices support at least 1M PHY.

The test may be stopped using sl_bt_test_dtm_end command. This will trigger another sl_bt_evt_test_dtm_completed event, which carries the number of packets received during the test.

Parameters

[in]

channel

Bluetooth channel

Range: 0-39

Channel is (F - 2402) / 2,

where F is frequency in MHz

[in]

phy

Enum sl_bt_test_phy_t. PHY to use. Values:* sl_bt_test_phy_1m (0x1): 1M PHY

  • sl_bt_test_phy_2m (0x2): 2M PHY

  • sl_bt_test_phy_125k (0x3): 125k Coded PHY

  • sl_bt_test_phy_500k (0x4): 500k Coded PHY |

ReturnsCommand result Events

sl_bt_test_dtm_end()#

sl_status_t sl_bt_test_dtm_end

(

)

End a transmitter or a receiver test. When the command is processed by the radio and the test has ended, a sl_bt_evt_test_dtm_completed event is triggered.

ReturnsCommand result Events