Wi-Fi

Questa pagina descrive come controllare il Wi-Fi su un dispositivo Cuttlefish.

Utilizzare Wmediumd

La funzionalità Wi-Fi di Cuttlefish utilizza Wmediumd, uno strumento di simulazione, per simulare il mezzo wireless. Wmediumd gestisce l'invio di pacchetti Wi-Fi tra due istanze Cuttlefish o tra un'istanza Cuttlefish e un'istanza OpenWRT. Wmedium per Cuttlefish è implementato in /platform/external/wmediumd/.

Per controllare l'interfaccia Wmediumd, utilizza lo strumento WmediumdService (Android 14 o versioni successive) o wmedium_control (Android 13 o versioni precedenti).

WmediumdService

Per i dispositivi con Android 14 o versioni successive, usa WmediumdService per controllare lo strumento Wmedium. Per informazioni dettagliate su come controllare questo servizio utilizzando l'API REST o l'interfaccia a riga di comando (CLI), consulta Cuttlefish: controllo dell'ambiente.

La tabella seguente elenca i metodi in WmediumdService. Per informazioni dettagliate sui metodi, consulta wmediumd.proto.

Metodi Descrizione
ListStations Elenca tutte le stazioni collegate a Wmediumd.
LoadConfig Carica la configurazione di Wmediumd con un determinato file.
ReloadConfig Ricarica il file di configurazione Wmediumd attualmente caricato.
SetCivicloc Imposta la posizione civica (ad esempio l'indirizzo postale) della stazione specifica.
SetLci Imposta LCI (latitudine, longitudine, altitudine) della stazione specifica.
SetPosition Imposta la posizione della stazione nello spazio bidimensionale.
SetSnr Imposta il valore del rapporto segnale/rumore (SNR) (0-255) tra due stazioni.
SetTxpower Imposta l'alimentazione in trasmissione (potenza TX) della stazione specifica.
StartPcap Inizia a acquisire tutti i frame trasmessi e archiviali in un file .pcap.
StopPcap Interrompi e finalizza l'acquisizione dei pacchetti corrente.

wmediumd_control

Per i dispositivi con Android 13 o versioni precedenti, utilizza lo strumentowmediumd_control per controllare il mezzo wireless nei dispositivi Cuttlefish. La tabella seguente elenca i sottocomandi in wmediumd_control.

Subcomandi Descrizione
list_stations Elenca tutte le stazioni collegate a Wmediumd.
reload_config [CONFIG_FILE_PATH] Ricarica la configurazione di Wmediumd con CONFIG_FILE_PATH . Se CONFIG_FILE_PATH viene omesso, ricarica il file di configurazione attualmente caricato.
set_civicloc MAC_ADDR CIVICLOC Imposta la posizione civica (ad esempio, l'indirizzo postale) della stazione specifica.
set_lci MAC_ADDR LCI Imposta LCI (latitudine, longitudine, altitudine) della stazione specifica.
set_position MAC_ADDR X_POSITION Y_POSITION Imposta la posizione della stazione nello spazio bidimensionale.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Imposta il valore (0-255) del rapporto segnale/rumore (SNR) tra due stazioni.
start_pcap PCAP_FILE_PATH Inizia a acquisire tutti i frame trasmessi e salvali in un file .pcap.
stop_pcap Interrompi e completa l'acquisizione corrente dei pacchetti.

Utilizza OpenWRT

La funzionalità Wi-Fi di Cuttlefish supporta l'utilizzo di OpenWRT per la virtualizzazione dei punti di accesso Wi-Fi (AP). L'implementazione di OpenWRT per Cuttlefish è in fase di sviluppo al livello platform/external/openwrt-prebuilts/.

Per connetterti a OpenWRT, utilizza le informazioni riportate nella tabella seguente. Se non aggiungi opzioni al momento dell'avvio di Cuttlefish, l'ID dispositivo è cvd-1 e l'indirizzo IP WAN di OpenWRT è 192.168.94.2 o 192.168.96.2.

Tipo di connessione Destinazione
SSH root@OPENWRT_WAN_IP_ADDRESS
Pagina web https://localhost:1443/devices/DEVICE_ID/openwrt
Pagina web (legacy) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Per i dispositivi con Android 14 o versioni successive, utilizza il servizio OpenwrtControlService per controllare e configurare gli AP Wi-Fi virtualizzati. Per informazioni dettagliate su come controllare questo servizio utilizzando l'API REST o l'interfaccia a riga di comando, consulta Cuttlefish: controllo dell'ambiente.

La tabella seguente elenca i metodi in OpenwrtControlService. Per informazioni dettagliate sui metodi, consulta openwrt_control.proto.

Metodi Descrizione
LuciRpc Invia la chiamata RPC all'interfaccia web Luci in OpenWRT.
OpenwrtIpAddr Ottieni l'indirizzo IP WAN di OpenWRT. Utilizza questo indirizzo per connettere un'istanza OpenWRT tramite SSH o un'interfaccia web.