AN1046: Radio Frequency Physical Layer
Evaluation in Bluetooth® SDK v2.x
This application note provides an overview of how to perform
Bluetooth-based radio frequency (RF) physical layer (PHY) evaluation with Bluetooth-enabled EFR32xG system-on-chips (SoCs)
and BGM/MGM modules using Silicon Labs’ software tools and
dedicated firmware. A Bluetooth device’s RF parameters are validated using a protocol called Direct Test Mode (DTM). DTM is
described in the Bluetooth Core Specification versions 4.x and
5.0, Volume 6, Part F.
Testing can be performed in three ways:
• Through DTM test commands issued by a host system over the SoC’s or module’s
host interface.
• Through DTM test commands issued by a custom application running in the SoC or
module itself. Such commands could be autonomously launched by the custom application, for example at boot or following the writing of a dedicated GATT characteristic by a remote companion device over a Bluetooth LE connection.
• In a special test environment supported by dedicated firmware that allows a testing
device to control the test target.
KEY POINTS
• Basics of Direct Test Mode (DTM)
• Testing with BGTool
• Testing with DTM 2-wire firmware
• Test examples
• Updates for Bluetooth 5.0
With these options, customers can fully evaluate transmit and receive performance,
and test the RF functionality of their development kit hardware or custom hardware.
Laboratory tests require RF test equipment, such as a spectrum analyzer and an RF
signal generator, and /or a Bluetooth tester.
silabs.com | Building a more connected world.Rev. 0.5
AN1046: Radio Frequency Physical Layer Evaluation in Bluetooth® SDK v2.x
Basics of the Direct Test Mode (DTM)
1. Basics of the Direct Test Mode (DTM)
The Bluetooth specification defines a mechanism, called Direct Test Mode (DTM), for testing the radio performance of Bluetooth low
energy devices. This mechanism is described in the Bluetooth Core Specification, for example versions 4.2 and 5.0, Volume 6, Part F,
which are available at https://www.bluetooth.com/specifications/bluetooth-core-specification. DTM is provided for the validation of a
Bluetooth low energy device’s radio-frequency (RF) physical layer (PHY), so as to ultimately guarantee an end product’s interoperability
and performance quality. RF testing is essential for a Bluetooth device, as with any device implementing a wireless standardized technology, since factors such as full compliance with the specification for interoperability, and conformance to communication regulations
must be carefully assessed and validated before the product is launched. In addition, it may be desirable to evaluate the product’s performance during production. The ability to easily accomplish RF testing in a standardized manner throughout the production cycle is
useful.
DTM offers two approaches for RF PHY testing. In the first, an Upper Tester can enter special HCI (host control interface) commands
over the standardized HCI interface of the Device Under Test (DUT) to start and stop the radio tests on the DUT. In the second, the
Upper Tester has direct access to the DUT through a dedicated 2-wire connection, and can autonomously start and stop the radio tests
on the DUT in accordance with automated test routines.
The DTM protocol enabling the communication between the DUT and the Upper Tester also has provisions for feedback from the DUT,
in the form of acknowledgements to the commands given, or in the form of Packet Count information being reported at the time a test is
stopped.
A Lower Tester, or RF PHY Tester, is also part of the test setup, and is the actual lab equipment measuring the RF activity and performance. The RF PHY Tester can either be a separate device, like a spectrum analyzer, which is normally used with the first method
where the HCI commands are issued by a generic host system, or it can be part of the same device. In the latter case the RF PHY
Tester functions also as the Upper Tester, as for example commercial Bluetooth testers such as the one referenced later in this document.
The Bluetooth-enabled Silicon Labs EFR32xG SoCs and the BGM/MGM modules support both the approaches mentioned above. Special firmware can be loaded to enable the 2-wire DTM and allow the Upper Tester to take full control of the SoC or module (the device).
The 2-wire link is a UART-like connection with no flow control operating at baud rates between 1200-115200, 8N1 (8 data bits, no parity, 1 stop bit). As one alternative, any firmware that configures the device to operate in Network Co-Processor (NCP) mode can be
used, since the host system can then issue the test commands included with the BGAPI Bluetooth API over the same host interface
that is normally used to implement the BGAPI protocol for the control and configuration of the device’s normal Bluetooth LE functionality. Note that in this case BGAPI-formatted test commands are sent and not the HCI commands defined in the standard. However, these
BGAPI commands are then internally processed as HCI commands. The SDK does not contain any special firmware or configuration to
disable the BGAPI DTM commands/responses and use the raw HCI command/responses instead.
.
silabs.com | Building a more connected world.Rev. 0.5 | 2
AN1046: Radio Frequency Physical Layer Evaluation in
Bluetooth® SDK v2.x
Tests Enabled in the DTM Framework
2. Tests Enabled in the DTM Framework
DTM enables a set of RF PHY test cases, which are defined by the Bluetooth Special Interest Group (SIG) in the documents from the
sections called “TCRL Release Table” and “Core - Test Requirements for v4.0 or later” found at the beginning of the https://www.blue-
tooth.com/specifications/qualification-test-requirements web page.
Note: The following information was updated in the first half of 2017. For current information, refer to the newer TCRL 2017-1, that is, to
the corresponding 2017-1 TCRLs-1.zip file containing the newer RF-PHY.TS.5.0.1.
The Capability tests (as defined in the standard ISO subgroups) are organized in levels and groups representing protocol services,
functional modules, and purposes, the latter being divided in operating conditions for the transmitter and the receiver. All the relevant
RF PHY tests are in accordance to the test specifications RF-PHY.TS.4.2.3 or the updated RF-PHY.TS.5.0.0 and are shown in the RFPHY sheet of the Excel file called Core.TCRL.2016-2.xlsx found inside the 2016-2 TCRLs.zip.
Below are examples of test cases for the Physical Layer Conformance. They are referred to by their identifiers, where TP stands for
Test Purpose and TRM-LE and RCV-LE stand for LE Transmitter and LE Receiver test respectively.
• TP/TRM-LE/CA/BV-01-C [Maximum peak and average output power]
• TP/TRM-LE/CA/BV-06-C [Carrier frequency offset and carrier drift]
• TP/RCV-LE/CA/BV-01-C [Receiver sensitivity]
• TP/RCV-LE/CA/BV-03-C [C/I and Receiver Selectivity Performance] [Additional blocker needed to generate co-/adjacent channel interference]
• TP/RCV-LE/CA/BV-04-C [Blocking Performance] [Additional blocker needed to generate interference outside the 2400MHz -
2483.5MHz band]
• TP/RCV-LE/CA/BV-05-C [Intermodulation Performance] [2 x additional blocker needed to generate both a sinusoidal/un-modulated
and a continuous/modulated carrier]
• TP/RCV-LE/CA/BV-06-C [Maximum input signal level]
• TP/RCV-LE/CA/BV-07-C [PER Report Integrity]
Additional test cases have been introduced since the release of Bluetooth 5. A few examples of the many new test cases are listed
below:
• TP/TRM-LE/CA/BV-08-C [In-band emissions at 2 Ms/s]
• TP/TRM-LE/CA/BV-10-C [Modulation Characteristics at 2 Ms/s]
• TP/RCV-LE/CA/BV-08-C [Receiver sensitivity at 2 Ms/s]
• TP/RCV-LE/CA/BV-10-C [Blocking performance at 2 Ms/s]
All the above tests can be performed with the EFR32xG SoCs and the BGM/MGM modules, because they are supported by the DTM
implementation built in to the Silicon Labs Bluetooth stack.
Notes:
1. According to the latest TCRLs, references to the Extreme Operating Conditions (EOC) and the Normal Operating Conditions
(NOC) have been removed, as they became redundant with the removal of the extreme operating test conditions.
2. To accomplish the full set of tests in the specification, up to two external signal generators are needed to provide complete interference signals, in addition to a spectrum analyzer.
silabs.com | Building a more connected world.Rev. 0.5 | 3
AN1046: Radio Frequency Physical Layer Evaluation in
Bluetooth® SDK v2.x
Testing with BGTool
3. Testing with BGTool
An easy way to perform the RF PHY tests with the EFR32xG SoCs and the BGM/MGM modules is to use a PC running BGTool as the
Upper Tester. The SoC or module must be configured to operate in NCP mode.
AN1042: Using the Silicon Labs Bluetooth® Stack in Network Co-Processor Mode discusses the basics of the NCP firmware and how
to load it to a device, and provides an example to help familiarize you with the NCP mode. It also includes instructions on how to get
started controlling and configuring the Bluetooth functionality through the BGTool demo program. This chapter describes using BGTool
for RF PHY testing, where an SoC or module in a radio board attached to the Wireless Starter Kit (WSTK) is the example DUT, as
shown in the following figure.
Figure 3.1. WSTK with the Blue Gecko EFR32BG SoC
Launch BGTool and verify that the device in NCP mode responds to the commands entered in the Interactive view, Next, change to
the RF regulatory test view. Click Open with the connected device.
Figure 3.2. Entering the RF Regulatory Test View
The control dialog shown in the following figure opens.
silabs.com | Building a more connected world.Rev. 0.5 | 4
AN1046: Radio Frequency Physical Layer Evaluation in
Testing with BGTool
Bluetooth® SDK v2.x
Figure 3.3. RF Regulatory Test Control Dialog
In this dialog you can interact with the device and set the RF test parameters using the sliders and the radio buttons. All the necessary
configuration options are provided, namely transmission power level, operational frequency, packet type and length, and whether to
perform a transmit or receive test.
If you intend to perform transmit tests using anything other than the default transmit power, change the power and click Set next to the
Transmit power slider before launching your next test. Normally the default value is the maximum allowed by the firmware for a particular SoC or module. Clicking Set executes the BGAPI’s system_set_tx_power command, which changes the power value.
When the configuration parameters for the test are complete, click Start test. The test runs until you click Stop test.
silabs.com | Building a more connected world.Rev. 0.5 | 5
AN1046: Radio Frequency Physical Layer Evaluation in
Bluetooth® SDK v2.x
Testing with BGTool
Depending on the SDK in use, the BGTool might present different views and contents, such as in the following where no firmware uploading section exists.
Figure 3.4. Entering the RF Regulatory Test View using the BGTool
The following figure shows the new PHY selection option with the most recent version of the BGTool for devices that support Bluetooth
5.0, together with the new option to select the PN9 continuously modulated carrier, and the possibility to extend the payload to up to
255 bytes.
Figure 3.5. Selecting the PHY with the BGTool
When you click the Start test button, BGTool sends one of the BGAPI’s DTM commands over the host interface of the device. The
command parameters correspond to the slider and radio button selections. The API’s DTM commands are summarized in the following
table.
silabs.com | Building a more connected world.Rev. 0.5 | 6
Table 3.1. DTM Commands
CommandDescription
Starts a transmitter test. The DUT returns a response indicating that the command was received successfully. Shortly after this, a test_dtm_completed
event is triggered, indicating that the command was processed by the radio and
the actual test mode is started. At this point, the device is sending Bluetooth LE
packets continuously at a fixed interval defined in the specification. The test is
stopped using the test_dtm_end command, which is also followed by a
test_dtm_completed event.
Only when a test_dtm_completed event follows the test_dtm_end command,
and only with firmware versions 2.4.0 and above, the event's
number_of_packets field carries the actual number of packets sent during the
test_dtm_tx(packet_type, length, channel)
or
test_dtm_tx(packet_type, length, channel,
phy)
test.
The type and length of each packet is set by the packet_type and length parameters. The newest firmware versions add a parameter called phy that allows
the selection of the PHY among 1M, 2M, 125k Coded, and 500k Coded, when
supported by the DUT.
Note that a special packet type named test_pkt_carrier exists (enumerating
to a value of 3, or 254 beginning with version 2.4.1.0, for the parameter
packet_type) that can be used to transmit a continuous unmodulated carrier.
The length field is ignored in this mode. Version 2.4.1.0 also introduces yet another special packet type named test_pkt_pn9 (enumerating to a value of 253)
that can be used to transmit a continuous modulated carrier instead, by mean of
a PN9 stream offering a 100% duty cycle.
AN1046: Radio Frequency Physical Layer Evaluation in
Testing with BGTool
Bluetooth® SDK v2.x
In general, for the regulatory testing PRBS9 (packet_type of 0) and/or the continuous modulated carrier are used, whereas the other two packet payloads (packet_type of 1 or 2) are used when testing for the Bluetooth qualification.
test_dtm_rx(channel)
Starts a receiver test. The procedure is similar to the transmitter test described
above. When ending the test with the test_dtm_end command, the expected
or
test_dtm_rx(channel, phy)
test_dtm_completed event from the device carries in its number_of_packets
field the actual number of packets received during the test.
Can be issued at any time to end a transmitter or a receiver test. When the com-
test_dtm_end()
mand is processed by the radio and the test has ended, a test_dtm_completed
event is triggered.
The commands with their related responses, and the event mentioned in the table above, are found in the Bluetooth Software API Ref-erence.
Note: Once a test is started the normal Bluetooth LE functionality is not available, in other words, advertising and scanning are not
possible while a test is running, and similarly no connection can exist.
silabs.com | Building a more connected world.Rev. 0.5 | 7
AN1046: Radio Frequency Physical Layer Evaluation in
The following figure shows an example of the commands and responses and events in an actual test.
Bluetooth® SDK v2.x
Testing with BGTool
Figure 3.6. Starting and Stopping a Transmission Test
In this example, the test is started by clicking Start test. After a DTM test is started, the device will only accept the test_dtm_end command, which is entered by clicking Stop test. The only other ways to stop a test are by resetting the device or through a power-cycle.
Another way to start and stop tests with BGTool is by entering the commands with the desired parameters in the command field at the
bottom of the BGTool window, labeled BGAPI commands. Such commands can be copy-pasted from the API reference, for example:
gecko_cmd_test_dtm_tx(0,37,19)
Using BGTool is just one of the ways to perform the RF PHY tests in the lab. In fact, the DTM commands from the BGAPI protocol are
also available to any host MCU capable of issuing the BGAPI commands over the device’s host interface, for example when implementing a host program based on the BGLib library.
silabs.com | Building a more connected world.Rev. 0.5 | 8
Loading...
+ 18 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.