Wi-Fi

本頁說明如何在 Cuttlefish 裝置上控制 Wi-Fi。

使用 Wmediumd

Cuttlefish Wi-Fi 功能採用 Wmediumd 這項模擬工具 模擬無線媒介Wmediumd 會管理 Wi-Fi 封包的傳送 兩個 Cuttlefish 執行個體,或在 Cuttlefish 例項之間, OpenWRT 執行個體。Cuttlefish 的 Wmedium /platform/external/wmediumd/

如要控制 Wmediumd 介面,請使用 WmediumdService (Android 14 以上版本) 或 wmedium_control (Android 13 以下版本) 工具。

WmediumdService

如果是搭載 Android 14 以上版本的裝置,請使用 WmediumdService:控制 Wmedium 工具。進一步瞭解如何控制 透過 REST API 或指令列介面 (CLI) 讀取這項服務,請參閱 Cuttlefish:環境控制

下表列出 WmediumdService 中的方法。如需詳細 如要進一步瞭解這些方法,請參閱 wmediumd.proto

方法 說明
ListStations 列出連接至 Wmediumd 的所有電台。
LoadConfig 使用指定檔案載入 Wmediumd 設定。
ReloadConfig 重新載入目前載入的 Wmediumd 設定檔。
SetCivicloc 在 特定電台。
SetLci 將特定的 LCI (經緯度、海拔高度) 設為 電台。
SetPosition 設定站點在二維空間中的位置。
SetSnr 設定介於兩個值之間的訊號雜訊比 (SNR) 值 (0-255) 電台。
SetTxpower 設定指定充電站的傳輸功率 (TX 功率)。
StartPcap 開始擷取及儲存所有已傳輸的影格 儲存至 .pcap 檔案
StopPcap 停止並完成目前的封包擷取作業。

wmediumd_control

如果是搭載 Android 13 以下版本的裝置,請使用 wmediumd_control 工具:用於控制 Cuttlefish 裝置的無線媒體。 下表列出 wmediumd_control 中的子指令。

子指令 說明
list_stations 列出連接至 的所有車站 Wmediumd。
reload_config [CONFIG_FILE_PATH] 使用以下指令重新載入 Wmediumd 設定 CONFIG_FILE_PATH 。如果 CONFIG_FILE_PATH 省略,請重新載入目前載入的內容 設定檔。
set_civicloc MAC_ADDR CIVICLOC 設定市政位置 (例如 郵寄地址) 指定車站的位置。
set_lci MAC_ADDR LCI 設定 LCI (緯度、經度、 高度)。
set_position MAC_ADDR X_POSITION Y_POSITION 將充電站的位置設在 2D 空間
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE 設定訊號雜訊比 (SNR) 值 (0-255)。
start_pcap PCAP_FILE_PATH 開始擷取所有畫面 透過傳輸管道 .pcap 檔案。
stop_pcap 停止並完成目前的封包 擷取。

使用 OpenWRT

Cuttlefish Wi-Fi 功能支援使用 OpenWRT 進行虛擬 Wi-Fi 虛擬化 存取點 (AP)。Cuttlefish 的 OpenWRT 實作 platform/external/openwrt-prebuilts/

如要連線至 OpenWRT,請使用下表資訊。如果發生以下情況: 您在啟動 Cuttlefish 時未附加任何選項,裝置 ID 會是 cvd-1,OpenWRT WAN IP 位址為 192.168.94.2192.168.96.2

連線類型 到達網頁
安全殼層 (SSH) root@OPENWRT_WAN_IP_ADDRESS
網頁 https://localhost:1443/devices/DEVICE_ID/openwrt
網頁 (舊版) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

在搭載 Android 14 以上版本的裝置上 並設定虛擬化 Wi-Fi AP OpenwrtControlService 服務。進一步瞭解如何控管這項服務 您也可以利用 REST API 或 CLI 查看 Cuttlefish:環境控制

下表列出 OpenwrtControlService 中的方法。如需詳細 如要進一步瞭解這些方法,請參閱 openwrt_control.proto

方法 說明
LuciRpc 在 OpenWRT 中將遠端程序呼叫 (RPC) 呼叫傳送至 Luci 網頁介面。
OpenwrtIpAddr 取得 OpenWRT WAN IP 位址。使用這個地址連結 透過 SSH 或網頁介面使用 OpenWRT 執行個體。