หน้านี้จะอธิบายวิธีควบคุม Wi-Fi ในอุปกรณ์ Cuttlefish
ใช้ Wmediumd
ฟีเจอร์ Wi-Fi ของ Cuttlefish ใช้ Wmediumd ซึ่งเป็นเครื่องมือจำลอง
เพื่อจำลองสื่อไร้สาย Wmediumd จัดการการนำส่งแพ็กเก็ต Wi-Fi
ระหว่างอินสแตนซ์ Cuttlefish 2 รายการ หรือระหว่างอินสแตนซ์ Cuttlefish กับ
อินสแตนซ์ OpenWRT มีการติดตั้งใช้งาน Wmedium สำหรับ Cuttlefish ใน
/platform/external/wmediumd/
หากต้องการควบคุมอินเทอร์เฟซ Wmediumd ให้ใช้เครื่องมือ WmediumdService
(Android 14 ขึ้นไป) หรือ wmedium_control
(Android 13 ลงไป)
WmediumdService
สำหรับอุปกรณ์ที่ใช้ Android 14 ขึ้นไป ให้ใช้
WmediumdService
เพื่อควบคุมเครื่องมือ Wmedium ดูรายละเอียดเกี่ยวกับวิธีควบคุม
บริการนี้โดยใช้ REST API หรืออินเทอร์เฟซบรรทัดคำสั่ง (CLI) ได้ที่
Cuttlefish: การควบคุมสภาพแวดล้อม
ตารางต่อไปนี้แสดงเมธอดใน WmediumdService
ดูข้อมูลโดยละเอียดเกี่ยวกับวิธีการได้ที่
wmediumd.proto
วิธีการ | คำอธิบาย |
---|---|
ListStations |
แสดงสถานีทั้งหมดที่เชื่อมต่อกับ Wmediumd |
LoadConfig |
โหลดการกำหนดค่า Wmediumd ด้วยไฟล์ที่ระบุ |
ReloadConfig |
โหลดไฟล์การกำหนดค่า Wmediumd ที่โหลดอยู่ในปัจจุบันซ้ำ |
SetCivicloc
|
ตั้งค่าสถานที่ตั้งทางพลเมือง (เช่น ที่อยู่ทางไปรษณีย์) ของสถานีที่เฉพาะเจาะจง |
SetLci
|
ตั้งค่า LCI (ละติจูด ลองจิจูด ระดับความสูง) ของสถานีที่เฉพาะเจาะจง |
SetPosition |
กำหนดตำแหน่งของสถานีในพื้นที่ 2 มิติ |
SetSnr
|
ตั้งค่าอัตราส่วนสัญญาณต่อสัญญาณรบกวน (SNR) (0-255) ระหว่างสถานี 2 สถานี |
SetTxpower |
ตั้งค่ากำลังส่ง (TX power) ของสถานีที่ต้องการ |
StartPcap
|
เริ่มบันทึกเฟรมทั้งหมดที่ส่งออกอากาศและจัดเก็บไว้ในไฟล์ .pcap |
StopPcap |
หยุดและสิ้นสุดการดักจับแพ็กเก็ตปัจจุบัน |
wmediumd_control
สำหรับอุปกรณ์ที่ใช้ Android 13 หรือต่ำกว่า ให้ใช้เครื่องมือ
wmediumd_control
เพื่อควบคุมสื่อไร้สายในอุปกรณ์ Cuttlefish
ตารางต่อไปนี้แสดงรายการคำสั่งย่อยใน wmediumd_control
คำสั่งย่อย | คำอธิบาย |
---|---|
list_stations
|
แสดงสถานีทั้งหมดที่เชื่อมต่อกับ Wmediumd |
reload_config
[CONFIG_FILE_PATH ]
|
โหลดการกำหนดค่า Wmediumd ซ้ำด้วย CONFIG_FILE_PATH หากไม่มี CONFIG_FILE_PATH ให้โหลดไฟล์การกำหนดค่าที่โหลดอยู่ในปัจจุบันซ้ำ |
set_civicloc MAC_ADDR
CIVICLOC |
ตั้งค่าสถานที่ตั้งทางพลเมือง (เช่น ที่อยู่ทางไปรษณีย์) ของสถานีที่เฉพาะเจาะจง |
set_lci MAC_ADDR
LCI |
ตั้งค่า LCI (ละติจูด ลองจิจูด ระดับความสูง) ของสถานีที่ต้องการ |
set_position MAC_ADDR
X_POSITION
Y_POSITION |
กำหนดตำแหน่งของสถานีใน พื้นที่ 2 มิติ |
set_snr MAC_ADDR1
MAC_ADDR2
SNR_VALUE |
ตั้งค่าอัตราส่วนสัญญาณต่อสัญญาณรบกวน (SNR) (0-255) ระหว่างสถานี 2 สถานี |
start_pcap
PCAP_FILE_PATH
|
เริ่มบันทึกเฟรมทั้งหมด
ที่ส่งออกอากาศและจัดเก็บไว้ใน
ไฟล์ .pcap |
stop_pcap
|
หยุดและสิ้นสุดการดักจับแพ็กเก็ตปัจจุบัน |
ใช้ OpenWRT
ฟีเจอร์ Wi-Fi ของ Cuttlefish รองรับการใช้ OpenWRT เพื่อจำลองจุดเข้าใช้งาน (AP) Wi-Fi
การติดตั้งใช้งาน OpenWRT สำหรับ Cuttlefish อยู่ที่
platform/external/openwrt-prebuilts/
หากต้องการเชื่อมต่อกับ OpenWRT ให้ใช้ข้อมูลในตารางต่อไปนี้ หากคุณ
ไม่ได้เพิ่มตัวเลือกใดๆ เมื่อเปิดใช้ Cuttlefish รหัสอุปกรณ์จะเป็น
cvd-1
และที่อยู่ IP ของ WAN ใน OpenWRT จะเป็น 192.168.94.2
หรือ 192.168.96.2
ประเภทการเชื่อมต่อ | ปลายทาง |
---|---|
SSH | root@OPENWRT_WAN_IP_ADDRESS |
หน้าเว็บ | https://localhost:1443/devices/DEVICE_ID/openwrt |
หน้าเว็บ (เดิม) | https://OPENWRT_WAN_IP_ADDRESS |
OpenwrtControlService
สำหรับอุปกรณ์ที่ใช้ Android 14 ขึ้นไป หากต้องการควบคุม
และกำหนดค่า AP Wi-Fi เสมือน ให้ใช้
OpenwrtControlService
ดูรายละเอียดเกี่ยวกับวิธีควบคุมบริการนี้
โดยใช้ REST API หรือ CLI ได้ที่
Cuttlefish: การควบคุมสภาพแวดล้อม
ตารางต่อไปนี้แสดงเมธอดใน OpenwrtControlService
ดูข้อมูลโดยละเอียดเกี่ยวกับวิธีการได้ที่
openwrt_control.proto
วิธีการ | คำอธิบาย |
---|---|
LuciRpc |
ส่งการเรียก RPC ไปยังอินเทอร์เฟซเว็บ Luci ใน OpenWRT |
OpenwrtIpAddr
|
รับที่อยู่ IP ของ WAN สำหรับ OpenWRT ใช้ที่อยู่นี้เพื่อเชื่อมต่ออินสแตนซ์ OpenWRT ผ่าน SSH หรืออินเทอร์เฟซเว็บ |