在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Matter工廠數據使用介紹(二)

泰凌微電子 ? 來源:泰凌微電子 ? 2024-04-03 10:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

接上一篇分享,我們將使用工廠數據構建一個示例應用,討論如何工廠數據以及大致介紹如何使用自己的工廠數據的實現。

1

使用工廠數據構建一個示例應用

您可以使用上述步驟手動生成工廠數據集,也可以使用 Telink 平臺構建系統,該系統使用 Kconfig 選項自動創建工廠數據內容。

要啟用自動生成工廠數據集,請轉到示例應用的目錄,并使用以下選項構建示例應用:

westbuild---DCONFIG_CHIP_FACTORY_DATA=y-DCONFIG_CHIP_FACTORY_DATA_BUILD=y

或者,您還可以將 `CONFIG_CHIP_FACTORY_DATA_BUILD=y` 的Kconfig設置添加到示例應用的 `prj.conf` 文件中。

注意,如果這一步遇到了 ModuleNotFoundError 的報錯,請在 connectedhomeip 目錄下執行以下命令更新依賴項后,再次嘗試構建:

.environment/pigweed-venv/bin/python3-mpipinstall-rscripts/setup/requirements.telink.txt

構建成功后會得到開啟了工廠數據分區的應用的固件,和獨立的工廠數據集二進制文件,燒錄時需要分別燒錄它們。

每個工廠數據參數都有一個默認值。這些在Kconfig文件中有描述。要為工廠數據參數設置一個新值,可以通過將其作為構建參數列表提供,或使用交互式 Kconfig 界面來完成。

1

提供工廠數據參數作為生成參數列表

這種提供工廠數據的方式可以與第三方構建腳本一起使用,因為它只使用一個命令。可以通過west命令的附加選項開啟工廠數據功能:

westbuild---DCONFIG_CHIP_FACTORY_DATA=y--DCONFIG_CHIP_FACTORY_DATA_BUILD=y--DCONFIG_CHIP_DEVICE_DISCRIMINATOR=0xF11

或者,也可以將相關的 Kconfig 選項行添加到示例應用的 `prj.conf` 文件中。

2

分開燒錄應用固件和工廠數據集

我們的應用固件和工廠數據集都是二進制 BIN 文件,可以使用 BDT 工具和 Telink burning key 燒錄到設備的Flash指中。

燒錄時使用 Telink BDT 工具的多地址燒錄即可:

選擇 Tool 中的 Multi-address download

91d16238-f15c-11ee-a297-92fbcf53809c.png

此處以 v1.1-branch 分支上的固件為例,工廠數據的偏移值是 `0x104000`:

91de8d5a-f15c-11ee-a297-92fbcf53809c.png

2

設置工廠數據

將獨立的工廠數據集,合并到示例應用的固件之中的一種方法,是使用在[使用工廠數據構建一個示例應用](#使用工廠數據構建一個示例應用)中描述的Telink平臺構建系統,并使用附加下面的選項構建示例應用 `-DCONFIG_CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE=y`:

westbuild--

-DCONFIG_CHIP_FACTORY_DATA=y

-DCONFIG_CHIP_FACTORY_DATA_BUILD=y

-DCONFIG_CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE=y

為了更好地理解以上設置項所對應的需求場景,可以參見下面的表格:

91f994ec-f15c-11ee-a297-92fbcf53809c.png

9209a45e-f15c-11ee-a297-92fbcf53809c.png

您還可以構建一個使用自動生成的新CD、DAC和PAI證書的示例應用。新生成的證書將被自動添加到工廠數據集里。要生成新證書,通過使用附加選項構建示例應用來禁用默認證書 `-DCHIP_FACTORY_DATA_USE_DEFAULT_CERTS=n`:

westbuild--

-DCONFIG_CHIP_FACTORY_DATA=y

-DCONFIG_CHIP_FACTORY_DATA_BUILD=y

-DCONFIG_CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE=y

-DCONFIG_CHIP_FACTORY_DATA_USE_DEFAULT_CERTS=n

注意:要使用Telink平臺構建系統生成新的證書,您需要系統變量PATH中的 `chip-cert` 可執行文件。要了解如何獲取 `chip-cert`,請參考[構建matter工具](#構建-matter-工具)中的步驟,并將新構建的可執行文件添加到系統變量PATH中。Cmake構建系統將自動找到這個可執行文件。

然后,在示例應用目錄中,可以使用生成的一個二進制固件,便可以同時寫入應用固件和新生成的工廠數據。

3

使用自己的工廠數據實現

上面介紹的工廠數據生成過程僅是對Telink平臺有效的示例應用。根據用途和格式的不同,可以用不同的方式從設備的閃存中讀取工廠數據集。在Telink示例中,工廠數據以 `CBOR` 格式存儲。

還可以創建一個包含任意格式的所有工廠數據組件表的HEX文件,然后實現一個解析器來讀取所有參數并將它們傳遞給提供程序。每個制造商都可以通過在Matter棧中實現解析器和工廠數據訪問器來自行實現工廠數據集。

使用 Telink工廠數據提供程序(FactoryDataProvider.h)和工廠數據解析器(FactoryDataParser.h)作為示例。設備使用工廠數據解析器(FactoryDataParser.h)讀取輸出原始數據,將其解碼并存儲在 `FactoryData` 結構中。工廠數據提供程序(FactoryDataProvider.h)實現使用這個解析器獲取所有需要的工廠數據參數,并將它們提供給Matter核心。

在Telink示例中, `FactoryDataProvider`是一個模板類,繼承自`DeviceAttestationCredentialsProvider`, `CommissionableDataProvider`, 和 `DeviceInstanceInfoProvider` 類。

自定義實現必須繼承這些類并實現它們的功能來從設備的閃存中獲取所有工廠數據集。這些類是虛類,需要由派生類重寫。

要覆蓋繼承的類,請完成以下步驟:

1、覆蓋以下方法:

//=====MembersfunctionsthatimplementtheDeviceAttestationCredentialsProvider

CHIP_ERRORGetCertificationDeclaration(MutableByteSpan&outBuffer)override;

CHIP_ERRORGetFirmwareInformation(MutableByteSpan&out_firmware_info_buffer)override;

CHIP_ERRORGetDeviceAttestationCert(MutableByteSpan&outBuffer)override;

CHIP_ERRORGetProductAttestationIntermediateCert(MutableByteSpan&outBuffer)override;

CHIP_ERRORSignWithDeviceAttestationKey(constByteSpan&messageToSign,MutableByteSpan&outSignBuffer)override;

//=====MembersfunctionsthatimplementtheCommissionableDataProvider

CHIP_ERRORGetSetupDiscriminator(uint16_t&setupDiscriminator)override;

CHIP_ERRORSetSetupDiscriminator(uint16_tsetupDiscriminator)override;

CHIP_ERRORGetSpake2pIterationCount(uint32_t&iterationCount)override;

CHIP_ERRORGetSpake2pSalt(MutableByteSpan&saltBuf)override;

CHIP_ERRORGetSpake2pVerifier(MutableByteSpan&verifierBuf,size_t&verifierLen)override;

CHIP_ERRORGetSetupPasscode(uint32_t&setupPasscode)override;

CHIP_ERRORSetSetupPasscode(uint32_tsetupPasscode)override;

//=====MembersfunctionsthatimplementtheDeviceInstanceInfoProvider

CHIP_ERRORGetVendorName(char*buf,size_tbufSize)override;

CHIP_ERRORGetVendorId(uint16_t&vendorId)override;

CHIP_ERRORGetProductName(char*buf,size_tbufSize)override;

CHIP_ERRORGetProductId(uint16_t&productId)override;

CHIP_ERRORGetSerialNumber(char*buf,size_tbufSize)override;

CHIP_ERRORGetManufacturingDate(uint16_t&year,uint8_t&month,uint8_t&day)override;

CHIP_ERRORGetHardwareVersion(uint16_t&hardwareVersion)override;

CHIP_ERRORGetHardwareVersionString(char*buf,size_tbufSize)override;

CHIP_ERRORGetRotatingDeviceIdUniqueId(MutableByteSpan&uniqueIdSpan)override;

2、將新創建的解析器和提供程序文件移動到項目目錄中。

3、把文件添加到 `CMakeList.txt` 中。

4、禁用工廠數據提供程序的默認實現和Telink實現,以開始使用您自己的工廠數據解析器和提供程序實現。這可以通過以下方式之一來實現:

把Kconfig設置 `CONFIG_CHIP_FACTORY_DATA_CUSTOM_BACKEND=y` 加到 `prj.conf` 文件中。

用以下選項構建一個示例:

westbuild---DCONFIG_CHIP_FACTORY_DATA_CUSTOM_BACKEND=y


審核編輯:劉清
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FlaSh
    +關注

    關注

    10

    文章

    1675

    瀏覽量

    151380
  • 二進制
    +關注

    關注

    2

    文章

    805

    瀏覽量

    42252
  • 泰凌微
    +關注

    關注

    7

    文章

    171

    瀏覽量

    11285

原文標題:【技術專欄】Matter工廠數據使用介紹(二)

文章出處:【微信號:telink-semi,微信公眾號:泰凌微電子】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    什么是Matter?為什么使用MatterMatter的主要內容干貨分享BF2 Matter網絡技術應用

    BF2 matter應用 :什么是Matter?為什么使用MatterMatter的主要內容; 在BF2上開發Matter應用;什么是
    的頭像 發表于 07-13 21:35 ?6033次閱讀
    什么是<b class='flag-5'>Matter</b>?為什么使用<b class='flag-5'>Matter</b>?<b class='flag-5'>Matter</b>的主要內容干貨分享BF2 <b class='flag-5'>Matter</b>網絡技術應用

    Matter生態中Multi-Fabric使用介紹

    地改善用戶體驗。 接下來我們就以Apple和Google生態為例,為大家介紹如何將一個泰凌 Matter設備
    的頭像 發表于 04-10 10:22 ?2004次閱讀
    <b class='flag-5'>Matter</b>生態中Multi-Fabric使用<b class='flag-5'>介紹</b>

    Nordic的matter是如何做的

    。 本次更新還包括 針對歐洲市場增強了插銷和螺栓門鎖功能(將插銷和螺栓鎖合為一) 添加了對設備外觀描述的支持(您的設備現在知道自己的顏色了) 通用改進,使未來設備類型的添加更容易 增強了 Matter
    發表于 04-27 11:24

    Matter采用基于標準的無線技術

    ,適用于安防攝像頭等數據密集型應用;而低功耗藍牙則簡化了設置過程,用戶可通過智能手機輕松將設備連接到網絡上。 Matter還包括一項名為 “多重結構” (Multiple Fabric) 的功能,允許
    發表于 05-19 15:37

    matter芯片選型指南

    matter芯片選型指南matter作為CSA聯盟推出的一項新的技術,新的技術意味著新的機會,這將讓CSA聯盟耕耘多年的公司(Zigbee產品)和剛加入CSA聯盟并計劃開發matter的公司回到
    發表于 02-14 07:55

    工廠供電 第2()版

    工廠供電 第2()版共10章。首先,介紹工廠供配電工作意義、要求及課程任務,扼要講述供配電相關的基本知識;然后,分別介紹
    發表于 12-30 14:24 ?0次下載
    <b class='flag-5'>工廠</b>供電 第2(<b class='flag-5'>二</b>)版

    如何將非Matter設備橋接到Matter網絡

    Matter橋接設備可為 Matter 結構中的非 Matter 物聯網設備提供連接。消費者可以在使用新Matter 設備的同時,繼續使用現有的非
    的頭像 發表于 10-24 16:30 ?1573次閱讀

    Matter協議是什么?IoT時代Matter能解決什么問題?

    近日,CSA聯盟(Connectivity Standards Alliance)正式對外發布了Matter 1.0 標準,并宣布認證計劃現已開放。這意味著智能家居品牌廠商可以對其產品進行
    發表于 10-27 17:25 ?7144次閱讀

    Matter數據模型和開發

    在第一篇內容中,我們介紹了智能家居互聯標準 Matter會帶來什么好處。本文,我們來了解一下Matter數據模型和開發。
    的頭像 發表于 12-01 10:18 ?1756次閱讀

    Matter開發介紹

    在第一篇內容中,我們介紹了智能家居互聯標準Matter會帶來什么好處。本文,我們來了解一下Matter數據模型和開發。一個簡單的Matter
    的頭像 發表于 12-01 11:41 ?2881次閱讀
    <b class='flag-5'>Matter</b>開發<b class='flag-5'>介紹</b>

    詳解:如何獲得Matter認證?

    Matter徽標,意味今后可最大程度節約開發、維護成本和上市時間,享受品牌效應,獲得更廣闊的市場。本文將介紹如何獲得Matter認證?建議收藏備用。Matter認證
    的頭像 發表于 01-11 16:33 ?2661次閱讀
    詳解:如何獲得<b class='flag-5'>Matter</b>認證?

    Matter協議是什么?Matter協議詳細介紹

    Matter協議,也被稱為Connectivity Standard,是由Connectivity Standards Alliance(CSA)開發的開源智能家居標準。它旨在通過使來自不同制造商
    的頭像 發表于 12-08 16:20 ?2381次閱讀

    Matter最新TestHarness工具使用介紹(一)

    為了簡化Matter設備的測試和認證過程,連接標準聯盟開發了一套標準化的測試工具,即Matter TestHarness。
    的頭像 發表于 04-24 10:38 ?2569次閱讀
    <b class='flag-5'>Matter</b>最新TestHarness工具使用<b class='flag-5'>介紹</b>(一)

    Matter最新Test Harness工具使用介紹

    Matter的測試項根據聯盟的TestPlan目前可以分為五類:全自動測試項,半自動測試項,手動測試項,Python in docker測試項以及UI Python測試項。
    的頭像 發表于 05-08 10:42 ?3301次閱讀
    <b class='flag-5'>Matter</b>最新Test Harness工具使用<b class='flag-5'>介紹</b>(<b class='flag-5'>二</b>)

    Matter網關是什么?Matter網關的功能作用

    Matter網關是指支持Matter協議的設備,Matter(之前被稱為Project CHIP,Connected Home over IP)是由 Connectivity Standards
    的頭像 發表于 05-27 14:13 ?1005次閱讀
    主站蜘蛛池模板: 日韩毛片在线看 | 亚洲视频天天射 | 456亚洲人成影院在线观 | 俄罗斯一级成人毛片 | 中文字幕亚洲一区二区va在线 | 天堂资源吧 | 性色aⅴ闺蜜一区二区三区 性色成人网 | 国产99色| 久久黄视频 | 欧美一级特黄啪啪片免费看 | 啪啪免费看视频 | 淫www| 成年看片免费高清观看 | 欧美二级黄色片 | 中文字幕一区二区三区在线观看 | 四虎影院在线观看免费 | 欧洲妇女成人淫片aaa视频 | 在线精品91青草国产在线观看 | 五月天婷婷网址 | 美女牲交视频一级毛片 | 久操免费在线 | 影视精品网站入口 | 丁香视频在线 | 天天色影院| 俺去插| 天天色成人网 | 91国内视频 | 99久久免费精品视频 | 永久免费mv网站入口 | h视频在线观看网站 | 色视频网站在线观看 | 欧美视频一区二区三区在线观看 | 日韩加勒比在线 | 黄色大片免费观看 | china3p单男精品自拍 | 特级淫片aaaa毛片aa视频 | 国产三级日产三级日本三级 | 爱草视频 | 久久久久国产精品 | 黄色网 在线播放 | 国产激烈床戏无遮挡在线观看 |