20. RF Master¶
RF master is an implementation of Bluetooth SIG standardized receiver and transmitter HCI commands and additional custom test HCI commands.
User can access RF Master by selecting RF Master under the Layout tab of the ribbon menu, which loads RF Master with Log. Alternatively, user can select RF Master tool under Tools tab of the ribbon.
When RF Master is opened, an extra tab is added to the ribbon, containing RF Master related buttons only. Currently Rf
Master tab contains Reset
and the Release UART
buttons. When the ‘Release UART’ button is clicked the allocated
UART port used for communication is freed and can be used from other tools such as Terminal Scripting
RF Master tests are distributed in a tree like structure, where user can expand only the test(s) being currently used and collapse the rest. User can expand or collapse all tests at once using the button found at the top of the tab. In order to run RF Master tests, user should first download the suitable RF Master firmware, depending on the selected chip. User can download the firmware over UART or over JTAG. When more than one devices are connected and user has previously selected a different communication interface in the settings file section dialog, user will be asked to select the COM port or JTAG serial number to be used for the firmware download. RF Master tests run over uart, so user will be asked to select a COM port that will be used for the tests, if JTAG has been selected in both settings file selection window and for RF Master firmware download.
RF Master supports the following tests:
- LE Tx/Rx
- Unmodulated Tx/Rx
- Continuous Tx
- XTAL
- Sleep
Note
Appendix A shows how to produce binary firmware for each chip family.
20.1. LE Tx/Rx¶
LE Receiver Transmitter tool sends Bluetooth LE test commands. Two instances are needed for the test, one operating as a transmitter and the other as a receiver.
20.1.1. Transmitter¶
User first selects the frequency, the payload type of the packets and their length in bytes. Then on the mode of the test, user has the following options:
1. Continuous Tx: When this mode is selected the Bluetooth SIG standardized HCI_LE_Transmitter_Test command is send. At this test the DUT sends test reference packets at a fixed interval, until the Bluetooth SIG standardized HCI_LE_Test_End command is executed. The user has to first stop the continuous packet transmission, before being able to run a new LE Tx test command.
2. # packets Tx: This mode is also based on the Bluetooth SIG standardized HCI_LE_Transmitter_Test command, with the difference that the user can specify the number of packets to be send at the test. Maximum number of packets that can be send in one test, is 65535 (two bytes). When Start button is pressed, the DUT generates a specified number of test reference packets at a fixed interval.
Start Button: Starts the selected LE transmitter test. Note that start is disabled until either the test finishes (specified number of packets has been sent) or the user presses the stop button, because it is not possible to start a second LE Transmitter Test, while another LE Transmitter Test is already running.
Stop Button: Sends the Bluetooth SIG standardized HCI_LE_Test_End command. Can be used to stop the continuous transmission or the transmission with spcified number of packets, before the transmission completes. Note that if a transmission with specified number of packets completes, Stop button is disabled again automatically.
Sample Log outpt:
The messages in blue color, marked with ====> [date] Tx <=== describe the commands that host sends to target. The messages in green, marked with ====> [date] Rx <=== describe the target’s response. At Figure 87 we can see that the command with opcode 0xFC90 is send and the firmware responds with an event, that contains the opcode 0xFC90 in its parameters. When the packet transmission is completed, an info message notifies the user about the completion and the firmware sends an event with event code 0x0E, which contains the opcode 0xFC90 in its parameters too. Not receiving an event from the target after sending a LE Tx command, indicates a problem. User is advised to press the Reset button from the horizontal toolbar and, if the problem persists, to download the firmware again to the target.
20.1.2. Receiver¶
User selects the frequency and if extra RF statistics info are required for the test. At this test the Bluetooth SIG standardized HCI_LE_Receiver_Test test is executed. During the test the DUT receives test reference packets at a fixed interval, until the Stop button is pressed. The test results are received when the Stop button is pressed. The user can see on the log the number of packets that have been successfully received. If extra statistics have been requested, the user can also see on the log the number of packets that have been received with SYNC error and the number of packets that have been received with CRC error.
Start Button: Starts the selected LE receiver test. If on the trasmitter side a test with specific number of packets has been selected, the user should start the receiver test first in order to receive the packets.
Stop Button: Sends the Bluetooth SIG standardized HCI_LE_Test_End command. The results of the test are displayed on the log.
Sample Log outpt:
At Figure 89, the first pair of Tx and Rx messages are generated when the Start button is pressed and the second one when the Stop button is pressed. When the host sends the command with opcode 0xFC81 in order to start the reception with extra RF stats info, the firmware responds with an event, containing also 0xFC81 in its parameters. When the command with opcode 0xFC82 is send in order to stop the reception, the firmware responds with an event packet, which contains info about the number of packets that have been received correctly, the number of packets that have been received with SYNC error and the number of packets that have been received with CRC error. We observe that the 100 packets that the LE Transmitter sent have been correctly received by the LE Receiver. Not receiving an event from the target after sending a LE Rx command, indicates a problem. User is advised to press the Reset button from the horizontal toolbar and, if the problem persists, to download the firmware again to the target.
20.2. Unmodulated Tx/Rx¶
This tool is used to perform Unmodulated Tx/Rx tests. Mode can be Tx or Rx. When Tx mode is selected and Start button is pressed, an unmodulated Tx test starts. When Rx mode is selected and Start button is pressed, an unmodulated Rx test starts. When Stop button is presed, unmodulated Rx or Tx test stops. In order to see the results of this test, a spectrum analyzer has to be connected to the target.
Sample log output:
When the unmodulated transmission starts, host sends a command with opcode 0xFC83 and mode 0x54 and target responds with an event (Figure 91).
When the unmodulated reception starts, host sends a command with opcode 0xFC83 and mode 0x52 and target responds with an event (Figure 92).
When the unmodulated transmission or reception stops, host sends a command with opcode 0xFC83 and mode 0x4f and target responds with an event (Figure 93).
Not receiving an event from the target after sending an unmodulated Tx, Rx or stop command, indicates a problem. User is advised to press the Reset button from the horizontal toolbar and, if the problem persists, to download the firmware again to the target.
20.3. Continuous Tx¶
This tool is used to enable a modulated carrier with specified payload data in a continuous stream. When Start button is pressed, a modulated signal is continuously transmitted, until the Stop button is pressed. In order to see the results of this test, a spectrum analyzer has to be connected to the target.
Sample log output:
When the continuous modulated transmission starts, host sends a command with opcode 0xFC84 and target responds with an event (Figure 95).
When the continuous modulated transmission stops, host sends a command with opcode 0xFC85 and target responds with an event (Figure 96).
Not receiving an event from the target after sending a continuous Tx start or stop command, indicates a problem. User is advised to press the Reset button from the horizontal toolbar and, if the problem persists, to download the firmware again to the target.
20.4. XTAL¶
The set of commands included in this tool are used to configure the XTAL16M trimming register.
20.4.1. XTAL Output¶
This command is used to enable or disable XTAL16M output on GPIO P0_5. P0_5 should not be used by the UART or the communication with the device will be lost. This command also enables or disables:
- XTAL32K output on GPIO P0_6
- RC16M output on P0_7
- RC32K output on P1_0
After sending enable or disable command, firmware responds with an event message. Not receiving the event message, indicates a problematic state. User is advised to press the Reset button from the horizontal toolbar and, if the problem persists, to download the firmware again to the target.
20.4.2. XTAL Trimming¶
With the set of commands included in XTAL Trimming section, user can read and write the value of XTAL16M register. This is a decimal value and it is written to the device register and not stored in Flash. When the Write button is pressed, first the write command is called and then the read command, in order to read again the trim value and verify its change.
Sample log output:
User is sending an XTAL read command and firmware responds with an event, containing the trim value (Figure 98). Firmware responds with an event to both read and write commands. Not receiving an event after sending the command, indicates a problematic state.
20.5. Sleep¶
This tool contains a set of commands that put the target to sleep for specified number of minutes and seconds. Sleep test is not supported for DA1468x family chips. There are 3 different sleep modes supported:
- None: Active mode
- Extended Sleep Mode
- Deep Sleep Mode
Minutes and seconds are integer numbers between 0 and 255. If both minutes and seconds are set to zero then the device sleeps forever. Known limitations:
- UART communication is lost when the device wakes up from extended sleep mode.
- The device will not wake up from deep sleep mode.