TI的ZigBee协议栈不同版本的区别,如何选择合适的协议栈进行产品开发

本文主要是介绍TI的ZigBee协议栈不同版本的区别,如何选择合适的协议栈进行产品开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1,TI的ZigBee协议栈不同版本的区别,如何选择合适的协议栈进行产品开发

TI ZigBee 协议栈 Z-Stack从最开始的 Z-Stack 0.1到大家熟悉的 Z-Stack 2.5.1a,以及到现在 Z-Stack Home 1.2.1,  Z-StackLghting 1.0.2,  Z-Stack Energy 1.0.1,  Z-Stack Mesh 1.0.0. 在协议栈的升级过程TI主要对协议栈做了两方面的工作,1) 根据ZigBee Alliance的ZigBee Specification进行一些新的Feature添加,比方说ZigBee2007是树形的路由,在ZigBee Pro中有了Mesh路由,并且提出了MTO和Source Routing等路由算法,所以TI的把相应新的功能添加到协议栈上去。当然有一部分是Spec中相关bug的修正,比方说有些描述模棱两可的;2) TI ZigBee协议栈本身软件bug的修复。一个版本的协议栈相对于之前一个版本协议栈的区别,都可以在协议栈安装目录下的Release Note中找到。
在 Z-Stack 2.5.1a以后,TI的协议栈并没有继续以 Z-Stack 2.6.x的形式直接发布,而是按照Application Profile的方式来发布了,原因在于TI希望开发者根据实际的应用选择更有针对的性的协议栈进行开发。像 Z-Stack Home 1.2.1之类的协议栈,主要包括两部分,1)核心协议栈Core Stack,这部分起始就是之前的 Z-Stack 2.5.1a以后的延续版本,可以在协议栈安装目录下  Z-Stack Core Release Notes.txt文件中找到,Version 2.6.2 。2)应用协议栈 Profile相关,这部分主要跟实际应用相关的,Home Automation 协议栈里都是ZigBee Home Automation Profile相关的实现。同样 Z-Stack Lghting 1.0.2和 Z-Stack Energy 1.0.1也是一个Core Stack再加上应用上的Profile。
1) Z-Stack Home 1.2.1 针对智能家居相关产品的开发
2)Z-Stack Lighting 1.0.2 针对ZLL相关产品的开发
3) Z-Stack Energy 1.0.1 针对智能能源,Meter, In Home Display, 等相关产品的开发
4) Z-Stack Mesh 1.0.0 针对相关私有应用的产品的开发, 只利用标准ZigBee协议相关功能, Mesh路由等,应用层有开发者自己定义。
ZLL:zgibee light link 



这篇关于TI的ZigBee协议栈不同版本的区别,如何选择合适的协议栈进行产品开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1034910

相关文章

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

Go之errors.New和fmt.Errorf 的区别小结

《Go之errors.New和fmt.Errorf的区别小结》本文主要介绍了Go之errors.New和fmt.Errorf的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考... 目录error的基本用法1. 获取错误信息2. 在条件判断中使用基本区别1.函数签名2.使用场景详细对

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

Python Flask实现定时任务的不同方法详解

《PythonFlask实现定时任务的不同方法详解》在Flask中实现定时任务,最常用的方法是使用APScheduler库,本文将提供一个完整的解决方案,有需要的小伙伴可以跟随小编一起学习一下... 目录完js整实现方案代码解释1. 依赖安装2. 核心组件3. 任务类型4. 任务管理5. 持久化存储生产环境

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成