| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> ZigBee 3.0教程-步骤4:组建和加入网络 -> 正文阅读 |
|
[系统运维]ZigBee 3.0教程-步骤4:组建和加入网络 |
现在我们将用灯组成我们的网络,并使用 Zigbee 安装代码将交换机加入网络。这将通过 CLI 处理,因此我们需要连接到两个设备上的 CLI,这可以像上一步一样完成,在调试适配器视图中右键单击每个 WSTK,然后选择“启动控制台”。 设置网络首先,我们将在 Light 上形成网络。转到 CLI 获取灯光并输入命令:
这告诉灯光调用网络创建者插件来开始网络形成。1 选项告诉插件形成集中式网络,这使灯成为信任中心和路由器。 您应该会看到类似于以下内容的输出:
如果您看到 EMBER_NETWORK_UP,您可以使用以下命令检查网络设置:
这将输出网络信息。他们的关键是你的设备应该有一个 panID,它的 nodeID 应该是 0x0000。
如果这一切都设置好了,我们可以转到交换机。 将安装代码放在交换机上如前所述,对于交换机,我们将使用安装代码(也称为安装代码)将我们的交换机加入我们的网络。安装代码是设备以相当安全的方式加入 Zigbee 网络的一种方式。有关安装代码的完整说明,请阅读AN1089。 安装代码本身是在制造时安装在加入设备上的随机值,用于加密从协调器到加入设备的初始网络密钥传输,通过唯一的链接密钥。为了模拟这一点,我们将使用指挥官将安装代码刷写到我们的 Thunderboard 上。我们在此页面上包含了一个 install.txt 文件,为您提供了用于此示例的安装代码。虽然您可以使用您想要的任何代码,但此代码与您将在此示例中看到的命令相匹配,并允许您轻松地按照我们的示例进行操作。要通过命令安装它,请使用以下命令:
确保将其闪烁到充当开关的 Thunderboard 上,将安装代码放在灯上不会有什么坏处,但它必须在开关上才能使此连接过程起作用。 Commander 的输出看起来与将应用程序刷写到 Thunderboard 时非常相似,但更短。如果您没有看到此输出,请确保您的 Thunderboard 已连接到您的 WSTK,并且您的 WSTK 已正确连接到您的计算机。刷新安装代码后,您可以使用以下命令检查它是否已正确存储:
您正在寻找的是两个部分,在顶部您可以看到您的 EUI 64,在底部附近,安装代码存储在您的设备上:
如果您看到这一点,则说明安装代码已正确安装。您应该自行运行此命令,因为接下来的步骤需要您的 EUI64。注意:使用该命令,您看到的 EUI64 和 CRC 都是小端格式。看这个,EUI64实际上是:000B57FFFEDEA4C3,我们的CRC是0x31CE。 将交换机加入网络有了这些信息,我们现在将回到我们的光。我们的光充当我们网络的协调器,因此它需要从我们的加入设备中知道这些信息。具体来说,需要加入设备的link key。我们将做一个两步的过程来获取链接密钥,他们将这个密钥移动到灯的临时链接密钥表中,以便在交换机加入后更改信息。 从灯的 CLI 中,我们将告诉灯 EUI64、安装代码和交换机的 CRC,从这些信息中它将散列出交换机的链接密钥。为此,请在 light 的 CLI 中输入以下内容:
选项安装代码——这只是我们正在运行的命令,告诉协调器我们正在添加一个基于安装代码的链接密钥。 0?– 这是要添加条目的键表条目 {00 0B 57 FF FE DE A4 C3}?- 这是加入设备的 EUI64。它是大端格式。注意,这是我加入设备的 EUI64,你要确保把你的 EUI64 放在这里。 {31 41 59 26 53 58 97 93 31 CE}?- 这是我们的安装代码(前 8 个字节)和我们正在使用的 CRC(后 4 个字节)。请注意,我们的 CRC 是大端格式。 如果此命令正常工作,您应该会看到以下内容:
然后,我们将从密钥表中获取新的链接密钥。这是通过 CLI 输入完成的:
此命令显示我们网络的大部分安全信息。您在此显示屏上查找的是密钥表,它应该显示如下信息:
这是从安装代码派生的链接密钥。记下这个新的链接密钥,我们将在以后的步骤中使用它。有了这个,您想从永久密钥表中删除密钥。为此,请输入:
它告诉协调器从键表中删除我们的第 0 个条目。 现在我们要将交换机加入网络。我们还将在网络分析仪上观看该过程,因此我们可以获得加入过程的图形表示。所以首先,让我们开始我们的捕获。因为我们使用的是安装代码,Studio 本身是看不到加入过程的,所以我们需要把我们的安装代码放到 Studio 中。为此,我们需要打开 Studio 的首选项,在 Debug Adapter 中找到齿轮图标并单击它。 这将启动首选项窗口。在搜索窗口中输入 Security Keys,它应该位于 Network Analyzer > Decoding 下。在该窗口中单击新建并使用新安全密钥,输入您的链接密钥以允许 Studio 能够使用它进行解码。点击应用,然后点击确定以保存此信息。 添加链接密钥后,我们就可以开始捕获了。从 Studio 中再次选择我们的两个 WSTK,就像我们在启动 CLI 时所做的那样。我们将再次右键单击它们,而是选择 Start capture(如果您的环境特别嘈杂,您可以选择 Start capture with options ... 并且只捕获您的特定 pan ID)。这将启动网络分析器,Silicon Labs 网络解密工具。我们不会深入研究该工具,但我们将在完成此示例时介绍一些部分。 此时,您可能会发现整理 Studio 以让您看到比以前更多的窗口很有用。要在 Studio 中移动视图,您可以通过抓住它们的选项卡将它们移动到其他区域来拖动它们。当他们找到新位置时,您会看到他们在窗口上留下轮廓。由于我们想查看我们的网络跟踪以及两个串行窗口,您可能会发现这样的安排更好: 现在我们要回到灯光的 CLI。找到包含灯光 CLI 的选项卡。我们将打开网络加入并提供加入设备的链接密钥。我们使用来自我们插件之一的命令来执行此操作:
第一组十六进制数字是我们加入设备的 EUI64,第二组是设备在加入时将使用的链接密钥。和以前一样,确保将自己的 EUI64 放在这里。此命令将添加这些密钥并打开我们的网络 255 秒。 现在让我们转到交换机 CLI。我们需要开始加入网络。在 Zigbee 3.0 中,这是通过网络转向完成的,这是我们添加到交换机的插件。因此,在 CLI 中输入以下内容:
顾名思义,这启动了网络控制过程。0 选项告诉交换机加入没有其他选项。这样做的主要目的是告诉加入设备在加入后更改其安装代码。 如果您按照说明安排了窗口,则可以在 CLI 和网络分析器中看到该过程。关键步骤是观察网络密钥的传输。因为已经告诉我们的设备使用特定的链接密钥加入,所以您可以观看此密钥用于将网络密钥传输到我们的设备。您可以以图形方式执行其他步骤,例如设备宣布切换到网络以及新链接密钥的请求和传输。 现在我们已经形成了我们的网络,是时候开始在我们的灯和开关之间发送通信了。 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:49:53- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |