Page 1 of 1
Zigbee 开关(零火开关/单火开关)开关dp对应关系
Posted: 2023年 Jul 3日 11:32
by docker22docker
涂鸦 Zgbiee 开关(零火开关/单火开关)功能描述
一、Zigbee 协议版本
Device ID | Profile ID |
0x0100 | 0x0104 |
一路开关Endpoint
Endpoint | Description |
1 | 第一路Endpoint |
二路开关Endpoint
Endpoint | Description |
1 | 第一路Endpoint |
2 | 第二路Endpoint |
三路开关Endpoint
Endpoint | Description |
1 | 第一路Endpoint |
2 | 第二路Endpoint |
3 | 第三路Endpoint |
四路开关Endpoint
Endpoint | Description |
1 | 第一路Endpoint |
2 | 第二路Endpoint |
3 | 第三路Endpoint |
4 | 第四路Endpoint |
二、支持的 Clusters
Input Clusters(Server) | Output Clusters(Client) |
Basic(0x0000) | OTA Upgrade(0x0019) |
Identify(0x0003) | |
Group (0x0004) | |
Scene (0x0005) | |
OnOff (0x0006) | |
TUYA private cluster0 (0xE000) | |
TUYA private cluster1 (0xE001) | |
三、支持的属性和命令
属性填写的目的是网关可以通过 Zigbee 标准读写属性来获取设备的基本信息
3.1 Basic Cluster
Attributes:
ID | Name | Data Type | Range | Default |
0x0000 | ZCL Version | uint8-0x20 | 0x00-0xff | 0x03 (接入涂鸦网关使用) |
0x0001 | Application Version | uint8-0x20 | 0x00-0xff | ie:0b 01 00 0001 = 1.0.1 即 0x41 为 1.0.1 OTA 功能会用到该版本号,在 OTA 开始阶段,网关会读取 OTA 包的版本号推送给设备。在 OTA 成功重启后,网关会读取版本号来确定是否升级成功。只能往更高的版本升级(接入涂鸦网关使用) |
0x0002 | Stack Version | uint8-0x20 | 0x00-0xff | 0x02 |
0x0003 | Hardware Version | uint8-0x20 | 0x00-0xff | 0x01 |
0x0004 | Manufacturer Name | string-0x42 | 0-32 bytes | XXX…XXX(长度为 16 个字节,由 8 字节前缀和 8 字节的PID组成),0-7 bytes:TZ3000,8-16 bytes:PID(由产品经理在平台或者自助创建和提供)该字段决定了手机 APP 界面的 UI 和功能展现,如果对 PID 没什么要求可用用默认 PID (接入涂鸦网关使用) |
0x0005 | Modle Identifier | string-0x42 | 0-32 bytes | SM000x(零火开关)/SM001x(单火开关)(接入涂鸦网关使用,x用于指代路数,SM0003代表3路零火开关,SM0013代表3路单火开关) |
0x0007 | Power Source | enum8-0x30 | 0x00-0xff | 0x01(接入涂鸦网关使用,指代强电设备(零火开关));0x03(接入涂鸦网关使用,指代弱电设备(单火开关)) |
0xFFFD | Cluster Revision | uint16-0x21 | 0x0000-0xffff | 0x0001 |
Commands:
ID | Name | Direction | Description |
0x00 | Reset to Factory Defaults | C->S | |
3.2 On/Off Cluster
Attributes:
ID | Name | Data Type | Range | Default |
0x0000 | OnOff | bool-0x10 | value(0 = Off, 1 = On) | 0x00 |
0x4001 | OnTime | uint16-0x21 | 0-43200 | 0x0000 |
0x4002 | OffWaitTime | uint16-0x21 | 0-43200 | 0x0000 |
0x8002 | 上电状态设置-总控(涂鸦私有属性) | enum8-0x30 | value(0 = Off, 1 = On, 2 = 掉电记忆) | 0x00 |
0x8001 | 指示灯状态设置(涂鸦私有属性) | enum8-0x30 | value(0 = Off, 1 = 状态指示(继电器开则亮), 2 = 位置指示(继电器关则亮)) | 0x00 |
0x5000 | 背光开关(涂鸦私有属性) | enum8-0x30 | value(0 = Off, 1 = On) | 0x00 |
Commands:
ID | name | Direction | Description |
0x00 | OFF | C->S | |
0x01 | ON | C->S | |
0x02 | Toggle | C->S | |
0x42 | On with timed off | C->S | |
3.3 TUYA private cluster0
Attributes:
ID | Name | Data Type | Range | Default |
0xD001 | 随机定时(涂鸦私有属性) | array-0x48 | - | |
0xD002 | 循环定时(涂鸦私有属性) | array-0x48 | - | |
0xD003 | 点动开关(涂鸦私有属性) | array-0x48 | - | |
Commands:
ID | name | Direction | Description |
0xF7 | 随机定时(涂鸦私有命令) | C->S | 数据格式如DP210 |
0xF8 | 循环定时(涂鸦私有命令) | C->S | 数据格式如DP209 |
0xFB | 点动开关(涂鸦私有命令) | C->S | 数据格式如DP19 |
3.4 TUYA private cluster1
Attributes:
ID | Name | Data Type | Range | Default |
0xD010 | 开关上电状态(分路) | enum8-0x30 | value(0 = Off, 1 = On, 2 = 掉电记忆) | 0x00 |
Commands:
ID | name | Direction | Description |
| | | |
四、DP与CLUSTER对应关系
DPID | DP含义 | 是否为标准指令 | 对应Endpoint |
1 | 开关 1 | 是 | 1 |
2 | 开关 2 | 是 | 2 |
3 | 开关 3 | 是 | 3 |
4 | 开关 4 | 是 | 4 |
7 | 开关1倒计时 | 是 | 1 |
8 | 开关2倒计时 | 是 | 2 |
9 | 开关3倒计时 | 是 | 3 |
10 | 开关4倒计时 | 是 | 4 |
14 | 上电状态设置-总控 | 否 | 1 |
15 | 指示灯状态设置 | 否 | 1 |
16 | 背光开关 | 否 | 1 |
29 | 开关1上电状态设置-分控 | 否 | 1 |
30 | 开关2上电状态设置-分控 | 否 | 2 |
31 | 开关3上电状态设置-分控 | 否 | 3 |
32 | 开关4上电状态设置-分控 | 否 | 4 |
19 | 点动开关 | 否 | 1 |
209 | 循环定时 | 否 | 1 |
210 | 随机定时 | 否 | 1 |
4.1 DP1 开关1 ~ DP4 开关4
DP说明:数据下发时,直接下发开,关和反转命令即可,上报需使用标准开关属性进行上报
命令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0x0006:on/off | 0x00:off, 0x01:on, 0x02:toggle | - |
上报 | 0x0006:on/off | 0x0000:on/off | 0:off, 1:on |
4.2 DP7 开关1倒计时 ~ DP10 开关4倒计时
命令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0x0006:on/off | 0x42:On with timed off | Payload |
上报 | 0x0006:on/off | 0x4001:OnTime & 0x4002:OffWaitTime | 0-43200 |
Payload 格式:On/off Control:0x00,On time和Off Wait Time的时间必须一样。例:下发60s的本地倒计时命令的,payload内容为:
On/off Control: 0x00
On time:0x003c
Off Wait Time:0x003c
4.3 DP14 上电状态设置-总控
指令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0x0006:on/off | 0x8002(涂鸦私有属性) | value(0 = Off, 1 = On, 2 = 掉电记忆) |
上报 | 0x0006:on/off | 0x8002(涂鸦私有属性) | value(0 = Off, 1 = On, 2 = 掉电记忆) |
4.4 DP15 指示灯状态设置
指令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0x0006:on/off | 0x8001(涂鸦私有属性) | value(0 = Off, 1 = 状态指示(继电器开则亮), 2 = 位置指示(继电器关则亮)) |
上报 | 0x0006:on/off | 0x8001(涂鸦私有属性) | value(0 = Off, 1 = 状态指示(继电器开则亮), 2 = 位置指示(继电器关则亮)) |
4.5 DP16 背光开关
指令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0x0006:on/off | 0x5000(涂鸦私有属性) | value(0 = Off, 1 = On) |
上报 | 0x0006:on/off | 0x5000(涂鸦私有属性) | value(0 = Off, 1 = On) |
4.6 DP29 开关1上电状态设置-分控 ~ DP32 开关4上电状态设置-分控
指令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0xE001 (TUYA Private Cluster1) | 0xD010(涂鸦私有属性) | value(0 = Off, 1 = On, 2 = 掉电记忆) |
上报 | 0xE001 (TUYA Private Cluster1) | 0xD010(涂鸦私有属性) | value(0 = Off, 1 = On, 2 = 掉电记忆) |
4.7 DP19 点动开关
命令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0xE000 (TUYA Private Cluster0) | 0xFB:私有命令 | Payload |
上报 | 0xE000 (TUYA Private Cluster0) | 0xD003:私有属性 | Payload |
Payload格式:3*n, n<=6。从开关开始的部分为单个节点数据格式
功能 | 长度 | 说明 |
通道号+通道使能位 | 1byte | bit0 -- 0:使能,1 :不使能,bit7-bit1 -- 通道号 |
点动延迟关闭时间 | 2byte | 00 3C -- 0x003c = 60s |
例:
单路:01 00 3C,第一路使能,开启时间为3C→60s的延时关闭
多路:00 00 3C 03 00 3C,第一路不使能,开启时间为3C→60s的延时关闭,第二路使能,开启时间为3C→60s的延时关闭
4.8 DP209 循环定时
命令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0xE000 (TUYA Private Cluster0) | 0xF8:私有命令 | Payload |
上报 | 0xE000 (TUYA Private Cluster0) | 0xD002:私有属性 | Payload |
Payload格式:2+10*n,n<=6。从开关开始的部分为单个节点数据格式
功能 | 长度 | 说明 |
版本号 | 1byte | 0x00 |
节点长度 | 1byte | 0x0A |
开关 | 1byte | bit0:本节点开关,置0为关,置1为开。<br>bit1bit7:通道号。 |
日期设定 | 1byte | 0x00:单次执行,取当前日历。其他非零设置,周一至周日,详见下方日期设定表格 |
起始时间 | 2byte | 以1min为单位时间,最大值1439 |
结束时间 | 2byte | 以1min为单位时间,最大值1439 |
开启时长 | 2byte | 以1min为单位时间,最大值1439 |
关闭时长 | 2byte | 以1min为单位时间,最大值1439 |
日期设定对应表:
保留 | 周六 | 周五 | 周四 | 周三 | 周二 | 周一 | 周日 |
Bit7=0 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
4.9 DP210 随机定时
命令方向 | CLUSTER ID | CMD / ATTR ID | VALUE |
下发 | 0xE000 (TUYA Private Cluster0) | 0xF7:私有命令 | Payload |
上报 | 0xE000 (TUYA Private Cluster0) | 0xD001:私有属性 | Payload |
Payload格式:2+6*n,n<=10。从开关开始的部分为单个节点数据格式
功能 | 长度 | 说明 |
版本号 | 1byte | 0x00 |
节点长度 | 1byte | 0x06 |
开关 | 1byte | bit0:本节点开关,置0为关,置1为开预留。bit1 ~ bit7预留。 |
日期设定 | 1byte | 0x00:单次执行,取当前日历。其他非零设置,周一至周日,详见下方日期设定表格 |
起始时间 | 2byte | 以1min为单位时间,最大值1439 |
结束时间 | 2byte | 以1min为单位时间,最大值1439 |
日期设定对应表:
保留 | 周六 | 周五 | 周四 | 周三 | 周二 | 周一 | 周日 |
Bit7=0 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
【zigbee】普通开关设备接入介绍 详见:viewtopic.php?t=531
Re: Zigbee 开关(零火开关/单火开关)开关dp对应关系
Posted: 2023年 Jul 5日 10:19
by zeso
mark