Perangkat di Matter memiliki model data yang terdefinisi dengan baik (DM), yang merupakan pemodelan hierarkis fitur Perangkat. Di tingkat teratas hierarki ini terdapat Perangkat.
Perangkat dan Endpoint
Semua Perangkat, termasuk smartphone dan asisten rumah, terdiri dari Node1. Node adalah resource yang mudah dikenali dalam suatu jaringan dan alamat unik dapat ditetapkan padanya. Pelanggan dapat mengenali dan berinteraksi dengan node sebagai entitas mandiri dengan fungsionalitasnya sendiri. Komunikasi jaringan di Matter berawal dan berakhir di Node.
Node adalah kumpulan Endpoint. Setiap Endpoint mencakup serangkaian fitur. Misalnya, Endpoint mungkin terkait dengan fungsi pencahayaan, sementara Endpoint lain terkait dengan deteksi gerakan, dan Endpoint lainnya menangani utilitas seperti OTA Perangkat.

Peran node
Peran Node adalah serangkaian perilaku terkait. Setiap Node dapat memiliki satu atau beberapa peran. Peran node meliputi:
- Commissioner: Node yang melakukan Commissioning.
- Pengontrol: Node yang dapat mengontrol satu atau beberapa Node. Contohnya mencakup Google Home app (GHA), Google Assistant, dan Google Nest Hub (2nd gen). Beberapa jenis perangkat, seperti Sakelar Lampu On/Off, memiliki peran Pengontrol.
- Controlee: Node yang dapat dikontrol oleh satu atau beberapa Node. Sebagian besar jenis perangkat dapat menjadi Perangkat yang Dikontrol, kecuali beberapa jenis perangkat yang memiliki peran Pengontrol, seperti Sakelar Lampu On/Off. Sakelar Lampu Aktif/Nonaktif hanya dapat berupa Pengontrol. Tidak dapat menjadi Penerima Kontrol.
- Penyedia OTA: Node yang dapat menyediakan update software OTA.
- Peminta OTA: Node yang dapat meminta update software OTA.
Cluster
Dalam Endpoint, Node memiliki satu atau beberapa Cluster. Ini adalah langkah lain dalam hierarki Perangkat, karena mengelompokkan fungsi tertentu seperti cluster on/off pada smart plug, atau cluster level control pada Endpoint lampu yang dapat diredupkan.
Node juga dapat memiliki beberapa Endpoint, yang masing-masing membuat instance fungsi yang sama. Misalnya, perlengkapan lampu dapat mengekspos kontrol independen atas lampu individual atau soket listrik dapat mengekspos kontrol atas soket individual.
Atribut
Di tingkat terakhir, kita akan menemukan Attributes, yang merupakan status yang dimiliki oleh node, seperti atribut current level dari cluster level control. Atribut dapat ditentukan sebagai jenis data yang berbeda seperti uint8, string, atau array.

Perintah
Selain Atribut, Cluster juga memiliki Perintah, yang merupakan tindakan yang dapat dilakukan. Fungsi ini setara dengan panggilan prosedur jarak jauh di DM Matter. Perintahnya seperti kata kerja, seperti kunci pintu di cluster Kunci Pintu. Perintah dapat menghasilkan respons dan hasil; di Matter, respons tersebut juga ditentukan sebagai Perintah, yang berjalan ke arah yang berlawanan.
Acara
Terakhir, Cluster juga dapat memiliki Peristiwa, yang dapat dianggap sebagai catatan transisi status sebelumnya. Meskipun Atribut merepresentasikan status saat ini, peristiwa adalah catatan masa lalu, dan mencakup penghitung yang meningkat secara monoton, stempel waktu, dan prioritas. Atribut ini memungkinkan pengambilan transisi status, serta pemodelan data yang tidak dapat dicapai dengan mudah menggunakan atribut.

Endpoint 0 dicadangkan untuk Utility Clusters. Cluster Utilitas adalah Cluster tertentu yang mencakup fungsi layanan di Endpoint, seperti penemuan, pengalamatan, diagnostik, dan update software. Di sisi lain, Application Clusters mendukung tindakan utama seperti on/off atau pengukuran suhu.
Jenis Perangkat
Secara keseluruhan, kombinasi Cluster mana yang harus disertakan saat produsen perangkat merencanakan Perangkat baru?
Spesifikasi Matter mengharuskan perangkat menerapkan atau memperluas satu atau beberapa Jenis Perangkat. Jenis Perangkat adalah kumpulan Cluster wajib dan opsional yang menentukan atribut tingkat teratas Perangkat fisik, seperti Lampu yang Dapat Diredupkan, Kunci Pintu, atau Pemutar Video.
Jenis Perangkat tidak ditentukan oleh dokumen utama spesifikasi Matter, tetapi oleh dokumen pendamping: Pustaka Perangkat. Demikian pula, semua Cluster Aplikasi ditentukan dalam Application Cluster Library. Ketiga dokumen ini dapat ditemukan di situs anggota Connectivity Standards Alliance (Alliance).
Setiap Endpoint yang menerapkan Jenis Perangkat harus menerapkan Cluster wajib yang menentukan Jenis Perangkat tersebut. Selain Cluster wajib, Endpoint dapat menerapkan Cluster tambahan, termasuk satu atau beberapa Cluster opsional Jenis Perangkat, atau bahkan Cluster yang bukan bagian dari Jenis Perangkat.
Klien dan Server
Cluster dapat berupa Client Cluster atau Server Cluster. Meskipun Server bersifat stateful dan menyimpan Atribut, Peristiwa, dan Perintah, Klien bersifat stateless dan bertanggung jawab untuk memulai Interaksi dengan Cluster Server jarak jauh, sehingga melakukan:
- membaca dari dan menulis ke Atribut jarak jauhnya.
- pembacaan Acara jarak jauhnya.
- pemanggilan Perintah jarak jauhnya.
Meskipun DM bersifat hierarkis dalam Node, hubungan antar-Node tidak bersifat hierarkis. Node di Matter tidak memiliki hubungan pengontrol/periferal vertikal atau pemimpin/pengikut. Sebaliknya, hubungan bersifat horizontal: Cluster apa pun dapat berupa Server atau Klien. Dengan demikian, Node dapat berupa Server dan Klien terkait dengan Cluster dan fungsi yang berbeda.
Misalnya, kita mungkin memiliki dua lampu meja: Node A dan Node B. Kedua node menerapkan Jenis Perangkat On/Off Light. Jenis Perangkat ini mencakup Cluster Server On/Off yang mengontrol output cahaya fisik masing-masing.
Namun, seperti lampu meja biasa, perangkat fisik kami juga akan menyertakan Jenis Perangkat Sakelar Lampu On/Off untuk sakelar on/off lokalnya. Jenis Perangkat ini harus menerapkan Cluster Klien Aktif/Nonaktif sehingga dapat mengontrol Cluster Server.

Dalam contoh ini, On/Off Client Cluster di Node A mengubah atribut On/Off Server Cluster di Node A dan Node B, sementara Client Cluster Node B hanya mengubah Server Cluster di Node B itu sendiri.
Di bagian berikutnya, kita akan menjelaskan secara mendetail cara Cluster Klien dan Server berinteraksi: Model Interaksi.
Cluster Deskriptor
Seperti namanya, Descriptor Cluster Server menyediakan informasi introspeksi. Objek ini mendeskripsikan Endpoint yang mencantumkan:
- Cluster Server.
- Cluster Klien.
- Jenis Perangkat.
- Endpoint Tambahan, yang dikenal sebagai Bagian.
Setiap Jenis Perangkat memerlukan penerapan Cluster Deskriptor. Jenis Perangkat Root ditentukan di Endpoint 0. Membaca Cluster Deskriptornya akan memberikan visibilitas kepada klien untuk menjelajahi seluruh hierarki Endpoint yang tersedia dan melakukan operasi yang berlaku.
Perangkat Pengontrol atau Komisioner seperti ponsel atau hub dapat menggunakan informasi yang ditemukan di Descriptor Cluster untuk memodelkan Perangkat (lampu, sakelar, pompa, termostat), dan fitur spesifik yang diterapkan oleh instance Perangkat tersebut, yang menampilkan UI yang benar kepada pengguna.
Cluster Server
Atribut ServerList
mencantumkan Server Cluster di Endpoint.
Cluster Klien
Atribut ClientList
mencantumkan Klien Cluster di Endpoint.
Daftar Jenis Perangkat
Atribut DeviceTypeList
adalah daftar Jenis Perangkat yang didukung oleh
Endpoint, beserta revisinya masing-masing. Harus berisi setidaknya satu
Jenis Perangkat.
Daftar Suku Cadang
PartsList
berisi daftar Endpoint yang digunakan untuk menerapkan Jenis Perangkat ini.
PartsList
Endpoint 0 (Root Node) berisi semua Endpoint perangkat selain Endpoint 0 itu sendiri.
PartsList
Endpoint lainnya biasanya akan kosong. Misalnya, Sensor Suhu mewajibkan Cluster Server Pengukuran Suhu dan tidak ada yang lain.
Jenis perangkat lain mungkin disusun dalam struktur hierarki lebih dari satu instance Device Type. Misalnya, jenis Perangkat Pemutar Video dapat terdiri dari TV, Pemutar Video, Speaker, dan berbagai Jenis Perangkat Aplikasi Konten, yang masing-masing berada di Endpoint yang berbeda.
-
Spesifikasi Matter menentukan bahwa Perangkat dapat memiliki beberapa Node. Misalnya, smartphone dapat memiliki beberapa aplikasi, dengan setiap aplikasi menjadi Node yang berbeda. Untuk tujuan pengantar ini, semua Perangkat akan berisi satu Node. Sebagian besar perangkat fisik diharapkan mengikuti pola ini. ↩