สร้างอุปกรณ์เสมือนจริงกรณี

1. บทนำ

Matter เป็นโปรโตคอลการเชื่อมต่อที่จะมอบโอกาสที่น่าตื่นเต้นในการพัฒนาอุปกรณ์อัจฉริยะ ใน Codelab นี้ คุณจะได้สร้างอุปกรณ์ Matter เครื่องแรกโดยใช้ทรัพยากรจาก Matter SDK

ดูข้อมูลเกี่ยวกับ Matter ได้ที่ศูนย์นักพัฒนาแอป Google Home หรือเว็บไซต์ Connectivity Standards Alliance

สิ่งที่คุณจะได้เรียนรู้

  • วิธีตั้งค่าสภาพแวดล้อมบิลด์ของ Matter
  • วิธีสร้างอุปกรณ์ Matter เสมือนที่ทำงานในคอมพิวเตอร์
  • วิธีจัดเตรียมและควบคุมอุปกรณ์ Matter เสมือนด้วย Google Home

สิ่งที่ต้องมี

  • ฮับ คืออุปกรณ์ Google Nest ที่รองรับ Matter เช่น Nest Hub (รุ่นที่ 2)
  • เครื่อง Linux ที่ใช้ระบบหน้าต่าง X11
  • Docker
  • Git
  • ความรู้พื้นฐานเกี่ยวกับ Linux
    • โปรดทราบว่า Shell สมมติสำหรับคำสั่งทั้งหมดใน Codelab นี้คือ BASH

2. ตั้งค่าสภาพแวดล้อมของคุณ

ตรวจสอบฮาร์ดแวร์

การติดตั้ง Docker นี้ไม่รองรับคอมพิวเตอร์ Windows และ macOS คุณจะติดตั้งและสร้าง Matter ด้วยตนเองใน macOS ได้

คำสั่งเหล่านี้จะถือว่าเครื่อง Linux ของคุณใช้ระบบหน้าต่าง X11 หากเครื่อง Linux ของคุณใช้ Wayland ให้ตรวจสอบว่าคุณได้ติดตั้ง X.Org แล้วด้วย

ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์

  1. ติดตั้ง Docker Engine (อย่าใช้ Docker Desktop)
  2. โคลน SDK ของ Matter และจดบันทึกคอมมิตที่เรากำลังใช้อยู่
    git clone https://github.com/project-chip/connectedhomeip.git
    cd connectedhomeip
    git show
    commit f2f3d0eb03ba5bea32b22f19982c402a8c1c9063
    
  3. เรียกใช้คอนเทนเนอร์บิลด์โดยใช้อิมเมจ CI สาธารณะของ SDK และเรียกใช้อุปกรณ์เสมือนที่สร้างใหม่จากคอนเทนเนอร์นี้ ระบุตำแหน่งภาพเพื่อใช้การจับคู่ SDK เวอร์ชันของเราดังนี้
    buildimage=$(grep chip-build .github/workflows/chef.yaml | head -n 1 | awk '{print $2}')
    echo $buildimage
    
    หากใช้คอมมิตเดียวกัน คุณควรเห็น ghcr.io/project-chip/chip-build:66ก่อนอื่น ให้ส่งต่อพอร์ต xhost เพื่อให้เราใช้แอปพลิเคชัน UI ได้ในภายหลัง
    xhost local:1000
    
    จากนั้น เริ่มต้นคอนเทนเนอร์ด้วยทรัพยากรที่เหมาะสมที่ส่งต่อจากโฮสต์ (จุดชำระเงิน SDK, การสร้างเครือข่าย และทรัพยากร Display/comms)
    docker run -it --ipc=host --net=host -e DISPLAY --name matter-container --mount source=$(pwd),target=/workspace,type=bind   --workdir="/workspace" $buildimage /bin/bash
    

ทำความเข้าใจคำสั่ง Docker และตัวเลือกที่เราส่งไปให้

  • xhost local:1000 ช่วยให้ X Window System รับการเชื่อมต่อจากโฮสต์ในเครื่องบนพอร์ต 1000 ได้ จึงทำให้ใช้อินเทอร์เฟซผู้ใช้แบบกราฟิกได้
  • docker run … image จะเรียกใช้อิมเมจที่ระบุ โดยดึงจากรีจิสทรีของ Docker หากจำเป็น
  • --ipc=host อนุญาตให้ Docker แชร์เนมสเปซการสื่อสารระหว่างโปรเซสกับเครื่องโฮสต์
  • --net=host อนุญาตให้ Docker ใช้สแต็กเครือข่ายของโฮสต์ภายในคอนเทนเนอร์ได้ ซึ่งจำเป็นต้องใช้เพื่อส่งผ่านการรับส่งข้อมูล mDNS จากโฮสต์ไปยังคอนเทนเนอร์และแชร์การแสดงผลโฮสต์ X11
  • -e DISPLAY จะส่งออก $DISPLAY ไปยังโฮสต์ ซึ่งจะให้สิทธิ์เข้าถึงอินเทอร์เฟซกราฟิกของระบบ ซึ่งจำเป็นต่อการเรียกใช้เครื่องมือ ZAP เมื่อแก้ไขคลัสเตอร์ Matter
  • -it เรียกใช้ Docker ด้วยเทอร์มินัลแบบอินเทอร์แอกทีฟ (tty) แทนที่จะเป็นกระบวนการเบื้องหลัง
  • --mount ต่อเชื่อม SDK ที่เราตรวจสอบไปก่อนหน้านี้ในคอนเทนเนอร์
  • --workdir จะกำหนดไดเรกทอรีที่ใช้งานอยู่เมื่อเรียกใช้ไดเรกทอรี SDK ที่ต่อเชื่อมของเรา

หรือคุณอาจเรียกใช้อินสแตนซ์เซสชันเทอร์มินัลที่ 2 ดังนี้

user@host> docker exec -it matter-container /bin/bash
$

หยุดและเริ่มคอนเทนเนอร์ Docker ของ Matter

เมื่อใดก็ตามที่เรียกใช้คำสั่ง docker run คุณจะสร้างคอนเทนเนอร์ใหม่ที่มีอิมเมจที่ระบุ เมื่อทำเช่นนี้ ข้อมูลเก่าที่บันทึกไว้ในอินสแตนซ์คอนเทนเนอร์ก่อนหน้าจะหายไป บางครั้งคุณอยากให้สิ่งนี้เกิดขึ้น เพราะจะช่วยให้คุณเริ่มต้นการติดตั้งใหม่ได้ แต่ก็มีบางครั้งที่คุณต้องการบันทึกการกำหนดค่างานและสภาพแวดล้อมระหว่างเซสชัน

ด้วยเหตุนี้ หลังจากที่สร้างคอนเทนเนอร์แล้ว คุณอาจหยุดคอนเทนเนอร์ไว้เพื่อไม่ให้งานสูญหายได้

user@host> docker stop matter-container

เมื่อพร้อมที่จะเรียกใช้อีกครั้ง ให้เริ่มคอนเทนเนอร์และเปิดหน้าต่างเทอร์มินัลโดยทำดังนี้

user@host> docker start matter-container
user@host> docker exec -it matter-container /bin/bash

คุณอาจเปิดเซสชันเทอร์มินัลเพิ่มเติมไปยังคอนเทนเนอร์ด้วยสิ่งต่อไปนี้

user@host> docker exec -it matter-container /bin/bash

หรือเริ่มเซสชันรูทโดยใช้สิ่งต่อไปนี้

user@host> docker exec -u 0 -it matter-container /bin/bash

การตั้งค่า Matter เริ่มต้น

เริ่มต้น SDK

เริ่มต้น Matter SDK การดำเนินการนี้อาจใช้เวลาหลายนาทีจึงจะเสร็จสมบูรณ์

source scripts/bootstrap.sh
python3 scripts/checkout_submodules.py --shallow --platform linux

เริ่มต้น SDK ของ Matter แล้ว หากต้องการเริ่มต้นสภาพแวดล้อมใหม่อย่างรวดเร็วในอนาคต ให้เรียกใช้คำสั่งต่อไปนี้

sudo docker exec -it  matter-container /bin/bash
source ./scripts/activate.sh

แชร์ไฟล์ระหว่างโฮสต์และคอนเทนเนอร์

ก่อนหน้านี้เราได้เข้าถึงไฟล์ในเครื่องโฮสต์ของคุณจากในคอนเทนเนอร์โดยใช้ Bind mount นอกจากนี้ คุณยังเขียนไฟล์ไปยังไดเรกทอรีที่ต่อเชื่อมจากภายในคอนเทนเนอร์เพื่อขอสิทธิ์เข้าถึงจากโฮสต์ได้ด้วย

โดยทั่วไปแล้ว ให้ใช้การต่อเชื่อม Bind ต่อเชื่อมโดยการเรียกใช้คอนเทนเนอร์ด้วยอาร์กิวเมนต์ --mount source=$(pwd),target=/workspace,type=bind เพิ่มเติมเพื่อต่อเชื่อมไดเรกทอรีที่ใช้งานอยู่ในปัจจุบันในคอนเทนเนอร์ที่ /workspace

user@host> docker run -it --ipc=host --net=host -e DISPLAY --name matter-container --mount source=$(pwd),target=/workspace,type=bind us-docker.pkg.dev/nest-matter/docker-repo/virtual-device-image:latest

ต้องจัดการสิทธิ์ของผู้ใช้คอนเทนเนอร์ในไดเรกทอรีที่ต่อเชื่อมในโฮสต์

รับรหัสกลุ่มของผู้ใช้คอนเทนเนอร์จากในคอนเทนเนอร์

$ id
uid=1000(matter) gid=1000(matter) groups=1000(matter)

เปิดเซสชันเทอร์มินัลอื่นในโฮสต์คอนเทนเนอร์และตั้งค่าไดเรกทอรีการทำงานไปยังไดเรกทอรีที่คอนเทนเนอร์ต่อเชื่อม

ตั้งค่ากลุ่มสำหรับไฟล์ในไดเรกทอรีที่ต่อเชื่อมไปยังกลุ่มของผู้ใช้คอนเทนเนอร์แบบวนซ้ำ

user@host> sudo chgrp -R 1000 .

ให้สิทธิ์ที่ต้องการในไดเรกทอรีแก่กลุ่ม ตัวอย่างนี้ให้สิทธิ์อ่าน เขียน และเรียกใช้กลุ่มของผู้ใช้คอนเทนเนอร์กับไฟล์ทั้งหมดในไดเรกทอรีที่ต่อเชื่อม

user@host> sudo chmod -R g+rwx .

โปรดทราบว่าคำสั่งเหล่านี้ไม่ส่งผลต่อสิทธิ์ของไฟล์ใหม่ที่ผู้ใช้โฮสต์สร้างขึ้น อย่าลืมอัปเดตสิทธิ์ของไฟล์ใหม่ที่สร้างในโฮสต์ตามที่จำเป็น

คุณสามารถเพิ่มผู้ใช้โฮสต์ลงในกลุ่มของผู้ใช้คอนเทนเนอร์เพื่อรับช่วงสิทธิ์ในไฟล์ที่สร้างโดยผู้ใช้คอนเทนเนอร์ได้

user@host> currentuser=$(whoami)
user@host> sudo usermod -a -G 1000 $currentuser

3. คอนโซลของนักพัฒนาซอฟต์แวร์ Google Home

Developer Console ของ Google Home คือเว็บแอปพลิเคชันที่คุณจัดการการผสานรวม Matter กับ Google Home

อุปกรณ์ Matter ใดก็ตามที่ผ่านการรับรอง Matter ของ Connectivity Standards Alliance (Alliance) สามารถใช้ได้ในระบบนิเวศของ Google Home อุปกรณ์ที่อยู่ระหว่างการพัฒนาที่ยังไม่ได้รับการรับรองสามารถนำมาใช้ในระบบนิเวศของ Google Home ได้ภายใต้เงื่อนไขบางประการ ดูข้อมูลเพิ่มเติมในข้อจำกัดการจับคู่

สร้างโปรเจ็กต์นักพัฒนาซอฟต์แวร์

โดยไปที่ Google Home Developer Console

  1. คลิกสร้างโครงการ
  2. กรอกชื่อโปรเจ็กต์ที่ไม่ซ้ำกัน แล้วคลิกสร้างโปรเจ็กต์ กล่องโต้ตอบสร้างโปรเจ็กต์ใหม่
  3. คลิก + เพิ่มการผสานรวม ซึ่งจะนำคุณไปยังหน้าจอทรัพยากร Matter ซึ่งคุณจะดูเอกสารประกอบการพัฒนา Matter และอ่านเกี่ยวกับเครื่องมือบางอย่างได้
  4. เมื่อพร้อมที่จะดำเนินการต่อแล้ว ให้คลิกถัดไป: พัฒนา ซึ่งจะแสดงหน้ารายการตรวจสอบ Matter
  5. คลิกถัดไป: ตั้งค่า
  6. ในหน้าตั้งค่า ให้ป้อนชื่อผลิตภัณฑ์
  7. คลิกเลือกประเภทอุปกรณ์ และเลือกประเภทอุปกรณ์จากเมนูแบบเลื่อนลง (ในกรณีนี้คือ Light)
  8. ในรหัสผู้ให้บริการ (VID) ให้เลือกทดสอบ VID แล้วเลือก 0xFFF1 จากเมนูแบบเลื่อนลงของการทดสอบ VID ในรหัสผลิตภัณฑ์ (PID) ให้ป้อน 0x8000 แล้วคลิกบันทึกและ ดำเนินการต่อ จากนั้นคลิกบันทึกในหน้าถัดไป ใช้ค่า VID/PID ที่แน่นอนเหล่านี้ ขั้นตอน Codelab ภายหลังจะขึ้นอยู่กับค่าเหล่านี้
    การตั้งค่าโปรเจ็กต์
  9. ตอนนี้คุณจะเห็นการผสานรวมในส่วนการผสานรวม Matter
  10. รีบูตฮับเพื่อให้แน่ใจว่าฮับได้รับการกำหนดค่าโปรเจ็กต์การผสานรวม Matter ล่าสุด หากต้องเปลี่ยน VID หรือ PID ในภายหลัง คุณจะต้องรีบูตหลังจากบันทึกโปรเจ็กต์ด้วยเพื่อให้การเปลี่ยนแปลงมีผล ดูวิธีรีบูตแบบทีละขั้นตอนได้ที่รีสตาร์ทอุปกรณ์ Google Nest หรือ Google Wifi

4. สร้างอุปกรณ์

ตัวอย่างทั้งหมดใน Matter จะอยู่ในโฟลเดอร์ examples ในที่เก็บของ GitHub มีตัวอย่างให้ใช้งานมากมาย แต่ Codelab นี้จะมุ่งเน้นที่เชฟ

เชฟเป็นทั้ง 2 อย่าง

  • ตัวอย่างแอปที่ให้บริการอินเทอร์เฟซเทอร์มินัล และมีฟีเจอร์การรวม ซึ่งพบในแอป examples/shell ด้วย
  • สคริปต์ที่ใช้หลักการกำหนดค่ามากกว่าการกำหนดค่ามาตรฐานเพื่อรวมงานทั่วไปหลายอย่างที่จำเป็นสำหรับการพัฒนาอุปกรณ์ที่เปิดใช้ Matter

ไปที่โฟลเดอร์ตัวอย่าง Chef และสร้าง Matter แรกของคุณ

$ cd examples/chef
$ ./chef.py -zbr -d rootnode_dimmablelight_bCwGYSDpoe -t linux

เชฟมีตัวเลือก 2-3 รายการที่สามารถดูได้ด้วยการเรียกใช้ chef.py -h ตัวเลือกที่เรากำลังใช้อยู่มีดังนี้

  • -d: ระบุประเภทอุปกรณ์ที่จะใช้ ในกรณีนี้ เราจะสร้างแอปจัดแสงที่มีส่วนควบคุมการเปิด/ปิดและระดับ
  • -z: เรียกใช้เครื่องมือ ZAP เพื่อสร้างไฟล์ต้นฉบับที่ใช้ประเภทอุปกรณ์นั้นๆ กล่าวคือ ZAP จะสร้างโค้ดโดยอัตโนมัติเพื่อรวมไว้ในบิลด์ที่กำหนดแสง (โมเดลข้อมูล) และการโต้ตอบกับอุปกรณ์อื่นๆ (โมเดลการโต้ตอบ) โดยพิจารณาจากการจัดแสงที่คุณเลือก
  • -b: บิลด์
  • -r: [ไม่บังคับ] เปิดใช้เซิร์ฟเวอร์ RPC ในอุปกรณ์ Matter เพื่อให้คอมโพเนนต์อื่นๆ (เช่น GUI) สื่อสารกับอุปกรณ์เพื่อตั้งค่าและเรียกแอตทริบิวต์โมเดลข้อมูลได้
  • -t linux: แพลตฟอร์มเป้าหมาย แพลตฟอร์มสนับสนุนคือ linux, nrfconnect และ esp32 คุณอาจเรียกใช้ ./chef.py -h เพื่อดูคำสั่งที่ใช้ได้และแพลตฟอร์มเป้าหมายที่รองรับทั้งหมด ใช้ linux สำหรับอุปกรณ์ Matter เสมือน

เรียกใช้อุปกรณ์

Matter ใช้พอร์ต TCP/UDP 5540 ดังนั้นหากมีไฟร์วอลล์ในคอมพิวเตอร์ ให้ปิดหรืออนุญาตให้มีการเชื่อมต่อ TCP/UDP ขาเข้าบนพอร์ต 5540

เรียกใช้อุปกรณ์เสมือนในคอนเทนเนอร์ด้วย

$ ./linux/out/rootnode_dimmablelight_bCwGYSDpoe
   [1648589956496] [14264:16538181] CHIP: [DL] _Init]
...
[1648562026.946882][433632:433632] CHIP:SVR: SetupQRCode: [MT:Y3.13Y2N00KA0648G00]
[1648562026.946893][433632:433632] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
[1648562026.946901][433632:433632] CHIP:SVR: https://project-chip.github.io/connectedhomeip/qrcode.html?data=MT%3AY3.13Y2N00KA0648G00
[1648562026.946915][433632:433632] CHIP:SVR: Manual pairing code: [34970112332]

ปล่อยให้อุปกรณ์ทำงานต่อ ตอนนี้เราจะหันไปสนใจแอป Google Home เพื่อให้อุปกรณ์ของคุณใช้งาน Google Home ได้

หยุดอุปกรณ์

หากต้องการหยุดอุปกรณ์ คุณสามารถออกจากโปรแกรมด้วยการกด Ctrl+C หากยังไม่ออกจากแอปพลิเคชัน คุณอาจต้องใช้ Ctrl+\ ด้วย

ข้อมูลเข้าสู่ระบบสำหรับอุปกรณ์เสมือนของคุณจะจัดเก็บไว้ในไดเรกทอรี /tmp/ ในไฟล์ที่ขึ้นต้นด้วย chip นำหน้า

หากคุณต้องการทำซ้ำขั้นตอนการจัดเตรียมทั้งหมดตั้งแต่ต้น คุณจะต้องลบไฟล์เหล่านั้นโดยเรียกใช้คำสั่งต่อไปนี้

$ rm /tmp/chip*

5. ค่าคอมมิชชันอุปกรณ์

หมายเหตุ: ขั้นตอนนี้จะสำเร็จในกรณีที่คุณได้ตั้งค่าโปรเจ็กต์ใน Google Home Developer Console แล้วเท่านั้น

Nest Hub

คุณต้องมีฮับเพื่อให้อุปกรณ์ของคุณทำงานบนผ้า Matter อุปกรณ์ Google Nest เช่น Nest Hub (รุ่นที่ 2) ที่รองรับ Matter และจะทำหน้าที่เป็น Border Router สำหรับอุปกรณ์ที่เปิดใช้ Thread และเป็นเส้นทางการดำเนินการตามคำสั่งซื้อภายในสำหรับการกำหนดเส้นทาง Intent ของสมาร์ทโฮม

โปรดดูรายการนี้เพื่อดูว่าฮับใดที่รองรับ Matter

ก่อนเริ่มใช้กระบวนการทำงาน โปรดตรวจสอบให้แน่ใจว่า

  • ฮับจะจับคู่กับบัญชี Google เดียวกับที่คุณใช้ลงชื่อเข้าใช้คอนโซล Google Home
  • ฮับอยู่ในเครือข่าย Wi-Fi เดียวกันกับคอมพิวเตอร์ที่คุณใช้ในการเรียกใช้อุปกรณ์ Matter เสมือน
  • ฮับอยู่ในโครงสร้างเดียวกับที่คุณใช้ในแอป Google Home ("บ้าน" ในกราฟของ Google Home แสดงถึงโครงสร้างของคุณ)

รับคิวอาร์โค้ด

กระบวนการจัดเตรียมจำเป็นต้องมีข้อมูลการเริ่มต้นใช้งาน Matter ผ่านคิวอาร์โค้ด ตรวจสอบเอาต์พุตคอนโซลของแอปพลิเคชัน Matter ซึ่งจะมีลิงก์สำหรับคิวอาร์โค้ดที่เกี่ยวข้องกับการมอบหมายงาน

ดำเนินการค่าคอมมิชชัน

  1. เปิดแอป Google Home
  2. แตะ + ที่มุมบนซ้าย
  3. แตะตั้งค่าอุปกรณ์
  4. แตะอุปกรณ์ใหม่
  5. เลือกบ้านแล้วแตะถัดไป
  6. แอป Google Home จะสแกนหาอุปกรณ์ของคุณ หากได้รับข้อความแจ้งที่มีข้อความ "พบอุปกรณ์ Matter..." ให้แตะ "ใช่" หรือแตะตั้งค่าอุปกรณ์อื่น แล้วเลือกอุปกรณ์ Matter จากรายการอุปกรณ์
  7. เล็งกล้องไปที่คิวอาร์โค้ดของอุปกรณ์หรือคิวอาร์โค้ดที่เว็บไซต์สร้างขึ้น
  8. ดำเนินการจับคู่ต่อตามที่ระบุไว้ในขั้นตอนของแอป Google Home

เมื่อทําตามขั้นตอนเหล่านี้เสร็จแล้ว อุปกรณ์เสมือน Matter ควรทํางานได้สําเร็จ และควรปรากฏเป็นไอคอนใหม่ในแอป Google Home

หลอดไฟที่จับคู่ในแอป Google Home

การแก้ปัญหา

การจัดเตรียมอุปกรณ์ไม่สำเร็จเนื่องจาก "ปัญหาการเชื่อมต่อ" หรือ "ไม่สามารถติดต่อ Google" ข้อความแสดงข้อผิดพลาด

  • ตรวจสอบว่าคุณได้สร้างโปรเจ็กต์ที่มีชุดค่าผสม VID/PID ที่ถูกต้อง ในคอนโซล Google Home และไม่มีโปรเจ็กต์อื่นๆ ที่ใช้ชุดค่าผสม VID/PID เดียวกัน

การค่าคอมมิชชันล้มเหลวหลังจาก "สแกนอุปกรณ์" เป็นเวลานาน

6. ควบคุมอุปกรณ์

เมื่ออุปกรณ์ที่เปิดใช้ Matter ของคุณได้รับการมอบหมายเป็นหลอดไฟและปรากฏในแอป Google Home เรียบร้อยแล้ว คุณอาจทดสอบการควบคุมอุปกรณ์ด้วยวิธีต่างๆ ดังนี้

  • การใช้ Google Assistant
  • ใช้แอป Google Home

Google Assistant

ใช้ Google Assistant ในโทรศัพท์หรือฮับเพื่อสลับสถานะของอุปกรณ์จากคำสั่งเสียง เช่น พูดว่า "Ok Google เปิดไฟของฉัน"

ดูตัวอย่างคำสั่งเพิ่มเติมได้ในส่วนควบคุมอุปกรณ์สมาร์ทโฮมด้วยคำสั่งเสียงของควบคุมอุปกรณ์สมาร์ทโฮมที่เพิ่มลงในแอป Google Home

แอป Google Home

คุณอาจแตะป้ายกำกับเปิดและปิดข้างไอคอนหลอดไฟที่แสดงในแอป Google Home

ดูข้อมูลเพิ่มเติมได้ที่ส่วนควบคุมอุปกรณ์ด้วยแอป Google Home ของควบคุมอุปกรณ์ในบ้านอัจฉริยะที่เพิ่มลงในแอป Google Home

7. ยินดีด้วย

คุณสร้างอุปกรณ์ Matter เครื่องแรกเรียบร้อยแล้ว ยอดเยี่ยม!

คุณได้เรียนรู้วิธีต่อไปนี้ใน Codelab

  • ติดตั้งสภาพแวดล้อมการพัฒนา Matter
  • สร้างและเรียกใช้อุปกรณ์เสมือน Matter
  • ค่าคอมมิชชันและควบคุมอุปกรณ์เสมือนจาก Google Home

ดูข้อมูลเพิ่มเติมเกี่ยวกับ Matter ได้ในข้อมูลอ้างอิงต่อไปนี้

  • Matter Primer ในศูนย์นักพัฒนาแอป Google Home ซึ่งเป็นที่ที่คุณจะได้เรียนรู้พื้นฐานเกี่ยวกับแนวคิดของ Matter
  • ข้อมูลจำเพาะของ Matter, ไลบรารีอุปกรณ์ Matter และไลบรารีแอปพลิเคชัน Matter ซึ่งเผยแพร่โดย Connectivity Standards Alliance
  • ที่เก็บ Matter GitHub