一. 說明
前幾篇我們已介紹了如何架設 NXP Matter Thermostat ( 智慧溫控器 ) 與增加 LCD Touch Panel 方式,接下來我們教您透過 ZAP 工具增加溫濕度感測器 ( Clusters ),將實際溫度與溼度資訊同步在 Panel 與 App 上顯示。
(1) 利用 ZAP 工具新增 Temperature Clusters / Humidity Clusters
環境 : RT1060 + IW416 平台
NXP Matter GitHub:v1.1.0.1-tag-nxp
NXP Matter Examples : all-clusters-app ( Thermostat )
ZAP 新增 Clusters 項目 :
Endpoint-2 : Matter Temperature Sensor (0x0302)
Endpoint-3 : Matter Humidity Sensor (0x0307)
(2) 將實際溫度與溼度資訊同步在 Panel 與 App上顯示
如下的功能框圖是增加一顆溫溼度感測器 :
對於溫溼度感測器的軟體設計流程,我們規劃每 1 分鐘執行溫溼度資訊更新,當 NXP Matter Thermostat 完成網路
配置後,才會將溫溼度資訊更新至雲端 ( 同步 App ),提供我們的測試結果 :
A. Google 生態環境架設與連線控制流程
B. Google 生態演示圖示
C. Google Home App 內的裝置
但如何增加溫濕度 Clusters 和 Thermostat 控制呢? 可以參照以下的流程進行 ~
二. 如何增加溫濕度 Clusters 和 Thermostat 控制
1. Linux 安裝 ZAP 工具
請先至官網下載 ZAP 工具,並在 Linux 環境中安裝此應用程式
下載路徑 : https://github.com/project-chip/zap/releases/tag/v2023.05.04
指令安裝 zap-linux.deb 並更新套件,完成安裝後確認所安裝的版本 ( 2023.5.4 ) :
Linux 環境點選 Show Applications,找尋 ZAP 並點擊應用程式 :
2. 開啟 Thermostat ZAP 檔,增加溫溼度感測器 ( EP2、EP3 )
目前 matter/examples/all-cluster-app ( Thermostat ) 範例所用的 ZAP 路徑在 :
matter/examples/thermostat/nxp/zap/thermostat_matter_wifi.zap
2-1. EP2 增加 Matter Temperature Sensor (0x0302)
點選 ADD NEW ENDPOINT 並在 Device 項目中選擇 Matter Temperature Sensor (0x0302) ,按下建立 EP2 Clusters
EP2 建立完成,自動載入預設設定 ⑤ ⑥ ⑦
2-2. EP3 增加 Matter Humidity Sensor (0x0307)
點選 ADD NEW ENDPOINT 並在 Device 項目中選擇 Matter Humidity Sensor (0x0307) ,按下建立 EP3 Clusters
EP3 建立完成,自動載入預設設定 ⑤ ⑥ ⑦
2-3. EP1 修改 Matter Thermostat (0x0301) 相關控制與調整設定值
點選 EP1 Thermostat (0x0201) 設定 ①
可修改 Thermostat 各參數初始設定值 ②
ZAP 完成修改後,存檔並離開
3. EP1、EP2 和 EP3 調整設定與增加控制
3-1. EP1 Clusters 調整自訂的數值與範圍限制 :
matter/src/app/clusters/thermostat-server/thermostat-server.cpp
註明:詳細說明可參照 CSA 官網文件 ( matter-1-1-application-cluster-specification.pdf )
3-2. EP1、EP2、EP3增加獨立控制設定功能 :
(A).LocalTemperature
(B).SystemMode
(C).OccupiedCoolingSetpoint
(D).OccupiedHeatingSetpoint
(E).TemperatureMeasurement
(F).RelativeHumidityMeasurement
matter/examples/all-clusters-app/nxp/common/main/AppTask.cpp
4. 更新溫溼度感測器狀態
溫溼度感測器軟體的設計流程,我們規劃Task 內增加判斷為每 1 分鐘執行溫溼度資訊更新,
當 NXP Matter Thermostat 完成配網後,才會將溫溼度資訊更新至雲端 ( App 同步 )
matter/examples/all-clusters-app/nxp/common/main/main.cpp
以上如有任何疑問或是需要原碼的提供,請連聯我們哦 ~
評論