Bluetooth LE Non-Signaling Test
Bluetooth LE Non-Signaling Test controls the device to transmit specific signals without establishing a connection, evaluating performance metrics such as transmit power, spectrum characteristics, and error rate to ensure communication quality.
Set Up Test Environment
The RF non-signaling test firmware environment mainly includes a PC, tester, a USB-to-UART board, a device under test (DUT), and a shield box.

Test Environment Setup
PC is connected to the USB-to-UART board via USB and to the tester via an Ethernet cable. The PC needs to have the EspRFTestTool toolkit, tester control software, and the driver for the USB-to-UART board installed.
Tester is used to test the RF performance of the DUT in different modes. Typically, it is the WT-328/IQXel tester.
USB-to-UART board is used to communicate between the PC and the DUT.
Device under test (DUT) refers to a product designed based on the ESP32-C3 chip or module. It is connected to the USB-to-UART board via UART and to the tester via an RF connection cable. The DUT is usually placed inside a shield box.
Shield Box is used to isolate external RF interference and ensure the stability of the test environment.
Note
The CHIP_EN pin of the DUT is pulled up by default. If it is not pulled up in the product design, you need to manually connect the CHIP_EN to the 3V3 pin.
Some serial communication boards have already swapped RXD and TXD internally, so there is no need to reverse the connection. Adjust the wiring according to the actual situation.
ESP32-C3 has a power-on self-calibration feature. The RF connection cable must be connected to the tester before the DUT is powered on for testing.
Conduction Test
For modules without an onboard PCB antenna, the RF connection cable can be directly soldered to the antenna feed point of the module (as shown in the schematic diagram above).
For modules with an onboard PCB antenna, cut the trace that connects to the PCB antenna feed point and solder the RF connection cable. The RF cable’s shielding metal layer must be thoroughly soldered before connecting to the module’s GND. The GND soldering point can be either the shield cover or the exposed GND layer on the PCB (after removing the green solder mask). Besides, it should be as close to the feed point as possible.

Soldering RF Connection Cable to Module with Onboard PCB Antenna
Flash Firmware
Open EspRFTestTool.
Set
ChipType
,COM
,BaudRate
, and clickOpen
to open the COM port.
Note
Set BaudRate
to 115200
Flash ESP32-C3 RF Non-Signaling Test Firmware to
Flash
viaUART
.

ESPRFTestTool Configuration
After the firmware flashing is completed, pull the boot pin high or leave it floating. The chip will enter the working mode after power-off restart.
Start Testing
Bluetooth LE TX Performance Test
Test Mode:
BLE50 TX: Used for TX performance tests;
BLE50 TX continue: High packet duty cycle used for certification testing.
Power Level: Set the Bluetooth LE TX power level, supporting 0~15 level test
Channel: Set the Bluetooth LE test channel
Hoppe: Enable hopping function. Default: disabled
Ulap: Set the Bluetooth address. Default: disabled
Itaddr: Set the logical TX address. Default: disabled
Syncw: Set the identity code of the packet file. Default: syncw=0x71764129
Payload length: Set the payload length. Default: 250
Data Rate: Set the packet TX rate and encoding sequence. It supports four rates, including BLE 1M, 2M, 125K, and 500K. It supports three encoding sequences, including 1010, 11110000, prbs9.
After clicking start
, the Bluetooth LE TX parameter description is displayed in the log window, similar to the following:
fcc_le_tx_syncw:txpwr=15,chan=0,len=250,data_type=0,syncw=0x71764129,rate=0,tx_num=0,contin_en=0,delay=0,hopp_en=0
This indicates that the Bluetooth LE packet TX is normal, and at this point, the tester can be used to test the TX performance.

Bluetooth LE TX Performance Test
Bluetooth LE RX Performance Test
Test Mode: Select BLE50 RX for Bluetooth LE RX performance test.
Channel: Set the Bluetooth LE test channel.
Syncw: Set the identity code of the package file. Default :syncw=0x71764129.
Data Rate: Set the package RX rate. The default encoding sequence is prbs9.
After clicking start
, use the tester to send packages on the test channel. Click stop
after completion. The package RX information is displayed in the log window, similar to the following:
3e8 3e8 0 0 0 0 0 0 0 0 p -53276 -24131 0 29422
Among them:
The 1st parameter Res[0] (hexadecimal) represents the total number of packages received in this test. In this test, the total number of packages is 3e8.
The 2nd parameter Res[1] (hexadecimal) represents the number of packages received at the corresponding rate in this test. In this test, the number of packages at the corresponding rate is 3e8.
The 12th parameter Res[11] (in decimal) represents the RSSI of this test received correct package. In this test, the RSSI is -53276.
Based on the above parameters, you can calculate:
Packet loss rate PER = [1-(Res[1]/Sent_Packet_Numbers)]*100%<=30.8%
RSSI of each package = Res[11]/(Res[1])
Bluetooth LE RX Performance Test
Appendix
This appendix is mainly used to explain the power level and corresponding target power of Bluetooth LE of ESP32-C3, which is used for RF debugging or test reference.
Bluetooth LE TX Power Level
Power Level |
Bluetooth LE TX Power (dBm) |
0 |
-24 |
1 |
-21 |
2 |
-18 |
3 |
-15 |
4 |
-12 |
5 |
-9 |
6 |
-6 |
7 |
-3 |
8 |
0 |
9 |
3 |
10 |
6 |
11 |
9 |
12 |
12 |
13 |
15 |
14 |
18 |
15 |
20 |
Bluetooth LE 5.0 PHY Channels and Indexes
For Bluetooth LE, the EspRFTestTool toolkit uses the Channel Index to identify channels.
PHY Channel |
RF Center Frequency (MHz) |
Channel Index |
0 |
2402 |
37 |
1 |
2404 |
0 |
2 |
2406 |
1 |
… |
… |
… |
11 |
2424 |
10 |
12 |
2426 |
38 |
13 |
2428 |
11 |
14 |
2430 |
12 |
… |
… |
… |
38 |
2478 |
36 |
39 |
2480 |
39 |