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 