Probar la conectividad de varios dispositivos

Información general

Para activar varios dispositivos virtuales Cuttlefish, ejecuta el siguiente comando:

launch_cvd --num_instances=n

Cuando ejecutas dos o más instancias con la marca --num_instances, las instancias comparten el medio de conectividad para Wi-Fi y Bluetooth. Este parámetro de configuración le permite a las instancias de Cuttlefish descubrirse y conectarse entre sí a través de Bluetooth y Wi-Fi sin necesidad de realizar acciones adicionales.

Sin embargo, si estás ejecutando varias instancias con la marca --base_instance_num y varias invocaciones a launch_cvd, debes especificar la ruta de acceso del servidor vhost de wmediumd que compartirá el medio de Wi-Fi y evitar que se lancen varias instancias de VM para el AP.

Ejemplo de lanzamiento multidispositivo

Los siguientes comandos muestran cómo lanzar dos instancias de Cuttlefish que comparten un medio de Wi-Fi a través de una ejecución serial de launch_cvd.

launch_cvd
launch_cvd --base_instance_num=2 \
  --vhost_user_mac80211_hwsim=$HOME/cuttlefish_runtime.1/internal/vhost_user_mac80211 \
  --ap_kernel_image="" --ap_rootfs_image="" #Prevent launching multiple VM instances for AP

Bluetooth

La implementación Bluetooth de Cuttlefish es compatible con rootcanal y se puede controlar con la consola de línea de comandos de la IU web.

En la consola, hay varios comandos que permiten el control de Bluetooth en el dispositivo del invitado.

Comando Descripción
list Enumera dispositivos y phys actuales.
add DEVICE_TYPE [ARGS] Crea un nuevo dispositivo de tipo DEVICE_TYPE.
del DEVICE_INDEX Borra un dispositivo.
add_phy PHY_TYPE Agrega un nuevo phy con PHY_TYPE.
del_phy PHY_INDEX Borra un phy.
add_device_to_phy DEVICE_INDEX PHY_INDEX Agrega un dispositivo a phy.
del_device_from_phy DEVICE_INDEX PHY_INDEX Borra un dispositivo de phy.
add_remote HOSTNAME PORT PHY_TYPE Agrega un Rootcanal remoto como dispositivo y lo registra en phy.
Tipo de dispositivo y args
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL]
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH]
keyboard [MAC_ADDRESS] [ADVERTISE_INTERVAL]
loopback [MAC_ADDRESS] [ADVERTISE_INTERVAL]
sniffer

Wi-Fi

wmediumd_control

wmediumd_control es una herramienta de línea de comandos que controla el medio de conectividad Wi-Fi. La herramienta cuento con los siguientes comandos para manipular la conexión Wi-Fi:

Comando Descripción
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Establece el valor de SNR (0~255) entre dos estaciones.
start_pcap PCAP_FILE_PATH Comienza a capturar todos los cuadros transmitidos al aire y los almacena en el archivo .pcap.
stop_pcap Detiene y finaliza la captura de paquetes actual.
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_position MAC_ADDR X_POSITION Y_POSITION Establece la posición de la estación en un espacio bidimensional.

OpenWRT

Si quieres conectarte con OpenWRT (punto de acceso), puedes usar ssh o la página web del administrador.

Tipo de conexión Método
ssh
ssh root@192.168.96.2
Página web de administrador https://192.168.96.2