Closed evd1ser closed 4 months ago
{ "modelId": "000003lxwx", "services": [ { "actions": [], "code": "", "description": "", "events": [], "name": "默认服务", "properties": [ { "abilityId": 1, "accessMode": "rw", "code": "Power", "description": "", "extensions": { "iconName": "icon-dp_power", "attribute": "1" }, "name": "开关", "typeSpec": { "type": "bool", "typeDefaultValue": false } }, { "abilityId": 2, "accessMode": "rw", "code": "temp_set", "description": "摄氏:16~31\n华氏:61~88", "extensions": { "iconName": "icon-dp_temp" }, "name": "设置温度", "typeSpec": { "max": 880, "min": 160, "scale": 1, "step": 5, "type": "value", "typeDefaultValue": 160, "unit": "℃" } }, { "abilityId": 3, "accessMode": "ro", "code": "temp_current", "description": "", "extensions": { "iconName": "icon-dp_sun" }, "name": "当前温度", "typeSpec": { "max": 100, "min": -20, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": -20, "unit": "℃" } }, { "abilityId": 4, "accessMode": "rw", "code": "mode", "description": "", "extensions": { "iconName": "icon-dp_mode" }, "name": "工作模式", "typeSpec": { "range": [ "cold", "hot", "wet", "wind", "auto" ], "type": "enum", "typeDefaultValue": "cold" } }, { "abilityId": 5, "accessMode": "rw", "code": "windspeed", "description": "强劲/高风/中高风/中风/中低风/低风/静音/自动", "extensions": { "iconName": "icon-dp_wind" }, "name": "风速", "typeSpec": { "range": [ "strong", "high", "mid_high", "mid", "mid_low", "low", "mute", "auto" ], "type": "enum", "typeDefaultValue": "strong" } }, { "abilityId": 18, "accessMode": "rw", "code": "humidity_current", "description": "", "extensions": { "iconName": "icon-dp_wet" }, "name": "当前湿度", "typeSpec": { "max": 100, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "%" } }, { "abilityId": 20, "accessMode": "ro", "code": "Fault", "description": "", "extensions": { "iconName": "icon-dp_warming", "scope": "fault" }, "name": "Fault", "typeSpec": { "label": [ "E0", "E1", "E2", "E3", "E4", "E5", "E6", "E7", "E8", "E9", "EA", "Eb", "EC", "EE", "EF", "EP", "EU", "EH", "EJ", "En", "Ey", "F9", "FA", "H1", "H2", "bd" ], "maxlen": 26, "type": "bitmap", "typeDefaultValue": 0 } }, { "abilityId": 101, "accessMode": "ro", "code": "pm25", "description": "", "name": "PM2.5", "typeSpec": { "max": 3000, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "" } }, { "abilityId": 102, "accessMode": "rw", "code": "fresh_air", "description": "", "name": "新风", "typeSpec": { "range": [ "auto", "low", "mid", "strong", "off" ], "type": "enum", "typeDefaultValue": "auto" } }, { "abilityId": 103, "accessMode": "ro", "code": "freshair_filter", "description": "新风标识位为1时生效", "name": "新风脏堵", "typeSpec": { "type": "bool", "typeDefaultValue": false } }, { "abilityId": 104, "accessMode": "ro", "code": "SN_SW_ver", "description": "20210816:固件上报即可,面板暂不解析。预留功能。", "name": "SN及软件版本", "typeSpec": { "maxlen": 128, "type": "raw" } }, { "abilityId": 105, "accessMode": "rw", "code": "sleep", "description": "无、标准、老人、儿童", "name": "睡眠", "typeSpec": { "range": [ "off", "normal", "old", "child" ], "type": "enum", "typeDefaultValue": "off" } }, { "abilityId": 110, "accessMode": "ro", "code": "markbit", "description": "用以表示是否有该功能。\n0、除湿模式下温度是否可调 \n1、送风模式下温度是否可调 \n2、自动模式下温度是否可调 \n3、新风量标识 \n4、矢量送风 \n5、左右扫风 \n6、光敏 \n7、智能除湿防霉变 \n8、湿度传感器 \n9、蒸发器清洁 \n10、省钱看得见 \n11、电量统计 \n12、发电机模式 \n13、高温风/凉感风 \n14、空气质量检测功能 \n15、置为空(原:湿度功能) \n16、置为空(原:设备运行省钱看得见,温度曲线展示) \n17、8℃制热 \n18、滤网脏堵功能 \n20、PM2.5有无\n21、温标切换,1为华氏度,0为摄氏度\n22、柔风\n23、左右广角送风\n24、新风功能有无\n", "extensions": { "scope": "fault" }, "name": "标识位", "typeSpec": { "label": [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24" ], "maxlen": 25, "type": "bitmap", "typeDefaultValue": 0 } }, { "abilityId": 113, "accessMode": "rw", "code": "up_down_sweep", "description": "无/上下送风/上送风/下送风", "name": "上下扫风", "typeSpec": { "range": [ "0", "1", "2", "3" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 114, "accessMode": "rw", "code": "left_right_sweep", "description": "无/左右送风/左送风/中送风/右送风/偏左送风/偏右送风/广角送风", "name": "左右扫风", "typeSpec": { "range": [ "0", "1", "2", "3", "4", "5", "6", "7" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 115, "accessMode": "ro", "code": "totalN", "description": "", "extensions": { "trigger": "direct" }, "name": "电量整数", "typeSpec": { "max": 1000000, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "" } }, { "abilityId": 116, "accessMode": "ro", "code": "totalP", "description": "", "extensions": { "trigger": "direct" }, "name": "电量小数", "typeSpec": { "max": 1000000, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "" } }, { "abilityId": 119, "accessMode": "rw", "code": "money", "description": "无/默认省电/定额省电/定温省电", "name": "省钱看的见", "typeSpec": { "range": [ "0", "1", "2", "3" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 120, "accessMode": "rw", "code": "energy", "description": "", "name": "发电机模式", "typeSpec": { "range": [ "off", "L1", "L2", "L3" ], "type": "enum", "typeDefaultValue": "off" } }, { "abilityId": 122, "accessMode": "ro", "code": "fault2", "description": "预留", "extensions": { "scope": "fault" }, "name": "故障报警2", "typeSpec": { "label": [ "P6", "P7", "P8", "P9", "PA", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "Fb", "FC", "FE", "FF", "FH", "FP", "FU", "Fj", "Fn", "Fy", "bf", "bc", "bj" ], "maxlen": 27, "type": "bitmap", "typeDefaultValue": 0 } }, { "abilityId": 123, "accessMode": "rw", "code": "boolCode", "description": "两个字节,\n第一个字节:\nbit0:eco,\nbit1:智能除湿防霉变, \nbit2:蒸发器清洁, \nbit3:灯光, \nbit4:蜂鸣,\nbit5:健康,\nbit6:空(原清洁,重复),\nbit7:光敏。\n\n第二个字节:\nbit0:干燥,\nbit1:空(原来是高温风/凉感风),\nbit2:空(原来是水平风摆),\nbit3:空(原来是垂直风摆) \nbit4: 8℃制热 \nbit5:滤网检测\nbit6:华氏加1标志位\nbit7:柔风", "name": "布尔型", "typeSpec": { "maxlen": 255, "type": "string", "typeDefaultValue": "" } }, { "abilityId": 125, "accessMode": "ro", "code": "airquality", "description": "优/良/中/差/很差/非常差", "name": "空气质量", "typeSpec": { "range": [ "great", "good", "middle", "bad", "verybad", "veryverybad" ], "type": "enum", "typeDefaultValue": "great" } }, { "abilityId": 126, "accessMode": "rw", "code": "up_down_freeze", "description": "当前位置定格/上定格/偏上定格/中定格/偏下定格/下定格/", "name": "上下定格", "typeSpec": { "range": [ "0", "1", "2", "3", "4", "5" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 127, "accessMode": "rw", "code": "left_right_freeze", "description": "当前位置定格/左定格/偏左定格/中定格/偏右定格/右定格/广角定格/左广角定格/右广角定格", "name": "左右定格", "typeSpec": { "range": [ "0", "1", "2", "3", "4", "5", "8", "6", "7" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 128, "accessMode": "ro", "code": "style", "description": "挂机/柜机", "name": "机型", "typeSpec": { "range": [ "0", "1" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 129, "accessMode": "rw", "code": "kwh", "description": "可选1~5kwh", "name": "功率", "typeSpec": { "range": [ "1", "2", "3", "4", "5" ], "type": "enum", "typeDefaultValue": "1" } }, { "abilityId": 130, "accessMode": "rw", "code": "savemoney_temp", "description": "用于省钱看得见中的定温省电的温度设置", "name": "定温温度", "typeSpec": { "max": 31, "min": 26, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 26, "unit": "℃" } }, { "abilityId": 131, "accessMode": "ro", "code": "dirty_filter", "description": "", "name": "滤网脏堵", "typeSpec": { "type": "bool", "typeDefaultValue": false } }, { "abilityId": 132, "accessMode": "rw", "code": "hot_cold_wind", "description": "", "name": "高温风/凉感风", "typeSpec": { "type": "bool", "typeDefaultValue": false } }, { "abilityId": 133, "accessMode": "rw", "code": "wind", "description": "0:水平垂直关 \n1:水平开 垂直关\n2:水平关 垂直开\n3:水平垂直开", "name": "水平摆风/垂直摆风", "typeSpec": { "range": [ "0", "1", "2", "3" ], "type": "enum", "typeDefaultValue": "0" } }, { "abilityId": 134, "accessMode": "ro", "code": "work_time", "description": "", "name": "运行状态时间", "typeSpec": { "maxlen": 255, "type": "string", "typeDefaultValue": "" } }, { "abilityId": 135, "accessMode": "ro", "code": "run_time", "description": "用于运行时间累计,每2分钟上报1次。因此运行时间是2*次数", "name": "运行时间", "typeSpec": { "max": 65525, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "次" } }, { "abilityId": 136, "accessMode": "rw", "code": "temp_set_f", "description": "", "name": "温度设置-℉", "typeSpec": { "max": 88, "min": 61, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 61, "unit": "℉" } } ] } ] }
"product_id": "mcnywzjlugvvvnjj",
my example yaml:
name: royal fresh airconditioner products: - id: mcnywzjlugvvvnjj name: ROYAL FRESH Full DC EU Inverter primary_entity: entity: climate translation_key: aircon_extra dps: - id: 1 name: hvac_mode type: boolean mapping: - dps_val: false value: "off" icon: "mdi:hvac-off" - dps_val: true constraint: mode conditions: - dps_val: auto icon: "mdi:hvac" value: heat_cool - dps_val: cold icon: "mdi:snowflake" value: cool - dps_val: hot icon: "mdi:fire" value: heat - dps_val: wind icon: "mdi:fan" value: fan_only - dps_val: wet icon: "mdi:water" value: dry - id: 2 name: temperature type: integer range: min: 160 max: 310 mapping: - scale: 10 step: 5 constraint: mode conditions: - dps_val: wet invalid: true - dps_val: wind invalid: true - id: 3 name: current_temperature type: integer - id: 4 name: mode type: string hidden: true - id: 5 name: fan_mode type: string mapping: - dps_val: auto value: auto - dps_val: mute value: quiet - dps_val: low value: low - dps_val: mid_low value: medlow - dps_val: mid value: medium - dps_val: mid_high value: medhigh - dps_val: high value: high - dps_val: strong value: strong - id: 20 name: fault_code type: bitfield - id: 105 name: sleep_mode type: string - id: 110 name: flags type: bitfield - id: 113 name: swing_mode type: string mapping: - dps_val: "0" constraint: horizontal_swing conditions: - dps_val: "0" value: "off" - dps_val: "1" value: horizontal - value: horizontal - dps_val: "1" constraint: horizontal_swing conditions: - dps_val: "0" value: vertical - dps_val: "1" value: both - value: both - dps_val: "2" constraint: horizontal_swing conditions: - dps_val: "0" value: vertical - value: both - dps_val: "3" constraint: horizontal_swing conditions: - dps_val: "0" value: vertical - value: both - id: 114 name: horizontal_swing type: string hidden: true - id: 119 name: electricity_management type: string - id: 120 name: gen_mode type: string - id: 123 name: flags_2 type: hex - id: 126 name: vertical_flow_position type: string - id: 127 name: horizontal_flow_position type: string - id: 128 name: model_code type: string - id: 129 name: energy type: string - id: 130 name: eco_temp type: integer - id: 132 name: hot_cool type: boolean - id: 133 name: swing_action type: string - id: 134 name: statistics type: json secondary_entities: - entity: sensor category: diagnostic class: humidity dps: - id: 18 name: sensor type: integer unit: "%" class: measurement - entity: sensor class: pm25 dps: - id: 101 name: sensor class: measurement type: integer unit: ugm3 - entity: sensor name: Air Quality class: enum icon: "mdi:factory" dps: - id: 125 type: string name: sensor mapping: - dps_val: "great" value: "Great" - dps_val: "good" value: "Good" - dps_val: "middle" value: "Middle" - dps_val: "bad" value: "Bad" - dps_val: "verybad" value: "Very bad" - dps_val: "veryverybad" value: "Very very bad" - entity: select name: Fresh air category: config icon: "mdi:air-filter" dps: - id: 102 type: string name: option mapping: - dps_val: "auto" value: "auto" - dps_val: "low" value: "low" - dps_val: "mid" value: "mid" - dps_val: "strong" value: "strong" - dps_val: "off" value: "off" - entity: binary_sensor name: Freshair filter class: problem category: diagnostic icon: "mdi:air-filter" dps: - id: 103 type: boolean name: sensor - entity: select name: Vertical swing category: config icon: "mdi:arrow-up-down-bold" dps: - id: 113 type: string name: option mapping: - dps_val: "0" value: "Off" - dps_val: "1" value: Full - dps_val: "2" value: Upper - dps_val: "3" value: Lower - entity: select name: Vertical position category: config icon: "mdi:unfold-more-horizontal" dps: - id: 126 type: string name: option mapping: - dps_val: "0" value: Unknown - dps_val: "1" value: Top - dps_val: "2" value: Slightly Up - dps_val: "3" value: Middle - dps_val: "4" value: Slightly Down - dps_val: "5" value: Bottom - entity: select name: Horizontal swing category: config icon: "mdi:arrow-left-right-bold" dps: - id: 114 type: string name: option mapping: - dps_val: "0" value: "Off" - dps_val: "1" value: Full - dps_val: "2" value: Left - dps_val: "3" value: Center - dps_val: "4" value: Right - dps_val: "5" value: "right air supply" - dps_val: "6" value: "wide angle air supply" - dps_val: "7" - entity: select name: Horizontal freeze position category: config icon: "mdi:unfold-more-vertical" dps: - id: 127 type: string name: option mapping: - dps_val: "0" value: Unknown - dps_val: "1" value: Left Fix - dps_val: "2" value: A Bit left Fix - dps_val: "3" value: Middle Fix - dps_val: "4" value: A bit Right Fix - dps_val: "5" value: Right Fix - entity: select name: Sleep mode category: config icon: "mdi:weather-night" dps: - id: 105 type: string name: option mapping: - dps_val: "off" value: "Off" - dps_val: "normal" value: Standard - dps_val: "old" value: "Elderly" - dps_val: "child" value: "Child" - entity: select name: Electricity Management category: config icon: "mdi:lightning-bolt-outline" dps: - id: 119 type: string name: option mapping: - dps_val: "0" value: "None" - dps_val: "1" value: Default power saving - dps_val: "2" value: "Quota power saving" - dps_val: "3" value: "Fixed temperature power saving" - entity: switch name: Display category: config icon: "mdi:lightbulb-on-outline" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "0008" - entity: switch name: Soft wind category: config icon: "mdi:weather-windy" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "8000" - entity: switch name: Anti-mildew category: config icon: "mdi:water-off-outline" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "0100" - entity: switch name: Health category: config icon: "mdi:heart-outline" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "0020" - entity: switch name: Anti-freeze category: config icon: "mdi:radiator" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "1000" - entity: switch name: Eco mode category: config icon: "mdi:leaf" dps: - id: 123 type: hex name: switch mapping: - scale: 1 mask: "0001" - entity: binary_sensor name: Fault class: problem category: diagnostic dps: - id: 20 type: bitfield name: sensor mapping: - dps_val: 0 value: false - value: true - entity: binary_sensor name: Dirty filter class: problem category: diagnostic dps: - id: 131 type: boolean name: sensor - entity: sensor name: energy class: energy category: diagnostic dps: - id: 129 type: integer name: sensor unit: kWh
Seems like a duplicate of PR #1703
Information about DPS mappings
Product ID
"product_id": "mcnywzjlugvvvnjj",
Information about how the device functions
my example yaml: