En esta página, se describe cómo controlar el Wi-Fi en un dispositivo Cuttlefish.
Cómo usar Wmediumd
La función de Wi-Fi de Cuttlefish usa Wmediumd, una herramienta de simulación, que simula el medio inalámbrico. Wmediumd administra la entrega de paquetes de Wi-Fi entre dos instancias de Cuttlefish o entre una instancia de Cuttlefish y otra de OpenWRT. Wmedium para Cuttlefish se implementa en /platform/external/wmediumd/
.
Para controlar la interfaz de Wmediumd, usa la herramienta WmediumdService
(para Android 14 o versiones posteriores) o wmedium_control
(para Android 13 o versiones anteriores).
WmediumdService
En dispositivos que ejecutan Android 14 o versiones posteriores, usa WmediumdService
para controlar la herramienta de Wmedium. Si deseas obtener información detallada para controlar este servicio usando la API de REST o la interfaz de línea de comandos (CLI), consulta Cuttlefish: Control del entorno.
En la siguiente tabla se indican los métodos de WmediumdService
. Para obtener información detallada sobre los métodos, consulta wmediumd.proto
.
Métodos | Descripción |
---|---|
ListStations |
Enumera todas las estaciones adjuntadas a Wmediumd. |
LoadConfig |
Carga la configuración de Wmediumd con un archivo determinado. |
ReloadConfig |
Vuelve a cargar el archivo de configuración de Wmediumd cargado actual. |
SetCivicloc
|
Establece la ubicación cívica (por ejemplo, el código postal) de la estación específica. |
SetLci
|
Establece la LCI (latitud, longitud, altitud) de la estación específica. |
SetPosition |
Establece la posición de la estación en un espacio bidimensional. |
SetSnr
|
Establece el valor de la relación señal/ruido, o SNR, (0-255) entre dos estaciones. |
SetTxpower |
Establece la potencia de transmisión (potencia de TX) de la estación específica. |
StartPcap
|
Comienza a capturar todos los cuadros transmitidos al aire y los almacena en un archivo .pcap . |
StopPcap |
Detiene y finaliza la captura de paquetes actual. |
wmediumd_control
En dispositivos que ejecutan Android 13 o versiones anteriores, usa la herramienta wmediumd_control
para controlar el medio inalámbrico en dispositivos Cuttlefish.
En la siguiente tabla, se indican los subcomandos de wmediumd_control
.
Subcomandos | Descripción |
---|---|
list_stations
|
Enumera todas las estaciones adjuntadas a Wmediumd. |
reload_config
[CONFIG_FILE_PATH ]
|
Vuelve a cargar la configuración de Wmediumd con CONFIG_FILE_PATH ; si se omite CONFIG_FILE_PATH, vuelve a cargar el archivo de configuración cargado actual. |
set_civicloc MAC_ADDR
CIVICLOC |
Establece la ubicación cívica (por ejemplo, el código postal) de la estación específica. |
set_lci MAC_ADDR
LCI |
Establece la LCI (latitud, longitud, altitud) de la estación específica. |
set_position MAC_ADDR
X_POSITION
Y_POSITION |
Establece la posición de la estación en un espacio bidimensional. |
set_snr MAC_ADDR1
MAC_ADDR2
SNR_VALUE |
Establece el valor de la relación señal/ruido, o SNR, (0-255) entre dos estaciones. |
start_pcap
PCAP_FILE_PATH
|
Comienza a capturar todos los cuadros transmitidos al aire y los almacena en un archivo .pcap . |
stop_pcap
|
Detiene y finaliza la captura de paquetes actual. |
Cómo usar OpenWRT
La función de Wi-Fi de Cuttlefish admite el uso de OpenWRT para virtualizar los puntos de acceso (AP) de Wi-Fi. La implementación de OpenWRT para Cuttlefish se encuentra en platform/external/openwrt-prebuilts/
.
Para conectarte a OpenWRT, usa la información que se indica en la siguiente tabla. Si no agregas opciones a la hora de ejecutar Cuttlefish, el ID de dispositivo es cvd-1
y la dirección IP de WAN de OpenWRT es 192.168.94.2
o 192.168.96.2
.
Tipo de conexión | Destino |
---|---|
SSH | root@OPENWRT_WAN_IP_ADDRESS |
Página web | https://localhost:1443/devices/DEVICE_ID/openwrt |
Página web (heredada) | https://OPENWRT_WAN_IP_ADDRESS |
OpenwrtControlService
En dispositivos que ejecutan Android 14 o versiones posteriores, usa el servicio OpenwrtControlService
para controlar y configurar AP de Wi-Fi virtualizados. Si deseas obtener información detallada para controlar este servicio usando la API de REST o la CLI, consulta Cuttlefish: Control del entorno.
En la siguiente tabla se indican los métodos de OpenwrtControlService
. Para obtener información detallada sobre los métodos, consulta openwrt_control.proto
.
Métodos | Descripción |
---|---|
LuciRpc |
Envía una llamada de RPC a la interfaz web de Luci en OpenWRT. |
OpenwrtIpAddr
|
Obtiene una dirección IP de WAN de OpenWRT. Usa esta dirección para conectarte a una instancia de OpenWRT a través de SSH o de una interfaz web. |