Testare la connettività di più dispositivi

Sfondo

L'esecuzione di più dispositivi virtuali Cuttlefish può essere eseguita eseguendo il seguente comando:

launch_cvd --num_instances=n

Quando esegui due o più istanze utilizzando il flag --num_instances , le istanze condividono il mezzo di connettività per Wi-Fi e Bluetooth. Questa impostazione consente alle istanze Cuttlefish di rilevarsi e connettersi tra loro tramite Bluetooth e Wi-Fi senza azioni aggiuntive.

Tuttavia, se stai eseguendo più istanze utilizzando il flag --base_instance_num e più invocazioni launch_cvd , devi specificare il percorso del server vhost di wmediumd per condividere il supporto Wi-Fi e anche impedire l'avvio di più istanze VM per AP.

Esempio di lancio su più dispositivi

I comandi seguenti mostrano come avviare due istanze Cuttlefish che condividono il supporto Wi-Fi utilizzando l'esecuzione seriale di 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

L'implementazione Bluetooth Cuttlefish è supportata da rootcanal e può essere controllata con la console della riga di comando dell'interfaccia utente Web.

Nella console sono presenti diversi comandi che consentono il controllo del bluetooth sul dispositivo ospite:

Comando Descrizione
list Elenca i dispositivi e le caratteristiche fisiche attuali
add DEVICE_TYPE [ARGS] Crea un nuovo dispositivo di tipo DEVICE_TYPE
del DEVICE_INDEX Elimina un dispositivo
add_phy PHY_TYPE Aggiungi nuovo fisico con PHY_TYPE
del_phy PHY_INDEX Elimina un phy
add_device_to_phy DEVICE_INDEX PHY_INDEX Aggiungi un dispositivo a phy
del_device_from_phy DEVICE_INDEX PHY_INDEX Elimina un `dispositivo da phy
add_remote HOSTNAME PORT PHY_TYPE Aggiungi un Rootcanal remoto come dispositivo e registralo su phy
Tipo di dispositivo e argomenti
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL]
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH]
keyboard [MAC_ADDRESS] [ADVERTISE_INTERVAL]
loopback [MAC_ADDRESS] [ADVERTISE_INTERVAL]
sniffer

Wifi

wmediumd_control

wmediumd_control è uno strumento da riga di comando che controlla il mezzo di connettività Wi-Fi. Lo strumento dispone dei seguenti comandi per manipolare il Wi-Fi:

Comando Descrizione
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Imposta il valore SNR (0~255) tra due stazioni
start_pcap PCAP_FILE_PATH Inizia a catturare tutti i fotogrammi trasmessi in onda e li memorizza nel file .pcap
stop_pcap Interrompe e finalizza l'acquisizione del pacchetto corrente
list_stations Elenca tutte le stazioni collegate a wmediumd
reload_config [CONFIG_FILE_PATH] Ricarica la configurazione wmediumd con CONFIG_FILE_PATH , se CONFIG_FILE_PATH viene omesso, ricarica il file di configurazione attualmente caricato
set_position MAC_ADDR X_POSITION Y_POSITION Imposta la posizione della stazione nello spazio bidimensionale

OpenWRT

Se desideri connetterti a OpenWRT (punto di accesso), puoi utilizzare ssh o la pagina web di amministrazione.

Tipo di connessione Metodo
ssh
ssh root@192.168.96.2
Pagina Web di amministrazione https://192.168.96.2