Matter-NXP K32W061 Contact Sensor Demo

    哈喽,大家好,笔者最近在使用 NXP K32W061 开发板学习 Matter,这篇博文给大家分享下 NXP K32W061 Contact Sensor Demo 的使用。

一、Boolean State

    Matter 中,设备可以是一个 Node,而一个 Node 可以由一个或多个 Endpoint 组成,Cluster 是 Endpoint 上例化的对象类,它定义设备支持的功能属性和对应的控制指令,这个Contact Sensor 主要功能通过 Boolean State 这个 Cluster 来实现,Boolean State 中的属性 StateValue 在 Matter 的 spec 中规定,FALSE=open or no contact,TRUE=closed or contact,下面来试试 K32W061 Contact Sensor Demo。

        

二、编译及烧录

    首先在 Matter 工程目录下 matter/examples/contact-sensor-app/nxp/k32w/k32w0找到README.md,先对 Demo 有个大概的了解,按照 README.md 中 Building 的步骤对 Demo 进行编译。

        

    编译完成后在 matter/examples/contact-sensor-app/nxp/k32w/k32w0/out/debug 目录下可以找到 chip-k32w0x-contact-example.bin。在 Demo 中是默认打开 OTA 功能的,因此还需要有 ssbl,按照 README.md 中 Writing the SSBL 步骤构建 ssbl.bin。

        

    完成以上步骤可以得到两个 .bin 文件,chip-k32w0x-contact-example.bin 和 k32w061dk6_ssbl.bin,实际上也可以将 OTA 功能关闭,在编译 chip-k32w0x-contact-example.bin 的步骤中,配置 gn 时,将 OTA 功能关闭,即配置 chip_enable_ota_requestor=false,例如下;

gn gen out/debug --args="k32w0_sdk_root=\"${NXP_K32W0_SDK_ROOT}\" chip_with_OM15082=0 chip_with_ot_cli=0 chip_enable_ota_requestor=false is_debug=false chip_crypto=\"platform\" chip_with_se05x=0 chip_pw_tokenizer_logging=false"

   
    编译完成后进行烧录,在 NXP K32W061 开发板上包含了 LPC-Link2 烧录 J-Link 固件后可以使用 J-Link 下载。

        

    另外也可以使用  DK6Programmer 通过串口进行烧录,笔者平时主要使用 J-Link 方式烧录,所以给大家演示 J-Link 的烧录方式,DK6Programmer 烧录方式在 README.md 有说明,大家可以按自己的情况进行选择。

    大家首先要在自己的环境中安装好 J-Link ,笔者这里使用的是 Ubuntu 22.04,安装方式比较简单,到 Segger(https://www.segger.com) 官网上下载好最新的 J-Link 驱动包(.deb 格式),下载后通过 sudo dpkg -i 安装即可,通过 USB 线连接到开发板,烧录步骤如下;



1. 连接到芯片:
$ JLinkExe -device K32W061 -if SWD -speed 4000 -autoconnect 1

2. 擦除芯片:
J-Link>erase

3. 烧录 ssbl,如果关闭了 OTA 则不需要烧录;
J-Link>loadbin k32w061dk6_ssbl.bin,0

4. 烧录 chip-k32w0x-contact-example.bin,如果关闭 OTA 则烧录地址为 0
J-Link>loadbin chip-k32w0x-contact-example,0x4000

5. 烧录完成输入 q,退出并复位芯片:
J-Link>q

 

三、Demo 测试

    在这个 Demo 中是通过按键来模拟接触传感器,这里用 HomePod mini 来配和测试,打开串口,找到设备的二维码连接,并打开二维码 CHIP: QR Code (project-chip.github.io),通过家庭 APP 扫描添加设备。

        


    扫描二维码在手机 APP 端点击添加设备后,还需要在开发板上按下 USERINTERFACE 按键开启 BLE 广播,在这里, Matter 将通过 BLE 来进行设备的发现和入网验证;    

        

    连接上后,通过开发板上的 SW3 按键来模拟接触传感器的开合,D3 会显示当前的状态,按下 SW3 ,D3 亮起,表示接触传感器闭合;

        

    再次按下 SW3,D3熄灭,表示接触传感器打开。

        

    以上就是今天分享的全部内容,如有错误或遗漏欢迎大家指出,共同学习。

参考文档

Getting started with K32W0x1 in Matter.pdf                    --- NXP
Matter Application Cluster Specification Version 1.1       ---Connectivity Standards Alliance
Matter Device Library Specification Version 1.1               ---Connectivity Standards Alliance
Matter Specification Version 1.1                                        ---Connectivity Standards Alliance

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论