TI中文支持网
TI专业的中文技术问题搜集分享网站

使用ZNP例程做协调器开发的几个问题

使用Z-stack3.02协议栈中GenericApp例程开发实现了协调器的部分功能(建网、准许加网、获取入网设备的简单描述符等),最近查看TI文档发现ZNP例程使用MT实现了协调器很多功能开发,基于ZNP例程(z-tool串口规范)开发zigbee协调器可以减少我们很多开发工作量。我使用ZNP例程(CC2538ZNP-with-SBL),参考Z-Stack ZNP Interface Specification和Z-Stack Monitor and Test API文档进行协调器程序开发,发现以下问题,还请TI工程师们帮忙解答。

1. ZNP例程连接不上z-tool工具(发现不了设备),这个可能原因是没有注册串口数据发送到MT层,需要如何修改呢?
2.使用MT功能需要增加哪些宏定义(MT_ZNP_FUNC、MT_TASK…..),带MT开头的都加上还是选择部分加上?
3.协调器的简单描述符中device ID使用哪一个(home gateway:0x0050吗)?
4.如何自动配置为协调器(可以直接写NV ZCD_NV_LOGICAL_TYPE 0x00吗?);
5. 例如开灯指令是如何发下去的(哪里调用AF_data_request发送 的)?我看MT_AppCommandProcessing 把数据封装msg->hdr.event = MT_SYS_APP_MSG;然后发送到对应任务osal_msg_send( *(epDesc->task_id), (uint8 *)msg ),但znp_app.c事件处理函数内没有对MT_SYS_APP_MSG事件的处理函数。
当前工程编译选项中定义的宏有:

xHAL_UART_USB
xUSB_SETUP_MAX_NUMBER_OF_INTERFACES=5
xHAL_SPI=TRUE
HAL_UART=TRUE
BDB_FINDING_BINDING_CAPABILITY_ENABLED=0
DISABLE_GREENPOWER_BASIC_PROXY
TC_LINKKEY_JOIN
ewarm
CC2538_USE_ALTERNATE_INTERRUPT_MAP=1
CC2538ZNP
ZNP_ALT
xPOWER_SAVING
FEATURE_SYSTEM_STATS
FEATURE_RESET_MACRO
ZDNWKMGR_MIN_TRANSMISSIONS=0
MT_UART_DEFAULT_OVERFLOW=FALSE
ASSERT_RESET
MAKE_CRC_SHDW
SBL_CLIENT
ZCL_READ
ZCL_DISCOVER
ZCL_IDENTIFY
ZCL_WRITE
ZCL_BASIC
NV_INIT
NV_RESTORE
MT_APP_FUNC
MT_NWK_FUNC

YiKai Chen:

1. 大部份是你串口設置有問題,比如baudrate不對
2. 建議MT开头的都加上还,但是如果你很清楚哪些MT功能你不用,也可以选择部分加上
3. 可以
4. 是的
5. ZCL commnad要應用程序自行用AF_data_request发送

Alvin Chen:

1.1. ZNP例程连接不上z-tool工具(发现不了设备),这个可能原因是没有注册串口数据发送到MT层,需要如何修改呢?

我怀疑是你的流控问题,

2.默认都留着即可。

写 ZCD_NV_LOGICAL_TYPE  0 作为coordinator。

AF_DATA_REQUEST 在文档里面有》

C:\Texas Instruments\Z-Stack 3.0.2\Tools\Z-Tool\ZPI Help.chm

此外如果你开发gateway ,建议用

赞(0)
未经允许不得转载:TI中文支持网 » 使用ZNP例程做协调器开发的几个问题
分享到: 更多 (0)