339 lines
7.7 KiB
JSON
339 lines
7.7 KiB
JSON
{
|
||
"product": {
|
||
"name": "温湿度风扇",
|
||
"code": "PRCBR3",
|
||
"type": "CBR3",
|
||
"protocol": "V1.0.0"
|
||
},
|
||
"dps": [
|
||
{
|
||
"id": 0,
|
||
"display_name": "开关",
|
||
"key": "power",
|
||
"kind": "normal",
|
||
"type": "bool",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "设备总开关,预留",
|
||
"values": {
|
||
"0": "关",
|
||
"1": "开"
|
||
}
|
||
},
|
||
{
|
||
"id": 1,
|
||
"display_name": "模式",
|
||
"key": "mode",
|
||
"kind": "normal",
|
||
"type": "enum",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "通风模式:1挡,连续运行25分钟,停止5分钟,循环执行;\n强力模式: 3挡,连续运行15分钟后停止;",
|
||
"values": {
|
||
"0": "关闭模式",
|
||
"1": "通风模式",
|
||
"2": "强力模式"
|
||
}
|
||
},
|
||
{
|
||
"id": 2,
|
||
"display_name": "风速挡位",
|
||
"key": "fan_gear",
|
||
"kind": "normal",
|
||
"type": "enum",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "一档35%\n二档65%\n三档100%",
|
||
"values": {
|
||
"0": "关闭风扇",
|
||
"1": "1档风速",
|
||
"2": "2档风速",
|
||
"3": "3档风速"
|
||
}
|
||
},
|
||
{
|
||
"id": 3,
|
||
"display_name": "当前温度",
|
||
"key": "current_temp",
|
||
"kind": "normal",
|
||
"type": "float",
|
||
"len": 2,
|
||
"scale": 0.1,
|
||
"dir": "ro",
|
||
"description": "单位:℃(float 类型,链路传 uint16)",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 4,
|
||
"display_name": "当前湿度",
|
||
"key": "current_humi",
|
||
"kind": "normal",
|
||
"type": "uint8",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "ro",
|
||
"description": "单位:%",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 5,
|
||
"display_name": "联动删除",
|
||
"key": "linkage_delete",
|
||
"kind": "normal",
|
||
"type": "bool",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "APP没用到此设备,则下发联动删除",
|
||
"values": {
|
||
"0": "无操作",
|
||
"1": "删除联动"
|
||
}
|
||
},
|
||
{
|
||
"id": 6,
|
||
"display_name": "联动配置",
|
||
"key": "linkage_config",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 20,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "缸体编号为uint16,温度类型为int8,湿度和版本为uint8;\n后面应该会加上条件和动作,先预留13个Byte",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 13,
|
||
"display_name": "定时使能",
|
||
"key": "time_en",
|
||
"kind": "normal",
|
||
"type": "bool",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "一键启动/禁用所有定时配置",
|
||
"values": {
|
||
"0": "关",
|
||
"1": "开"
|
||
}
|
||
},
|
||
{
|
||
"id": 14,
|
||
"display_name": "定时配置1",
|
||
"key": "time_config1",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "定时类型\n0=单次,1=每天,2=每周指定星期\n星期位图\nBit0 = 周一\nBit1 = 周二\nBit2 = 周三\nBit3 = 周四\nBit4 = 周五\nBit5 = 周六\nBit6 = 周日\nBit7 = Reserved",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 15,
|
||
"display_name": "定时配置2",
|
||
"key": "time_config2",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 16,
|
||
"display_name": "定时配置3",
|
||
"key": "time_config3",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 17,
|
||
"display_name": "定时配置4",
|
||
"key": "time_config4",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 18,
|
||
"display_name": "定时配置5",
|
||
"key": "time_config5",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 19,
|
||
"display_name": "定时配置6",
|
||
"key": "time_config6",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 20,
|
||
"display_name": "定时配置7",
|
||
"key": "time_config7",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 8,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "同上",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 21,
|
||
"display_name": "运行记录",
|
||
"key": "run_record",
|
||
"kind": "normal",
|
||
"type": "raw",
|
||
"len": 124,
|
||
"scale": 1.0,
|
||
"dir": "ro",
|
||
"description": "31天的运行记录,每4个字节表示当天运行的总时长,单位:秒\nByte0-3:今天风扇运行的总时长\nByte4-7:昨天风扇运行的总时长\n.\n.\n.\nByte120-123:前30天风扇运行的总时长",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 22,
|
||
"display_name": "心跳",
|
||
"key": "heartbeat",
|
||
"kind": "normal",
|
||
"type": "bool",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "wo",
|
||
"description": "APP进入页面之后每5s下发一次心跳,当子设备12秒内没收到心跳\n则停止温湿度上报服务器,防止上报频繁,此条DP预留",
|
||
"values": {
|
||
"0": "无操作",
|
||
"1": "心跳"
|
||
}
|
||
},
|
||
{
|
||
"id": 23,
|
||
"display_name": "设备故障使能",
|
||
"key": "fault_en",
|
||
"kind": "normal",
|
||
"type": "uint8",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "预留,后期可以对某个故障进行使能和禁用",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 24,
|
||
"display_name": "设备故障",
|
||
"key": "fault_code",
|
||
"kind": "fault",
|
||
"type": "uint8",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "ro",
|
||
"description": "故障码",
|
||
"values": {
|
||
"0": "无故障",
|
||
"1": "温湿度异常",
|
||
"2": "设备故障"
|
||
},
|
||
"level": 2
|
||
},
|
||
{
|
||
"id": 25,
|
||
"display_name": "设备告警使能",
|
||
"key": "alarm_en",
|
||
"kind": "normal",
|
||
"type": "uint8",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "预留,后期可以对某个告警进行使能和禁用",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 26,
|
||
"display_name": "设备告警",
|
||
"key": "alarm_code",
|
||
"kind": "alarm",
|
||
"type": "uint8",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "ro",
|
||
"description": "预留告警DP",
|
||
"values": {},
|
||
"level": 1
|
||
},
|
||
{
|
||
"id": 27,
|
||
"display_name": "恢复出厂设置",
|
||
"key": "factory_reset",
|
||
"kind": "normal",
|
||
"type": "bool",
|
||
"len": 1,
|
||
"scale": 1.0,
|
||
"dir": "wo",
|
||
"description": "写 1 触发",
|
||
"values": {
|
||
"1": "触发"
|
||
}
|
||
},
|
||
{
|
||
"id": 28,
|
||
"display_name": "预留DP1",
|
||
"key": "reserva_dp1",
|
||
"kind": "normal",
|
||
"type": "uint32",
|
||
"len": 4,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "预留",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 29,
|
||
"display_name": "预留DP2",
|
||
"key": "reserva_dp2",
|
||
"kind": "normal",
|
||
"type": "uint32",
|
||
"len": 4,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "预留",
|
||
"values": {}
|
||
},
|
||
{
|
||
"id": 30,
|
||
"display_name": "预留DP3",
|
||
"key": "reserva_dp3",
|
||
"kind": "normal",
|
||
"type": "uint32",
|
||
"len": 4,
|
||
"scale": 1.0,
|
||
"dir": "rw",
|
||
"description": "预留",
|
||
"values": {}
|
||
}
|
||
]
|
||
} |