SiFli SDKでのRF試験¶
SDKではBluetooth RF検証をシグナリング、非シグナリング、個別RF試験に分けています。試験用ファームウェアを読み込む前に、目的に合った方法を選んでください。
表: ファミリー別RF試験コンテンツの適用範囲
| 内容 | ファミリーごとの適用範囲 |
|---|---|
| 試験モードの比較と測定手順 | SF32LB52x、SF32LB55x、SF32LB56x、SF32LB57x、SF32LB58x向けの統合ワークフロー。 |
| Bluetooth Classic試験の対応状況 | Bluetooth Classicに対応するターゲットでのみ実施できます。SF32LB55xはBLEのみをサポートし、Bluetooth Classicの試験には対応しません。このファミリーではBLEの試験手順を使用してください。 |
| SF32LB57xのテストツール対応 | RF Test Guide にはSF32LB57xのUARTピンが記載されていますが、SiFli_RfToolマニュアル のプラットフォーム選択肢に57xはありません。この情報はピン配置の根拠としてのみ扱い、対象SDKリリースで利用できるテスト経路を確認してください。 |
| 接続構成の図とHCIコマンド一覧 | SiFliのガイドに掲載されたSF32LB52xの例。他ファミリーでは、実装に対象ファミリーのコマンド/ピン資料を使う。 |
CONFIG_BT_RF_TESTの設定 |
ドキュメントに記載された55x以外の経路に適用。SF32LB55xのbt_rftest経路ではこのシンボルを使わない。 |
| UARTピン、パケット値、コマンド構文 | 対象ファミリーとSDKリリースに依存する。プロジェクト設定とbt_rftest helpを確認する。 |
公式ガイド間でSF32LB58xのUART1ピン割り当てが不一致です
一般RFテストガイドではUART1 TX/RXをPA31/PA32、Bluetooth Individual RF Test GuideではPA32/PA31と記載しています。配線前に、対象ファームウェアのテスト経路と基板のpinmuxを確認してください。ガイドごとに割り当てが異なります。
試験モードの選択¶
表: Bluetooth RF試験モードの選択
| モード | 用途 | SDKの入口 | 制御経路 |
|---|---|---|---|
| BTシグナリング | BQB/QDID認証とプロトコル準拠の性能評価 | bt_cm dut, gap_enb_dut_mode_req() |
テスターの無線インターフェースとLMP試験制御 |
| BT非シグナリング | 開発時のRF調整と量産スクリーニング | bt_rftest, bt_enter_no_signal_dut_mode() |
ローカルのベンダーHCI |
| BLE非シグナリング (SIG DTM) | BLE RFスクリーニングとSIG DTM項目 | bt_rftest bletx/blerx, ble_enter_dut_mode() |
ローカルHCI、またはbt_cm uart_dutで転送する標準HCI |
| 個別RF試験 | 基板レベルのRF調整とFCC/CE認証前評価 | bt_cm uart_dut + SiFli_RfTool |
PCツールが低レベル操作を1項目ずつ送信 |
シグナリングでは実際のBluetoothリンクを確立し、認証試験に使います。非シグナリングではRFを特定のチャネルと電力に固定し、送信または受信状態を維持します。開発や量産で一般的に使われる方法です。個別RF試験ではPCツールからキャリアまたは変調を細かく制御し、アナライザーまたはパワーメーターで測定します。BT非シグナリングと個別RF試験はSiFli独自のワークフローであり、BQB試験ではありません。
以下の接続構成図はSF32LB52xのRF試験ガイドに基づいています。PC、DUT、テスター、UART/HCI/RFの経路の違いを示しています。実際の既定UARTとピン配置には、対象ファミリーの表を使ってください。



ファームウェアを選び、プロジェクトを設定する¶
rf_test.binはSiFli内部で使うRF試験ビルドであり、通常のSDK成果物として配布されません。User.binはSDKでビルドした任意のアプリケーションファームウェアです。RF機能はプロトコルスタックに組み込まれ、bt_cm dut、bt_cm uart_dut、bt_rftestなどのFinSHコマンドで起動します。
ユーザービルドでは、関連オプションを有効にします。
SF32LB55xのbt_rftest経路ではCONFIG_BT_RF_TESTを使いません。CONFIG_BT_FINSHはトレース用であり、試験コマンドには不要です。制御経路にSDK独自のIPC UARTを使う場合は、ボードに応じてCONFIG_IPC_USE_OWN_DEVICE=yとCONFIG_IPC_OWN_DEVICE_NAME="uart2"を設定します。SDKのexample/bt/spp/とexample/bt/HCI_over_uart/が開始点になります。
BTシグナリング試験¶
- DUTで
VBAT、GND、UART1 TX/RXにアクセスできるようにします。UART1の既定ピンはパッケージによって異なるため、プロジェクトのピン設定を確認してください。 - BLEシグナリングでは、UART1をPCに接続して
bt_cm uart_dutを送信します。04 0E 04 XX 03 0C 00を確認してから、UARTをテスターへ移します。 - BTシグナリングでは、DUTをスリープさせずに動作状態に保ち、
bt_cm dutを送信してWrite scan enable successを確認し、RF同軸ケーブルをテスターに接続します。 - Bluetooth Signalingでは、BLEは1,000,000 baudのUSB-to-RS232 EUT制御を使います。BTは
None (EUT Control off)を選び、無線経由でDUTを検出します。 Bluetooth 1 Multi Eval.でTXを実行し、Bluetooth 1 RX Meas.でRXを実行します。Classic BTではBER、BLEではPERを使い、テスターのTXレベルを下げて感度を測定します。
BT/BLE非シグナリングコマンド¶
RF試験経路を有効にした後、FinSHシェルで次のコマンドを使います。
bt_rftest enter
bt_rftest bttx <channel> <packet_type> <power> <length>
bt_rftest btrx <channel> <packet_type> <power>
bt_rftest btstop
bt_rftest exit
引数の正確な順序と使用可能なパケット値はリリースごとに異なります。対象SDKのbt_rftest helpが表示する構文を使ってください。RXパケット統計は意味のある測定値ですが、TXパケット数は受信パケット数の測定値ではありません。BLE DTMではbt_rftest bletx/blerx、または標準HCIのLE_Transmitter_Test、LE_Receiver_Test v2、LE_Test_Endを使います。BLEチャネルは0~39、PHYは1M/2M/Coded、Classic BTチャネルは0~78です。両方に対応するデュアルモードのターゲットでは、BTとBLEがRFハードウェアを共有するため、分けて試験してください。
SiFli_RfToolによる個別RF試験¶
DUTのUART1を1,000,000 baudでPCに接続します。RFポートは同軸ケーブルでテスター、スペクトラムアナライザー、またはパワーメーターに接続してください。
bt_cm uart_dutを送信し、応答04 0E 04 XX 03 0C 00を確認します。SiFli_RfTool.exeでファミリー、BLEまたはBTの非シグナリングモード、COMポートを選びます。
チャネル、PHY、パケット種別、電力を変更する前にTX/RXを停止してください。BLE RXでは、テスターから1,500パケットを送信できます。PER = (1500 - received) / 1500 × 100%を計算し、RSSIを記録します。
Classic BT RXではCMW500 GPRF波形を使い、RSSI、パケット/ビットのエラー数、BER/PERを記録します。ケーブル損失を補正し、伝導測定か放射測定かを記録してください。
結果の記録¶
SiFliのガイドには、HCIコマンドと戻り値の一覧も掲載されています。コマンドを送信してもDUTが期待した状態にならない場合に参照してください。一覧中のすべての試験ベクトルを、移植可能なAPIと見なさないでください。対象SDKとチップファミリーに合うコマンドを選びます。
| 試験モード | チャネル | 中心周波数 |
|---|---|---|
| BR/EDR | 0 / 39 / 78 | 2402 / 2441 / 2480 MHz |
| BLE | 0 / 19 / 39 | 2402 / 2440 / 2480 MHz |
RX試験が失敗した場合、再試行の前にHCI_Reset(01,03,0C,00)を送信するよう、元の一覧に記載されています。コマンドとチャネル値はSF32LB52xの資料例です。対象SDKとファミリーでコマンドシーケンスを確認してください。

各結果とともに、ファミリー、SDKリビジョン、ファームウェア識別情報、UARTピン、RF経路、ケーブル損失、測定器の機種/設定、チャネル、PHY/パケット種別、電力設定、RX数、RSSI、BER/PER、ボードリビジョンを記録してください。詳しくは公式のSF32LB52x、SF32LB55x(UARTの表にはSF32LB57xも記載)、SF32LB56x、SF32LB58x の各ガイドを参照してください。
最終更新: