zigbee-herdsman-converters 14.0.568 → 14.0.571

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1087,6 +1087,16 @@ const converters = {
1087
1087
  };
1088
1088
  },
1089
1089
  },
1090
+ command_store: {
1091
+ cluster: 'genScenes',
1092
+ type: 'commandStore',
1093
+ convert: (model, msg, publish, options, meta) => {
1094
+ if (utils.hasAlreadyProcessedMessage(msg)) return;
1095
+ const payload = {action: utils.postfixWithEndpointName(`store_${msg.data.sceneid}`, msg, model)};
1096
+ utils.addActionGroup(payload, msg, model);
1097
+ return payload;
1098
+ },
1099
+ },
1090
1100
  command_recall: {
1091
1101
  cluster: 'genScenes',
1092
1102
  type: 'commandRecall',
@@ -3597,10 +3607,13 @@ const converters = {
3597
3607
  msg.data['danfossRoomStatusCode'];
3598
3608
  }
3599
3609
  if (msg.data.hasOwnProperty('danfossOutputStatus')) {
3600
- result[postfixWithEndpointName('output_status', msg, model)] =
3601
- constants.danfossOutputStatus.hasOwnProperty(msg.data['danfossOutputStatus']) ?
3602
- constants.danfossOutputStatus[msg.data['danfossOutputStatus']] :
3603
- msg.data['danfossOutputStatus'];
3610
+ if (msg.data['danfossOutputStatus'] === 1) {
3611
+ result[postfixWithEndpointName('output_status', msg, model)] = 'active';
3612
+ result[postfixWithEndpointName('running_state', msg, model)] = 'heat';
3613
+ } else {
3614
+ result[postfixWithEndpointName('output_status', msg, model)] = 'inactive';
3615
+ result[postfixWithEndpointName('running_state', msg, model)] = 'idle';
3616
+ }
3604
3617
  }
3605
3618
  return result;
3606
3619
  },
@@ -4028,6 +4041,8 @@ const converters = {
4028
4041
  default:
4029
4042
  return {sensor: 'not_supported'};
4030
4043
  }
4044
+ case tuya.dataPoints.bacFanMode:
4045
+ return {fan_mode: tuya.fanModes[value]};
4031
4046
  default: // DataPoint 17 is unknown
4032
4047
  meta.logger.warn(`zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #${
4033
4048
  dp} with data ${JSON.stringify(dpValue)}`);
@@ -5178,26 +5193,6 @@ const converters = {
5178
5193
  return {action: `${button}_${action}`};
5179
5194
  },
5180
5195
  },
5181
- ZG2819S_command_on: {
5182
- cluster: 'genOnOff',
5183
- type: 'commandOn',
5184
- convert: (model, msg, publish, options, meta) => {
5185
- // The device sends this command for all four group IDs.
5186
- // Only forward for the first group.
5187
- if (msg.groupID !== 46337) return null;
5188
- return {action: postfixWithEndpointName('on', msg, model)};
5189
- },
5190
- },
5191
- ZG2819S_command_off: {
5192
- cluster: 'genOnOff',
5193
- type: 'commandOff',
5194
- convert: (model, msg, publish, options, meta) => {
5195
- // The device sends this command for all four group IDs.
5196
- // Only forward for the first group.
5197
- if (msg.groupID !== 46337) return null;
5198
- return {action: postfixWithEndpointName('off', msg, model)};
5199
- },
5200
- },
5201
5196
  kmpcil_res005_occupancy: {
5202
5197
  cluster: 'genBinaryInput',
5203
5198
  type: ['attributeReport', 'readResponse'],
@@ -4807,6 +4807,17 @@ const converters = {
4807
4807
  }
4808
4808
  },
4809
4809
  },
4810
+ tuya_thermostat_bac_fan_mode: {
4811
+ key: ['fan_mode'],
4812
+ convertSet: async (entity, key, value, meta) => {
4813
+ const modeId = utils.getKey(tuya.fanModes, value, null, Number);
4814
+ if (modeId !== null) {
4815
+ await tuya.sendDataPointEnum(entity, tuya.dataPoints.bacFanMode, parseInt(modeId));
4816
+ } else {
4817
+ throw new Error(`TRV fan mode ${value} is not recognized.`);
4818
+ }
4819
+ },
4820
+ },
4810
4821
  tuya_thermostat_auto_lock: {
4811
4822
  key: ['auto_lock'],
4812
4823
  convertSet: async (entity, key, value, meta) => {
package/devices/adeo.js CHANGED
@@ -29,6 +29,13 @@ module.exports = [
29
29
  description: 'ENKI LEXMAN E27 LED white filament 1055 lumen',
30
30
  extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
31
31
  },
32
+ {
33
+ zigbeeModel: ['ZBEK-9'],
34
+ model: 'IA-CDZFB2AA007NA-MZN-02',
35
+ vendor: 'ADEO',
36
+ description: 'ENKI LEXMAN E27 LED white',
37
+ extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 454]}),
38
+ },
32
39
  {
33
40
  zigbeeModel: ['ZBEK-4'],
34
41
  model: 'IM-CDZDGAAA0005KA_MAN',
@@ -127,12 +127,12 @@ module.exports = [
127
127
  model: 'AU-A1ZBRC',
128
128
  vendor: 'Aurora Lighting',
129
129
  description: 'AOne smart remote',
130
- fromZigbee: [fz.battery, fz.command_on, fz.command_off, fz.command_step],
130
+ fromZigbee: [fz.battery, fz.command_on, fz.command_off, fz.command_step, fz.command_recall, fz.command_store],
131
131
  toZigbee: [],
132
- exposes: [e.battery(), e.action(['on', 'off', 'brightness_step_up', 'brightness_step_down'])],
132
+ exposes: [e.battery(), e.action(['on', 'off', 'brightness_step_up', 'brightness_step_down', 'recall_1', 'store_1'])],
133
133
  configure: async (device, coordinatorEndpoint, logger) => {
134
134
  const endpoint = device.getEndpoint(1);
135
- await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'genLevelCtrl', 'genPowerCfg']);
135
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'genLevelCtrl', 'genPowerCfg', 'genScenes']);
136
136
  },
137
137
  },
138
138
  {