Wi-Fi

Halaman ini menjelaskan cara mengontrol Wi-Fi di perangkat Cuttlefish.

Menggunakan Wmediumd

Fitur Wi-Fi Cuttlefish menggunakan Wmediumd, alat simulasi, untuk menyimulasikan media nirkabel. Wmediumd mengelola pengiriman paket Wi-Fi antara dua instance Cuttlefish atau antara instance Cuttlefish dan instance OpenWRT. Wmedium untuk Cuttlefish diimplementasikan di /platform/external/wmediumd/.

Untuk mengontrol antarmuka Wmediumd, gunakan alat WmediumdService (Android 14 atau yang lebih baru) atau wmedium_control (Android 13 atau yang lebih lama).

WmediumdService

Untuk perangkat yang menjalankan Android 14 atau yang lebih baru, gunakan WmediumdService untuk mengontrol alat Wmedium. Untuk mengetahui detail cara mengontrol layanan ini menggunakan REST API atau antarmuka command line (CLI), lihat Cuttlefish: Kontrol Lingkungan.

Tabel berikut mencantumkan metode di WmediumdService. Untuk informasi mendetail tentang metode, lihat wmediumd.proto.

Metode Deskripsi
ListStations Mencantumkan semua stasiun yang terpasang ke Wmediumd.
LoadConfig Memuat konfigurasi Wmediumd dengan file tertentu.
ReloadConfig Memuat ulang file konfigurasi Wmediumd yang saat ini dimuat.
SetCivicloc Menetapkan lokasi sipil (misalnya, alamat pos) stasiun tertentu.
SetLci Menetapkan LCI (latitude, longitude, altitude) stasiun tertentu.
SetPosition Menetapkan posisi stasiun dalam ruang dua dimensi.
SetSnr Menetapkan nilai rasio sinyal terhadap noise (SNR) (0-255) antara dua stasiun.
SetTxpower Menetapkan daya transmisi (daya TX) stasiun tertentu.
StartPcap Mulai menangkap semua frame yang dikirim ke udara dan menyimpannya ke file .pcap.
StopPcap Menghentikan dan menyelesaikan penangkapan paket saat ini.

wmediumd_control

Untuk perangkat yang menjalankan Android 13 atau yang lebih lama, gunakan alat wmediumd_control untuk mengontrol media nirkabel di perangkat Cuttlefish. Tabel berikut mencantumkan subperintah di wmediumd_control.

Subperintah Deskripsi
list_stations Mencantumkan semua stasiun yang terpasang ke Wmediumd.
reload_config [CONFIG_FILE_PATH] Memuat ulang konfigurasi Wmediumd dengan CONFIG_FILE_PATH . Jika CONFIG_FILE_PATH dihilangkan, muat ulang file konfigurasi yang saat ini dimuat.
set_civicloc MAC_ADDR CIVICLOC Menetapkan lokasi sipil (misalnya, alamat pos) stasiun tertentu.
set_lci MAC_ADDR LCI Menetapkan LCI (latitude, longitude, altitude) stasiun tertentu.
set_position MAC_ADDR X_POSITION Y_POSITION Menetapkan posisi stasiun dalam ruang dua dimensi.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Menetapkan nilai rasio sinyal terhadap noise (SNR) (0-255) antara dua stasiun.
start_pcap PCAP_FILE_PATH Mulai menangkap semua frame yang dikirim ke udara dan menyimpannya ke file .pcap.
stop_pcap Menghentikan dan menyelesaikan penangkapan paket saat ini.

Menggunakan OpenWRT

Fitur Wi-Fi Cuttlefish mendukung penggunaan OpenWRT untuk memvirtualisasikan titik akses (AP) Wi-Fi. Implementasi OpenWRT untuk Cuttlefish berada di platform/external/openwrt-prebuilts/.

Untuk terhubung ke OpenWRT, gunakan informasi dalam tabel berikut. Jika Anda tidak menambahkan opsi apa pun saat meluncurkan Cuttlefish, ID perangkat adalah cvd-1, dan alamat IP WAN OpenWRT adalah 192.168.94.2 atau 192.168.96.2.

Jenis koneksi Tujuan
SSH root@OPENWRT_WAN_IP_ADDRESS
Halaman web https://localhost:1443/devices/DEVICE_ID/openwrt
Halaman web (lama) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Untuk perangkat yang menjalankan Android 14 atau yang lebih baru, gunakan layanan OpenwrtControlService untuk mengontrol dan mengonfigurasi AP Wi-Fi yang divirtualisasikan. Untuk mengetahui detail cara mengontrol layanan ini menggunakan REST API atau CLI, lihat Cuttlefish: Kontrol Lingkungan.

Tabel berikut mencantumkan metode di OpenwrtControlService. Untuk informasi mendetail tentang metode, lihat openwrt_control.proto.

Metode Deskripsi
LuciRpc Mengirim panggilan RPC ke antarmuka web Luci di OpenWRT.
OpenwrtIpAddr Mendapatkan alamat IP WAN OpenWRT. Gunakan alamat ini untuk menghubungkan instance OpenWRT melalui SSH atau antarmuka web.