藍牙Mesh基本概念

本文基本內容來自幾位大牛的博客,順便加上了個人見解,記錄於此是怕時間一久忘記。

Mesh走的是Becon廣播交互,本身不連接,通過互相掃描和廣播來交互。

低功耗節點(LPN)是Mesh裏面最基礎的節點,類似於BLE設備;friend節點用來存儲發往低功耗節點(LPN)的消息和安全更新,一般沒有功耗限制;中繼節點用來傳遞消息;代理節點處理gatt和mesh網絡之間的消息。

元素

每個節點有一個或多個元素(必須有一個主元素),例如,一個Mesh燈節點,燈的開關(主元素),燈的顏色(其它元素1),燈的亮度(其它元素2)。節點中的每個元素都有一個唯一的地址,稱爲單播地址(unicast address),使每個元素都有址可尋,例如在Mesh底層代碼裏控制燈開關、顏色、亮度都是分配了不同地址來處理。 

一個元素裏最少擁有一個Model,一個Model裏面可以有多個元素狀態(元素和元素狀態是兩回事,例如燈的開關這個功能是元素,燈打開或者燈關閉是元素狀態,而model就是這個定義了這個元素狀態可以被改變還是只可以讀)。

(原文地址:https://mp.weixin.qq.com/s?__biz=MzA4MTg3MTg2Mg==&mid=2651236886&idx=2&sn=12a439d75fffd15d2e837ec339e5cbb2&chksm=847c5c8fb30bd5996515ce0f35f85645c2e1952b3d519a8a51c0788009ce1ceee8892f92c5ab&scene=21#wechat_redirect

Model

model 有三種類型:control 、server 和client ,這裏面control包含了server和client ,model相當於一個節點的功能;

Server model: 定義了狀態states, 狀態轉換 state transitions, 狀態綁定state bindings 和包含了哪些消息,當然也同樣定義了與這些消息,狀態,狀態轉換相關的行爲Behaviors。

Control model:具備client model的功能與其他的server model進行交互,同時也可以有server model功能與其他client model進行交互。內置了邏輯控制層(一套規則和行爲在各個與之連接的模型中進行協調交互)。

Client model: 沒有定義任何的狀態States,但是它定義了要收發哪些消息。定義這些消息是爲了GET,SET或者獲取在Server models裏面定義的狀態。

比如,定義一個燈的開關狀態,那麼擁有這個狀態(可以被開關)的叫做server model,去查詢、接收或者設置這個狀態的叫做client model,同時擁有這兩個功能的叫做control model。一個節點可以有多個model,就相當於BLE裏面的服務(profile)。

(原文地址:https://blog.csdn.net/JaLLs/article/details/88864967

Sig Mesh

就是藍牙技術聯盟統一推出的Mesh公有協議(基於CSR),Sig Mesh有三種類型地址,唯一地址(元素使用的unicast address)、虛擬地址、組地址,所以一般是用唯一地址來判斷是哪個設備。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章